2. Agenda
● What is Stellar?
● Stellar Basics
● Overview of the Network
● Key Concepts
● Creating a single signature wallet for Stellar’s native currency (XLM)
● Creating a multi signature wallet for Stellar’s native currency (XLM)
3. What is Stellar?
● A distributed, hybrid blockchain that can help move money across borders quickly,
reliably, and at very low cost.
● Stellar network facilitates cross-asset transfers of value.
● Anyone can join stellar network by just integrating with it.
● Transactions are resolved very fast in Stellar network, they are resolve in around 2-5
seconds.
5. Decentralized network
● It is a network of peers that run independently of each other.
● This way power to transmit information get distributed among a network of servers
instead of only one primary source.
● Stellar is also a distributed network so the network will run successfully even if some
servers fail.
6. Ledger
● Like a traditional ledger, the Stellar ledger records a list of all the balances, offers and
transactions belonging to every single account on the network.
● All servers have the copy of this ledger.
● The servers sync and validate the ledger by a mechanism known as consensus.
7.
8. Consensus
● The Stellar servers communicate and sync with each other to ensure that transactions
are valid and get applied successfully to the global ledger.For example,
○ if you want to send $5 to a friend on the network, Then majority of these servers
will have to agree that you do in fact own $5 worth of credit on the network before
they will mark the transaction as valid.
● The network uses Stellar Consensus Protocol (SCP) for the agreement.
9.
10. Anchor, Trust & Credit
● Anchors are simply entities that people trust to hold their deposits and issue credits into
the Stellar network for those deposits.
● All money transactions in the Stellar network (except the native digital currency of
lumens) occur in the form of credit issued by anchors.
● Anchors do two simple things:
○ They take your deposit and issue the corresponding credit to your account
address on the Stellar ledger.
○ You can make a withdrawal by bringing them credit they issued.
● You have to trust the anchor to honor your deposits and withdrawals of credit it has
issued.
11.
12. Distributed Exchange
● The Stellar ledger is able to store offers that people have made to buy or sell currencies
● Offers are public commitments to exchange one type of credit for another at a
predetermined rate
● The ledger becomes a global marketplace for offers
● All these offers form what is called an orderbook. There is an orderbook for each
currency/issuer pair
● This allows people to not only buy and sell currencies in a foreign exchange like
manner but also to convert currencies seamlessly during transactions
13.
14. Multi-Currency Transactions
● Stellar allows you to send any currency you hold to anyone else in a different currency
through the built-in distributed exchange
● People can receive any currency through an anchor they added.For example,Amy
wants to send Bob euros then few possible ways the transaction can happen:
○ Conversion through an offer
○ Using lumens as an intermediary currency
○ Chain of conversions
15.
16. Overview of Network
● API: Horizon Server
● Network Backbone: Stellar Core
● Big Picture: The Stellar Network
17.
18. API: Horizon Server
● It is the RESTful HTTP API server. The application interact with this server.
● It provides easy way to submit transactions, check accounts, and subscribe to events
● Any client can connect to this Apis.
19. Network Backbone: Stellar Core
● Horizon server connects to the Stellar Core, which is the backbone of the Stellar
Network.
● The Stellar Core software does all the hard work of validating and agreeing with the
other instances of Core on the status of every transaction through the Stellar
Consensus Protocol (SCP)
● The network itself is a collection of the connected Stellar Cores run by various
individuals and entities around the world
● Some instances would have the Horizon server we can connect with while some just
run the Stellar Core to add more reliability to the network
20. Big Picture: The Stellar Network
● The Stellar network is collection of Stellar Cores.This distributed nature of the network
makes it reliable and safe
● All these Horizon server connects to the Stellar Core, which is the backbone of the
Stellar Network
● Each transaction on the network costs a small fee : 100 stroops (0.00001 XLM). This
fee prevents bad actors from spamming the network
22. Accounts
● Accounts are central part in Stellar. They are identified by a public key
● Everything else in the ledger Offers, Trustlines, etc. are owned by a
particular account
● For making a transaction,it must be signed by the accounts private key
● Some important fields of account :
○ Account ID : The public key of the account.
○ Balances : balances for the different Assets that the account holds.
○ Sequence number : The current transaction sequence number of the account. This
number starts equal to the ledger number at which the account was created.
○ Thresholds : This field specifies thresholds for low-, medium-, and high-access levels.
○ Signers : This field lists other public keys and their weights, which can be used to
authorize transactions for this account.
23. Asset
● The Stellar network can be used to track, hold, and transfer any type of asset:
○ Dollars
○ Euros,
○ Bitcoin
○ Any other tokens of value.
● Any asset on the network can be traded and exchanged with any other.
● Other than lumens ( The Native currency ), all assets have
○ Asset type: For Example, USD or BTC
○ Issuer: the account that created the asset
24. Trustlines
● To hold any particular Asset on Stellar, you need to trust the issuer to properly redeem
its credit
● No account would like to hold Asset from an issuer that they do not trust
● To trust an issuing account, you create a trustline
● Trustlines are entries that are stored in the Stellar ledger. They track the limit for which
your account trusts the issuing account and the amount of credit from the issuing
account that your account currently holds
● A lumen is the only asset type that can be used on the Stellar network that doesn’t
require an issuer or a trustline
25. Fees
● Stellar requires small fees on transactions in order to prevent people from flooding the
network
● The base fee currently is 100 stroops or 0.00001 XLM.
● Fee for a transaction is the number of operations the transaction contains multiplied by
the base fee.
■ (# of operations × base fee)
● This fee is deducted from the transaction’s source account.
26. Minimum Account Balance
● All accounts in Stellar must maintain a minimum balance of lumens.
● The base reserve currently is 0.5 XLM
● If performing a transaction reduces an account’s balance than minimum balance
transaction will be rejected.The minimum balance is calculated using the base reserve:
(2 + # of entries) × base reserve
● Each additional entry costs the base reserve. Entries include:
○ Trustlines
○ Offers
○ Signers
○ Data entries
27. Operations
● Transactions are made up of a list of operations. Operations mutate the ledger.
● Some Operations types :
○ Create Account : This operation creates and funds a new account with the
specified starting balance.
○ Payment : Sends an amount of a specific asset to a destination account.
○ Set Options : This operation allows you to change the weight of the master key
and to add other signing keys with different weights, update thresholds for
different type of operation.
○ Change Trust : Creates, updates, or deletes a trustline.
28. Thresholds
● All operation falls under a specific threshold category,
○ Low
○ Medium
○ High.
● Thresholds define the level of privilege an operation needs.
29. Transactions
● Transactions are commands that modify the ledger state.
● They are used to send payments, enter orders into the distributed exchange, change
settings on accounts,etc
30. Life Cycle
● A Transaction is created.
● It is then signed with required private keys.
● After signing, the transaction is submitted to network
● Once the transaction is submitted it gets propagated in the stellar network.
● Nodes makes sure that the transaction is correctly formed and the source account has
enough to cover the transaction fee
● The transactions are then grouped into a transaction set when it’s time to apply a
transaction set to a ledger.
● SCP will now decide on the one transaction set that the network will apply.
31. ● Once SCP agrees on a particular transaction set, that set is applied to the
ledger.
● At this point, a fee is taken from the source account for every transaction
in that set.
● Operations are attempted in the order they occur in the transaction. If
any operation fails, the whole transaction fails, and the effects of previous
operations in that transaction are rolled back.
● After all the transactions in the set are applied, a new ledger is created
and the process starts over.
32. Use Cases
● Remittances - Money can be sent across borders quickly, for a fraction of
a cent.
● Micropayments - Increase efficiency and decrease the cost of smaller
transfers.