ANU Quantum Numbers

App · Utilities · 5 actions

Randomness you can defend, from the Australian National University. Every number comes from measuring the quantum fluctuations of empty space in a lab in Canberra, so it has no formula behind it, no seed to reconstruct and no pattern to fall into - unlike the pseudo-random numbers a computer produces on its own. Draw a prize winner or a review sample from a list, shuffle a running order, get whole numbers in any range, make unguessable passwords, tokens and coupon codes, and split traffic by odds you set. Worth reaching for whenever the fairness of a draw might be questioned later, or a secret has to be genuinely unguessable. A free account gives you 100 requests a month.

Actions

ActionWhat it does
Decide by chanceGet a yes or a no at odds you set, so a workflow can do something to a fair share of what passes through it: survey one order in ten, send half of a mailing list version A, put five percent of tickets in front of a reviewer.
Generate a random codeMake a code nobody can guess: a password, an access token, a one-time PIN, a batch of coupon codes.
Get random numbersGet whole numbers between a smallest and a largest you choose - one number, or a thousand in a single step.
Pick from a listDraw one item out of a list, or several - a prize winner from the entrants, five orders to check out of yesterday's hundred, whoever is on call this week.
Shuffle a listPut a list into a random order: the running order for presentations, the rotation for a support roster, the order applications get reviewed in so nobody is advantaged by having applied first.

Decide by chance

Get a yes or a no at odds you set, so a workflow can do something to a fair share of what passes through it: survey one order in ten, send half of a mailing list version A, put five percent of tickets in front of a reviewer. The odds come out right over time because the draw behind them is quantum noise with no pattern to fall into - and the step reports the number it landed on, so a decision can be shown to have been fair rather than just asserted to be.

Inputs

Chance of yes (%)chance_percentnumberRequired
Out of 100. Decimals are fine, so 2.5 really is two and a half percent.From 0 to 100. Default: 50.

Outputs

chance_percentnumber
The odds this decision was made at.
decisiontext
The same answer as the word 'Yes' or 'No', for showing someone or writing to a record.
roll_percentnumber
The number it landed on, from 0 up to but not including 100. It is a yes when this is below the chance. Keep it alongside the decision and the draw can be checked afterwards.
yestrue/false
True when it came up yes. This is the one to put in an If step.
Example output
{
  "chance_percent": 10.0,
  "decision": "Yes",
  "roll_percent": 4.37,
  "yes": true
}

Generate a random code

Make a code nobody can guess: a password, an access token, a one-time PIN, a batch of coupon codes. Every character comes from quantum noise, which is as unguessable as randomness gets - no formula behind it to work backwards from. Letters and numbers leave out the characters people misread, so a code read off a screen can be typed back in. One caution worth knowing: a code made here travels over the internet to get to you, so for the keys that protect your most sensitive systems, ANU itself recommends generating them on your own hardware instead.

Inputs

Made up ofcharacterstext
Letters and numbers suits almost everything, and leaves out O, 0, I, l and 1 so a code cannot be misread. Add symbols for a password that has to meet a complexity rule. Numbers only is for a PIN or a verification code.One of: letters_and_numbers (Letters and numbers), letters_numbers_and_symbols (Letters, numbers and symbols), numbers (Numbers only), hex (Hexadecimal (0-9, a-f)). Default: letters_and_numbers.
Lengthlengthnumber
How many characters each code has. Six for a PIN, eight to twelve for a coupon code, twenty or more for a password or an access token.From 4 to 256. Default: 24.
How manycountnumber
How many codes to make at once - one for a password, a hundred for a coupon run. Ask for the whole batch here rather than running the step in a loop: a batch is one request against your monthly allowance, a loop is one per turn.From 1 to 100. Default: 1.

Outputs

codetext
The code. When you asked for more than one, this is the first of them.
codeslist
Every code that was made. Loop over this when you asked for a batch.
countnumber
How many codes came back.
Example output
{
  "code": "7ZpQmXt3KvR9sNdB2wLy",
  "codes": [
    "7ZpQmXt3KvR9sNdB2wLy"
  ],
  "count": 1
}

Get random numbers

Get whole numbers between a smallest and a largest you choose - one number, or a thousand in a single step. Every number in the range is exactly as likely as every other, because each one is measured from the quantum noise of empty space in a lab at the Australian National University rather than calculated. That is what makes this the one to use when the draw has to hold up to questions later: a prize, an audit sample, an allocation someone might dispute.

Inputs

Smallest numberminimumnumberRequired
This number can come up.Default: 1.
Largest numbermaximumnumberRequired
This number can come up too.Default: 100.
How manycountnumber
How many numbers to get. Ask for the whole batch here rather than running the step in a loop: a batch is one request against your monthly allowance, a loop is one per turn.From 1 to 1024. Default: 1.
Allow the same number more than onceallow_repeatstrue/false
On, five dice rolls can all come up six. Turn it off for a draw where every number has to be different, like six lottery numbers out of forty-nine.Default: true.

Outputs

countnumber
How many numbers came back.
numbernumber
The number. When you asked for more than one, this is the first of them.
numberslist
Every number that came up, in the order it was drawn. Loop over this when you asked for a batch.
Example output
{
  "count": 3,
  "number": 42,
  "numbers": [
    42,
    7,
    91
  ]
}

Pick from a list

Draw one item out of a list, or several - a prize winner from the entrants, five orders to check out of yesterday's hundred, whoever is on call this week. Every item has exactly the same chance, and the choice comes from quantum noise measured in a lab rather than from a formula, so a draw made this way is one you can defend.

Inputs

ListitemslistRequired
The things to choose between: names, email addresses, ticket numbers, anything. Type them in one per line, or point this at a list an earlier step produced. Up to 1,024 items.
How many to pickcountnumber
How many items to draw. Ask for the whole batch here rather than running the step in a loop: a batch is one request against your monthly allowance, a loop is one per turn.From 1 to 1024. Default: 1.
Allow the same item to be picked more than onceallow_repeatstrue/false
Off, each item can win at most once - which is what a prize draw or a review sample needs. Turn it on to put every item back in the hat after each pick.Default: false.

Outputs

countnumber
How many items were drawn.
itemtext
The item that was drawn. When you asked for more than one, this is the first of them.
itemslist
Every item that was drawn, in the order it came out. Loop over this when you asked for several.
Example output
{
  "count": 2,
  "item": "ada@example.com",
  "items": [
    "ada@example.com",
    "grace@example.com"
  ]
}

Shuffle a list

Put a list into a random order: the running order for presentations, the rotation for a support roster, the order applications get reviewed in so nobody is advantaged by having applied first. Every possible order is equally likely, from quantum noise measured in a lab.

Inputs

ListitemslistRequired
The things to put in a random order: people on a rota, topics to present, applications to review. Type them in one per line, or point this at a list an earlier step produced. Up to 1,024 items.

Outputs

countnumber
How many items are in the list.
firsttext
Whatever ended up first - who presents first, who is reviewed first.
itemslist
The whole list, in its new order.
Example output
{
  "count": 3,
  "first": "Grace",
  "items": [
    "Grace",
    "Ada",
    "Katherine"
  ]
}

On this page