Smart Contracts Flashcards

Learn Stellar Smart Contracts (37 cards)

1
Q

What is Soroban?

A

The smart contract platform on the Stellar network.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is SDK?

A

It stands for software development kit, and it is the software that is used for developing smart contracts. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is Rust?

A

Rust is the binary programming language used to build Soroban smart contracts on Stellar. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How do Stellar Soroban smart contracts execute?

A

A Soroban smart contract is a small program written in the Rust programming language that is compiled as a (Wasm) WebAssembly for deployment. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is Wasm?

A

WebAssembly (Wasm) is a binary instruction format for a stack-based virtual machine.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Who is credited with proposing the idea of smart contracts first?

A

Nick Szabo (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

When did Nick Szabo first propose the idea of smart contracts?

A

The early 1990’s (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What was Nick Szabo’s original idea of what a smart contract should be?

A

in the 1990’s Nick proposed the idea of smart contracts as a “set of promises, specified in digital form, including protocols within which the parties perform on these promises.”

Years later, this proposal became a reality with the help of blockchain technology. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Who is Nick Szabo?

A

Nick Szabo is a computer scientist, legal scholar, and cryptographer known for his research in smart contracts and digital currency. (Wikipedia)

In 1998, Szabo designed a mechanism for a decentralized digital currency he called “bit gold”. Bit gold was never implemented but has been called “a direct precursor to the Bitcoin architecture.” (Wikipedia)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is a smart contract?

A

“A smart contract is a self-executing program that is run and stored on a blockchain network.

Smart contracts execute automatically when predefined terms and conditions are met without the need for intermediaries such as banks, lawyers, or voting authorities.

They can also automate complex workflows by triggering the next action when certain conditions are met.” (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the benefits of smart contracts?

A
  1. Time and cost efficiency
  2. Trust and transparency
  3. Security
  4. Permissionless (Stellar.org)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How are smart contracts cost efficient and time saving?

A

Smart contracts are digital and automated, which streamlines processes and saves time and money. Without the need for intermediaries, there’s no paperwork, no back and forth between parties, and less chance for human error and manipulation. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How do smart contracts create trust and transparency?

A

Smart contracts are transparent due to their underlying blockchain technology. Once a smart contract is deployed on the blockchain, its code and associated transactions are publicly accessible and cannot be altered. Participants are able to independently verify a contract’s terms, behavior, and outcome. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How are smart more secure than traditional contracts?

A

Smart contracts are encrypted and leverage cryptographic security techniques, such as digital signatures and hashing, to protect data integrity and authenticate participants. Once a smart contract is deployed on a blockchain, its code and transactions are immutable. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How are smart contracts considered permissionless?

A

Stellar and Soroban are open-source, and anyone can write a smart contract and deploy it to the Stellar network as long as they know how to code in a supported smart contract language. (Stellar.org)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are the steps in making a smart contract work?

A
  1. Write the contract
  2. Test the contract
  3. Deploy the contract
  4. Invoke the contract (Stellar.org)
16
Q

What is meant by writing a smart contract?

A

The developer writes the smart contract using a programming language supported by the platform. Writing the contract consists of defining the contract’s terms and conditions, functions, and rules for execution. (Stellar.org)

17
Q

What is meant by testing a smart contract?

A

Once the contract is written, the developer tests the smart contract in a local or testnet environment to ensure everything works correctly. (Stellar.org)

18
Q

What is meant by deploying a smart contract?

A

Next, the developer deploys the smart contract to the blockchain’s mainnet by submitting a transaction with the compiled contract code. (Stellar.org)

19
Q

What is meant by invoking a smart contract?

A

When the contract is deployed, others can interact with it by sending transactions that invoke its functions. These interactions trigger the contract’s execution, and the blockchain network validates and records the resulting state changes. (Stellar.org)

20
Q

What are some examples of smart contracts in practice?

A
  1. Voting systems and DAO Governance
  2. Decentralized Finance (DeFi)
  3. NFT’s and Gaming
  4. Supply Chain Management (Stellar.org)
21
Q

How would smart contracts benefit voting systems and DAO Governance?

A

Current systems are susceptible to voter manipulation and fraud. With smart contracts, votes are unchangeable and irreversible. (Stellar.org)

22
Q

Why would smart contracts be helpful with Decentralized Finance (DeFi)?

A

Because DeFi applications provide a more trustless, immutable, and transparent alternative to traditional financial services. (Stellar.org)

23
Q

How are smart contracts used within NFT’s and Gaming?

A

Smart contracts are used in gaming to allow the creation, ownership, and trading of in-game assets, often as non-fungible tokens (NFT’s). (Stellar.org)

24
How are smart contracts used in Supply Chain Mangement?
Smart contracts would be able to track and verify the movement of goods, ensuring product authenticity and streamlining logistics. (Stellar.org)
25
What is a considered a crate in the rust programming language for Soroban?
A crate is the smallest unit of code that the Rust compiler considers at a time. It can be thought of as a compilation unit.
26
What is the software development kit (SDK) command-line tool used for?
The SDK command line tool provides the developer focused front end for compiling, testing, inspecting, versioning, and deploying contracts. (Stellar.org)
27
What is Soroban on Stellar? Is it a new blockchain?
Soroban is not a new blockchain. Soroban is a smart contract platform integrated into the existing Stellar blockchain. It is an additive feature that lives alongside and doesn't replace the existing set of Stellar operations. (Stellar.org)
28
How do I invoke a Soroban contract on Stellar?​
Invoke a Soroban contract by submitting a transaction that contains the new operation: InvokeHostFunctionOp. (Stellar.org)
29
Can Soroban contracts use Stellar accounts for authentication?​
Yes. Stellar accounts are shared with Soroban. Smart contacts have access to Stellar account signer configuration and know the source account that directly invoked them in a transaction. Check out the Authorization section for more information. (Stellar.org)
30
Can Soroban contracts interact with Stellar assets?​
Yes. Soroban contains a built-in Stellar Asset Contract that can interact with classic trustlines. (Stellar.org)
31
Do issuers of Stellar assets maintain authorization over an asset sent to a non-account identifier in Soroban?
Yes. Issuers retain the same level of control on Soroban as they have regularly. This functionality is accessible through a set of admin functions (clawback, set_auth) on the built-in Stellar Asset Contract. (Stellar.org)
32
Can Soroban contracts interact with any other Stellar operations?​
No. Aside from the interactions with accounts and assets mentioned above. This means that Soroban contracts cannot interact with the SDEX, claimable balances, or sponsorships. (Stellar.org)
33
Does the Stellar base reserve apply to Soroban contracts?​
No. Soroban has a different fee structure, and ledger entries that are allocated by Soroban contracts do not add to an account's required minimal balance. (Stellar.org)
34
Should I issue my token as a Stellar asset or a custom Soroban token?​
To the greatest extent possible, we recommend issuing tokens as Stellar assets. These tokens will benefit from being interoperable with the existing tools available in the Stellar ecosystem and are more performant because the Stellar Asset Contract is built into the host. Read more in the Tokens Overview. (Stellar.org)
35
What Stellar Protocol was a big upgrade for smart contracts on the Stellar platform?
Protocol 20 - Preparing for Smart Contracts on Stellar. (Stellar.org)
36
What was new in Protocol 20?
Protocol 20 implements 12 new Core Advancement Proposals (CAPs) that, combined, introduce the changes to the Stellar protocol and Stellar Core required to enable Soroban smart contracts.