Account Types: single-signature , multi-signature

In ImFact network, there are two types of accounts: multi-signature accounts and single-signature accounts. The primary distinction between these two types of accounts lies in their creation methods.

single-signature account is created by mitum-currency-transfer-operation operation.

While, multi-signature account is created by mitum-currency-create-account-operation or mitum-currency-create-contract-account-operation operation.

Methods that generate single-signature account:

  • account.createAccount

  • account.createWallet

  • account.createBatchWallet

  • account.key + currency.transfer

Methods that generate multi-signature account:

  • account.createMultiSig

  • contract.createAccount

  • contract.createWallet

Currently, ImFACT allows the creation of multi-signature accounts even with just one account, which differs from the typical multiSig accounts derived from multiple public keys.

While ImFACT offers the multi-signature accounts in the conventional sense as well, the concept of multiSig accounts in Mitum can be considered as more "extended."

You don't need to dwell too deeply on this. The differences observed at the ImFACT network between single-signature and multi-signature accounts created through the aforementioned methods are summarized in the table below.

Single vs Multi signature account Comparison

Attribute
Single-Sig Account
Multi-Sig account

Creation Operation Type

transfer-operation

create-account-operation or create-contract-account-operation

Public Key

Not applicable.

Utilized.

Query By Public Key

Account cannot be queried via getByPublicKey (data returns null).

Account can be queried via getByPublicKey. (Not for CA)

Account Information

When queried via getAccountInfo, data.keys.keys is null.

When queried via getAccountInfo, data.keys.keys contains an array of public keys. (Empty array for CA)

Number of Signatures

One

One or more

Update Key

Impossible

Possible (Impossible for CA)

Use as contract account

Impossible

Possible

Last updated