These commands let users simulate post-quantum accounts on the Algorand blockchain using FALCON signatures.
Under the hood, a logicsig signature is created for the user's FALCON signature and must be used to authorize transactions (see implementation details).
The workflow for the user is as follows:
- Generate a FALCON keypair.
- Derive an associated Algorand address (controlled under the hood by a logicsig).
- Deposit funds to the Algorand address as usual (any wallet can be used for this).
- To spend funds, use the provided commands to send transactions signed by the FALCON private key.
The subcommands are:
falcon algorand address: Derive an Algorand address from a FALCON public key.falcon algorand send: Send Algos from a FALCON-controlled address.
Generate an Algorand address controlled by a FALCON public key.
- Required
--key <file>: path to keypair file (public key sufficient; mnemonic-only files supported)
- Optional
--out <file>: path to output file; otherwise prints to stdout--mnemonic-passphrase <string>: mnemonic passphrase when the key file omits it
Generate an Algorand address from a FALCON public key and print to stdout:
falcon algorand address --key pubkey.jsonGenerate an Algorand address from a FALCON keypair and save to a file:
falcon algorand address --key keypair.json --out address.txtSend Algos from an Algorand address controlled by a FALCON keypair.
- Required
--key <file>: path to keypair file (must include private key; mnemonic-only files supported)--to <address>: Algorand address to send to--amount <number>: amount of microAlgos to send
- Optional
--fee <number>: transaction fee in microAlgos (default: minimum network transaction fee)--note <string>: optional note to include in the transaction--network <name>: network to use:mainnet(default),testnet,betanet,devnet--algod-url <string>: override algod endpoint URL (setsALGOD_URL; pass""to reset to defaults)--algod-token <string>: algod API token (setsALGOD_TOKEN; requires--algod-url; pass""to clear)--mnemonic-passphrase <string>: mnemonic passphrase if used and key file omits it (when using mnemonic-only files)
Send 1 Algo (1,000,000 microAlgos) to an address using a FALCON keypair:
falcon algorand send --key keypair.json --to ALGOADDRESS12345 --amount 1000000Send 1 Algo with a custom fee and note:
falcon algorand send --key keypair.json --to ALGOADDRESS12345 --amount 1000000 --fee 2000 --note "Payment for services"Send on TestNet using suggested params (default fee behavior):
falcon algorand send --key keypair.json --to TESTNETADDR... --amount 1000000 --network testnetSend with an explicit flat fee of 0 microAlgos (for testing):
falcon algorand send --key keypair.json --to TESTNETADDR... --amount 500000 --fee 0 --network testnetNote:
Pass --algod-url/--algod-token to use your preferred algod endpoints.
If not passed, the env vars ALGOD_URL and ALGOD_TOKEN will be used.
If unset or empty, Nodely endpoints will be used by default.
You can also pass --algod-url "" to reset to the default Nodely endpoints.
For --network devnet, provide an algod endpoint via either the flags or the ALGOD_URL environment variable (and ALGOD_TOKEN if required by your node).