From 87baea5bf3dfb943b96525e71f9b787cd456ca38 Mon Sep 17 00:00:00 2001 From: Clay-Mysten <100217682+Clay-Mysten@users.noreply.github.com> Date: Fri, 11 Mar 2022 08:31:07 -0800 Subject: [PATCH 1/3] Create sui-glossary.md Launch initial glossary of terms for Sui --- doc/src/learn/sui-glossary.md | 124 ++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 doc/src/learn/sui-glossary.md diff --git a/doc/src/learn/sui-glossary.md b/doc/src/learn/sui-glossary.md new file mode 100644 index 0000000000000..2d6933abed981 --- /dev/null +++ b/doc/src/learn/sui-glossary.md @@ -0,0 +1,124 @@ +--- +title: Sui Glossary +--- + +Find terms used in Sui defined below. Where possible, we link to a canonical definition and focus upon Sui’s use of the term. + + +### Accumulator + +An [accumulator](https://en.wikipedia.org/wiki/Accumulator_(cryptography)) collects votes on transactions from authorities in Sui. +The accumulator enables transactions to be certified. + + +### Authority + +An authority in Sui plays a passive role analogous to the more active role of validators and minors in other blockchains. In Sui, +authorities do not continuously participate in the consensus protocol but are called into action only when receiving a transaction or +certificate. + +For more information, see [Authorities vs validators/miners](how-sui-works.md#authorities-vs-validators-miners). + + +### Causal order + +[Causal order](https://www.scattered-thoughts.net/writing/causal-ordering/) is a representation of the relationship between transactions +and the objects they produce, laid out as dependencies. Authorities cannot execute a transaction dependent on object created by a prior +transaction that has not finished. Rather than total order, Sui uses causal order. + +For more information, see [Causal order vs total order](how-sui-works.md#causal-order-vs-total-order). + + +### Certificate + +A certificate is the mechanism proving a transaction has been approved, or certified. Authorities vote on transactions, and the sender collects +a Byzantine-resistant-majority of these votes into a certificate and broadcasts it to all Sui authorities, thereby ensuring finality. + + +### Equivocation + +Equivocation in blockchains is the malicious action of dishonest actors giving conflicting information, such as inconsistent or duplicate voting. + + +### Epoch + +An [epoch](https://coinmarketcap.com/alexandria/glossary/epoch) refers to the period between increments made in a blockchain, for instance before +and after a transaction succeeds. + + +### Eventual consistency + +[Eventual consistency](https://en.wikipedia.org/wiki/Eventual_consistency) is the consensus model employed by Sui; if one honest authority +certifies the transaction, all of the other honest authorities will too eventually. + + +### Family history + +Family history is the relationship between an object in Sui and its direct predecessors and successors. This history is essential to the causal +order Sui uses to process transactions. In contrast, other blockchains attempt to read the entire state of their world for each transaction, +introducing great latency. + + +### Finality + +[Finality](https://medium.com/mechanism-labs/finality-in-blockchain-consensus-d1f83c120a9a) is the assurance a transaction will not be revoked. This +stage is considered closure for an exchange or other blockchain transaction. + + +### Gas + +As with other blockchains, [gas](https://www.investopedia.com/terms/g/gas-ethereum.asp) in Sui is the currency for the cost of conducting a transaction. + + +### Genesis + +Genesis is the initial act of creating accounts and gas objects. Sui provides a `genesis` command that + +For more information, see [Genesis](../build/wallet.md#genesis). + + +### Gateway service + +Sui provides a Gateway service that enables third parties, say app/game developers, to route transactions on behalf of users. Because Sui never requires +exchange of private keys, third parties may offload bandwidth use from mobile device to server - for a fee. + + +### Multi-writer objects + +Multi-writer objects are those owned by more than one account. Transactions affecting multi-writer objects require consensus in Sui. This contrasts with +those affecting only single-writer objects, which require only a confirmation of the owner’s account. + + +### Proof-of-stake + +[Proof-of-stake](https://en.wikipedia.org/wiki/Proof_of_stake) is a blockchain consensus mechanism where the voting weights of authorities or validators is +proportional to their stake in the network. This mitigates attacks by forcing bad actors to gain a large stake in the blockchain first. + + +### Smart contract + +A [smart contract](https://en.wikipedia.org/wiki/Smart_contract) is an agreement based upon the protocol for conducting transactions in a blockchain. In Sui, +smart contracts are written in the [Move](https://github.com/MystenLabs/awesome-move) programming language. + + +### Single-writer objects + +Single-writer objects are owned by one account. In Sui, transactions affecting only single-writer objects owned by the same account may proceed with only a +check of the sender’s account, greatly speeding transaction times. + + +### Total order + +Total order is the view of the entire state of a blockchain at any given time. This is used by many blockchain systems to certify transactions. In contrast, +Sui uses causal order. + +For more information, see [Causal order vs total order](how-sui-works.md#causal-order-vs-total-order). + + +### Transfer + +A transfer is switching the owner address of a token to a new one via command in Sui. This is accomplished via the +[Sui Wallet](../build/wallet.md) command line interface. It is one of the more common of many commands +available in the wallet. + +For more information, see [Transferring objects](../build/wallet.md#transferring-objects). From d425f6f4790494d6b54ba0f19f257c21d8b25461 Mon Sep 17 00:00:00 2001 From: Clay-Mysten <100217682+Clay-Mysten@users.noreply.github.com> Date: Fri, 11 Mar 2022 11:34:10 -0800 Subject: [PATCH 2/3] Update sui-glossary.md Making accumulator-gateway relationship clear --- doc/src/learn/sui-glossary.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/doc/src/learn/sui-glossary.md b/doc/src/learn/sui-glossary.md index 2d6933abed981..a79e48bbfe2a8 100644 --- a/doc/src/learn/sui-glossary.md +++ b/doc/src/learn/sui-glossary.md @@ -7,8 +7,10 @@ Find terms used in Sui defined below. Where possible, we link to a canonical def ### Accumulator -An [accumulator](https://en.wikipedia.org/wiki/Accumulator_(cryptography)) collects votes on transactions from authorities in Sui. -The accumulator enables transactions to be certified. +An [accumulator](https://en.wikipedia.org/wiki/Accumulator_(cryptography)) makes sure the transaction is received by a quorum of authorities, +collects a quorum of votes, submits the certificate to the authorities, and replies to the client. The accumulator enables transactions to be +certified. Sui offers a Gateway service that can assume the role of accumulator and collect votes on transactions from authorities in Sui, +saving end users bandwidth. ### Authority From a4a096f8704b7980b947993170155c75f9f97549 Mon Sep 17 00:00:00 2001 From: Clay-Mysten <100217682+Clay-Mysten@users.noreply.github.com> Date: Fri, 11 Mar 2022 14:19:56 -0800 Subject: [PATCH 3/3] Update sui-glossary.md Fixed epoch entry and linked to our canonical definition --- doc/src/learn/sui-glossary.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/doc/src/learn/sui-glossary.md b/doc/src/learn/sui-glossary.md index a79e48bbfe2a8..06d164311e225 100644 --- a/doc/src/learn/sui-glossary.md +++ b/doc/src/learn/sui-glossary.md @@ -44,8 +44,9 @@ Equivocation in blockchains is the malicious action of dishonest actors giving c ### Epoch -An [epoch](https://coinmarketcap.com/alexandria/glossary/epoch) refers to the period between increments made in a blockchain, for instance before -and after a transaction succeeds. +Operation of the Sui network is temporally partitioned into non-overlapping, fixed-duration (e.g. 24-hour) *epochs*. During a particular epoch, the set of authorities participating in the network is fixed. + +For more information, see [Epochs](../build/authorities.md#epochs). ### Eventual consistency