Stellar Blockchain Technology – Overview of Smart Contracts

July 23, 2019

Stellar Blockchain Technology can be used to build highly sophisticated smart contracts. Smart contracts are computer software programs that can automatically execute a digital agreement based on programmed logic.

Integrating technology and legal contracts goes back to the 1950s when experts used computational methods to enforce legal rules without using traditional legal processes. Nick Szabo formally defined smart contracts in 1997.

Smart contracts combine techniques with user interfaces to formalize and secure relationships over the computer network. Principles and objectives for the design of these methods evolved from legal principles and theories of secure and reliable protocols.

In recent years, blockchain technology has enabled a new breed of smart contracts with immutable storage of agreement terms, cryptographic authorization, and transfers of value.

For the Stellar Blockchain Technology, smart contracts manifest as Stellar Smart Contracts. A Stellar Smart Contract (SSC) is written as compositions of smaller transactions that are connected and executed using various limitations.

1) Transactions:
Transactions are ledger commands that modify the state of the distributed ledger. Among other things, Transactions are used to send payments, enter orders into the distributed ledger exchange, change settings on accounts, and authorize another account to hold your currency. If you think of the ledger as a database, then transactions are like SQL commands.

2) Transaction signatures:
Stellar uses signatures as authorization for transactions. Transactions always need permission from at least one public key to be considered truly valid.

Transaction signatures are created by cryptographically signing the transaction object contents with a secret key. Stellar currently uses the ed25519 signature scheme, but there’s also a mechanism for adding additional types of public/private key systems. A transaction with an attached signature is considered to have authorization from that public key.

In two cases, a transaction may need more than one signature. If the transaction has operations that affect more than one account, it will need authorization from every account. A transaction will also need additional signatures if the account associated with the transaction has multiple public keys associated with it.

3) Batching:
Batching is the way of including multiple operations in one transaction. Batching or Atomicity is the guarantee that given a series of actions, upon submission to the network if one service fails, all action in the transaction fails.

The sequence represents that order should a series of transactions be processed, and there are limitations and dependencies.
The concept of the sequence in the Stellar Network is represented with a sequence number. By modifying sequence numbers in a transaction, it is guaranteed that specific transactions proceed only if an alternative transaction is submitted.

4) Time Bounds:
The time when a transaction can be processed.
Time bounds in Stellar are limitations on the time period over which a transaction is deemed to be valid. Using time bounds enables time periods to be represented in an SSC.

5) Trustlines:
Holding assets in Stellar is equivalent to holding credit from a particular issuer. Here the issuer has agreed that it will trade you its credit on the Stellar network for the corresponding asset–e.g., fiat currency that is outside of Stellar. Let’s say that Mike issues apples as a credit on the system. If you hold apple credits, you and Mike have an agreement based on trust or a trustline. You both agree that when you give Mike an apple credit, he gives you an apple.

When you hold an asset, in Stellar, you must trust the issuer to redeem its credit correctly. Because users of Stellar will not want to trust just any issuer, accounts must explicitly trust an issuing account to hold the issuer’s credit. In the above example, you must explicitly trust Mike before you can keep apple credits.

To trust an issuing account, one creates a trustline. Trustlines are entries are written in the Stellar distributed ledger. Trustlines track the trust limit for which your account trusts the issuing account as well the credit amount from the issuing account that your account currently holds.

Summary:
Many thanks to the various technological concepts implemented in Stellar’s smart contracts. SSCs are made more expressive but less flexible. Here decreased flexibility means that there is limited room for hacker attacks, that makes operating with Stellar smart contracts safe and secure.

Stellar Blockchain Technology ensures all operations with smart contracts are safe and immune to any vulnerability attacks. The security is achieved by using various authentication constraints created in the form of codes and encryptions. Five such limitations were discussed in this article.

P.S

  • Hurify operates the IoT Blockchain marketplace & BIAT vision as Hurify Digital Markets, Inc in the United States & HUR Technologies, UAB in Europe
  • Hurify partners with companies on technology and marketing opportunities. To partner with Hurify: Apply
  • Receive our blogs in an email: Check