Key terms and commands listed in alphabetical order

Account - Your MSafe is a non-custodial, multi-signature (multi-sig) account. You don't need a password or recovery phrases to sign into your MSafe account. You just need to connect to your wallet that MSafe supports, then add your co-managers to finish creating an MSafe account. Once your account is created, you only need to connect your single-sig wallet to access your MSafe account.

How MSafe account is derived?

MSafe account is a SUI account built on SUI native multisig account with a few customizations. Here is how MSafe account address can be derived from SUI native multi-sig:

  1. An MSafe account is a specialized account within the SUI ecosystem, enhanced by the inclusion of an MSafe specifier as an additional owner. The account's public key can be represented as owner1 | weight1 | owner2 | weight2 | owner3 | weight3 | nonce | 1.

  2. The nonce acts as a placeholder for a fictitious owner in the MSafe wallet, its value increasing with each new multi-signature wallet generated by the creator. The dummy owner's private key remains inaccessible, secured by cryptographic primitive to avoid key collisions.

  3. This mechanism, through the use of the nonce, facilitates the creation of several multi-signature wallets under the same ownership configuration.

The MSafe wallet address can be obtained by the code snippet.

Address Book - This is where you enter your co-managers' single-sig wallet addresses and give them distinctive nicknames during your account creation for your convenience; this is where you can list known recipient addresses (single-sig or multi-sig) for sending one-time or recurring payments.

Approve - You or co-managers need to sign off before a transaction can be executed in your multi-sig account.

Co-Managers - By definition, a multi-signature account requires more than one signature (vote) to approve a transaction for security purposes. If you are an individual, you are still the owner of your assets and you use co-managers (co-signers) that you trust to make it exponentially difficult for hackers and bad actors from taking funds from your account without your approval. If you have a team treasury account, then your co-managers help safeguard your team's treasury, funds, tokens

Change Vote - If threshold is not met yet, you have an opportunity to change your vote from approve to reject or vice versa.

Connect Wallet - Connect your existing single-sig wallets (e.g. Sui, Suiet, Martian, Ethos) to register or sign into your MSafe multi-sig account. Note: if you decide to use a brand new single-sig wallet to create an MSafe account, you will need to activate it first by either 1). Connect to MSafe or 2). Complete one send transaction in this new single-sig wallet.

Execute Approval - You need to click on this button to submit your approval.

Execute Rejection - You need to click on this button to submit your rejection.

Gas Fees - These are default network and 3rd party service fees. Make sure you have at least 1 SUI in your single-sig wallets when creating your MSafe account. Before proposing a transaction, you need to have some SUI coin in your wallet (~0.1 SUI shall be enough). The transaction gas fee is paid by the proposer when proposing a new transaction. During the approval and execution stages, approvers do not pay any gas fee because it's already been paid by the proposer.

Pending Transaction - This means the transaction has not received enough votes to meet your account threshold; therefore, it is not executed yet.

Propose - Any co-manager can propose (initiate) a transaction, but the transaction does not automatically get executed until the signature threshold is met. As a proposer, you are immediately asked to approve the transaction you just proposed by default. Note, transactions are executed in a sequential order. As an approver, you are not able to execute a new transaction, until previous transactions are executed.

Reject - You or co-managers can reject a proposed transaction. Rejecting a transaction is just like executing an empty transaction block, similar to canceling a transaction in Metamask. Rejecting a transaction also requires enough signatures that meet the threshold.

Transaction - Each transaction will get a transaction number on the left upon completion. Send is considered a transaction. Receive is not considered as a transaction, because it does not require recipients to take any action. The Account Transaction History displays all the events that took place, including Receive.

Threshold - Threshold means the minimum number of votes out of total possible votes required to execute a transaction, whether it is to execute approval or execute rejection. Threshold is shown in the fraction format (e.g. 2/4). The number to the left of the “/” symbol, the numerator, indicates the minimum number of votes required to approve or reject a transaction, and the number to the right of the “/” symbol, the denominator, means the total possible votes. Note one co-manager’s signature could carry multiple votes by using the Advanced Mode - Weighted Voting.

Weighted Voting - This is an advanced permission control feature that allows a co-manager to carry more weight when signing a transaction. When co-managers are assigned with different weights, they have different voting powers. There are different use cases that can take advantage of weighted voting. For example, a team agrees to allow one co-manager's signature to be equivalent to 2 or more co-managers' votes.Threshold will automatically incorporate the total voting weights in the numerator (votes required) and the denominator (total possible votes). Caution, if one co-manager has weighted voting power equal or more than threshold, this co-manager can single-handedly approve a transaction without waiting for other co-managers to approve.

Last updated