Nxt account controls: multi-sig on steroids

Thursday 10 March 2016

Nxt’s new account control features are really cool and very powerful.

Bitcoin has had multisig for a while now, which means you can specify that, for example, two people have to approve a transaction before it is sent. It’s really handy for ‘joint accounts’ where you want to make sure no one individual has full control of funds.

Account control

Account control: multi-sig on steroids

But Nxt’s new features, which were activated at the 1.7 release, knock vanilla multisig into a cocked hat. Here are some of the things you can do…

Process without approval. The default: a regular transaction that happens right away.

Defer transaction. A transfer that requires no further approval, but is delayed until a specified block (rather than a time, though you can estimate roughly when a transaction will be processed by average block time, which the interface does for you).

Approve by accounts. A certain number of accounts have to agree to the transaction in order for it to be processed. If it is not validated by a certain block, it is cancelled. You can specify which accounts are included in the white list. This enables a committee to vote on whether a payment should be made.

Vote by amount. A transaction is approved only if NXT stakeholders totalling a given percentage of coins agree.

Vote by asset amount. This is similar to the above, but in this instance asset holders have to approve the transaction. This is useful if a majority of shareholders in a company needs to agree to a payment, for example.

Vote by currency stake. Similar again, only for a Currency created on Nxt’s Monetary System (a way of bootstrapping new crypto coins without needing a whole new network).

Execute by transaction hash. This gets pretty cool now. Each transaction has its own unique transaction hash. You can create but not submit a transaction, then use the hash as a ‘trigger’ for another transaction. One of the applications for this has been direct asset swaps. A trigger transaction is set up, then two people agree to trade their assets directly and make their transactions dependent on the inclusion in the blockchain of the specified hash. When the trigger transaction is executed, the assets are sent to the participants - all trustlessly, because everything appears transparently on the blockchain.

Execute by revealed secret. A transaction can be set up such that it only executes when the sender reveals the secret phrase for a specified hash.

These are pretty powerful features, and the kind of safeguards we need in crypto - after all, it’s no use having trustless money if it still requires a different form of trust to operate usefully.

Find out more at www.Nxt.org

comments powered by Disqus