githubEdit

🤝BLS multisig transactions

Intro

Shortly, the typical keypair looks like this:

  • 48-bytes, 0x-prefixed hex encoded public key(used as address)

  • 32-bytes hexadecimal private key

  • 96-bytes hex encoded signature

Generate BLS keypair(s)

circle-check

BLS => Ed25519 transaction

Output:

Now, you can send this transaction:

Then, go to explorer and check the status. Remind that TxID is Blake3 hash of tx signature, so you can get the TxID using this snippet:

BLS => BLS(multisig address) transaction

Remember that in case you fund NEW recipient address, you need to add rev_t to payload. Otherwise - just paste recipient to payload.

Output:

BLS => TBLS(thresholdsig address) transaction

The same as BLS => Ed25519 transaction but change the recipient to 48-bytes TBLS root key

BLS => PostQuantum(Dilithium/BLISS) transaction

The same as BLS => Ed25519 transaction but change the recipient to 32-bytes post-quantum address. See:

⚛️Post-quantum transactionschevron-right

REMEMBER

circle-exclamation

By default, you recipient have locally keypair like this:

Case 1: His account already in state and has balance

In case recipient account already exists, just ask him for address.

In this case your payload of transaction will look like this:

Case 2: Recipient account will be new and didn't exists before tx

So, if you fund new account the payload of your transaction should be:

Last updated