Smart contracts, contractual type arrangements, are contractual clauses expressed in software designed and implemented using Scrypta’s blockchain technology.
From insurance refunds to financial transactions, from corporate transactions to tracking of goods and protection of intellectual property, these are just some of the examples of application cases that can be managed thanks to Scrypta blockchain Smart Contract technology.
The features that every smart contract should have
Before implementing them, we tried to define some essential “qualities” that our system should have:
Scalability: the system must be highly scalable, it must be easily modifiable in case of changes in the amount and type of data processed, guaranteeing, at the same time, stability in the use of the platform as its use increases.
Automation: The system must be able to “self-execute” or perform certain actions in a fully automatic manner.
Simplicity: The system must give the developers ease of development thanks to his prior knowledge of the most common programming languages.
Upgradability: the system must guarantee the updating of the software while maintaining its immutability.
How Scrypta’s Smart Contracts were born
Scrypta was born from a fork of PIVX. This means that in the Scrypta blockchain there is no reference to the concept of Smart Contracts as they are commonly imagined, like those of Ethereum. The need to create them came from the desire to allow developers to use Idanodes, without actually corrupting them or having to act directly inside the source code.
Smart Contracts within the Scrypta Blockchain, therefore, are considered to all intents and purposes as an extension of the IdaNode. The Idanode, or Interconnected dApp Node, is definitely the most important technology developed by Scrypta. It is the heart of all data writing and reading operations, as well as the main source of data for dApps.
IdaNodes, therefore, allow to create and apply “Smart Contracts”, software that runs and maintains a state within the decentralized Scrypta network, with the possibility to develop an indefinite number of new use cases.
The technical entities at the basis of software operation
IdANode: used to interact with the Blockchain, they allow to execute Smart Contracts and maintain them within its database based on the interactions and rules written inside the code.
The Virtual Machine: that is the secure environment where the code is executed in a few predefined internal modules that interact with the IdANodes.
The Compiler: allows the translation of predefined rules written in the Java Script language to the native language capable of communicating with the IdANodes.
Modules
Although we can continue to call them “Smart Contracts”, the platform actually allows you to create modules or extensions for the IdaNode. These modules are enabled within the IdaNode and then maintained by one or more specific IdaNodes resulting in fully scalable. Modules are included only in the IdaNodes that have an interest in providing computing power for the execution of Smart Contracts. This means that a specific application can be maintained only by its creator, or by all those interested in using it.
Clock and Automation
Even though it is generally accepted that the Smart Contract is self-executing based on specific rules, this idea is drastically flawed. A Smart Contract can possibly “automatically” have conditions such that if executed it will lead to a state change within it.
This is because the Virtual Machine of other popular Blockchains does not have a true internal clock. To extend this concept to the blockchain we have to think that the clock of the Virtual Machine (the moment when the machine synchronizes) is the issuance of a block, which in the Scrypta network is about 1 minute. This means that we can think of having our Smart Contract perform at least one operation every block when a “cycle” has been completed.
So we’ve created the basis for automations, all Smart Contracts can call the function and self-execute some code regardless of whether someone calls or doesn’t call the Smart Contract itself.
Benefits of Scrypta Smart Contracts
Scrypta’s Smart Contracts are different from the others. The features they possess have been developed through careful study of this technology, with a strong desire to create a new and innovative dApp with specific advantages not found in other Smart Contracts already implemented:
· They are truly automatic, they self-execute at each block or upon receipt of a mempool information, upon collection of transactions that have been verified by nodes but have not been added to the blockchain yet.
· They are immutable but updatable, the code is immutable, because it is publicly exposed within a transaction, but can be updated by publishing a new version. The update is entrusted to each IdaNode owner who is free to decide whether to update.
· They are simple, write themselves with Javascript and expose their methods by means of the IdaNode.
· they cannot write on behalf of the user, they can generate formally valid transactions and delegate signing and broadcasting to the user.
· They provide consensus features whereby any client can request whether or not that node is trusted. It performs a redundant verification, every single participant in the network checks its correctness and validity.