Mainnet vote for Smart Accounts
The network will be voting for the mainnet upgrade with new features on Monday, July 15, so if you run a node – prepare! If you don’t run a node yet, then what’s stopping you? Join the staking army!
For technical support, join our Telegram Chat.
LTO Hybrid Architecture
What is unique about LTO Network technology? As you know, it has a hybrid architecture, so there is more than just one blockchain. In fact, there are multiple blockchains:
- Layer 1, permissionless public blockchain, acting as a decentralized notary for hashes. It enables anchoring of data and securing its integrity. For example, digital signatures, workflow audits, and so on.
- Layer 2, permissionless private chains. Those are ad-hoc event chains which are horizontally scalable. There can be hundreds or thousands of them, with custom logic allowing for process automation, maintaining GDPR and data privacy compliance. What can they be used for? Supply chain, legal contracts, and so on.
You can see live use cases here.
Simplicity is key for adoption
Layer 1 blockchain is written in Scala; for other services, we have API libraries for PHP, JavaScript, and Java. Python is in the making, and other languages can be supported later.
We will get into technical specifics for both layers later on in separate articles. Let’s start with Layer 1, our permissionless public blockchain. It’s simple, it’s scalable, and it does what it needs to do: act as a quick security-settlement layer. Be it digital signatures anchoring, Layer 2 event anchors, or just regular LTO transfers: everything eventually interacts with Layer 1, making sure token utility (transaction fees and staking) is at the core of everything LTO does.
All the products and use cases built on top of LTO Network do not require users and integrators to change their existing IT infrastructure – it’s super easy and can be used with legacy systems. For LTO public blockchain, we decided to go with a modification of Waves/NXT. It is based on Bitcoin NG with Leased Proof of Stake model (non-inflationary staking).
Check out the technical paper for more information.
Smart Accounts Feature=4
We will explain in detail which features have been changed from Waves/NXT code and how it was done, please stay tuned for that piece in August. By the way, if you are wondering why Layer 1 is a fork, and what innovative things LTO team have actually implemented, you will find in the Layer 2 toolkit, which has been developing for years! We don’t think that everything needs to be a complicated abstract technical paper. With LTO Network, we focus on usage, adoption, community, and getting blockchain utilized in many business areas.
With this upcoming upgrade, we are implementing some of the Waves features called “Smart Accounts”. What do they enable?
Smart Accounts concern the logic of accepting a transaction.
To create an account on the LTO Network public chain, you create a public/private key pair. From that key pair, a wallet address is calculated. Transactions from a wallet, like transferring tokens, need to be signed with the private key that corresponds with that wallet address. Even anchor transactions need to signed this way, as the transaction fee is deducted from the corresponding wallet.
This default behavior works for most cases, but somethings it would be helpful if you’d be able to change the conditions under which a transaction from your account is accepted. For instance, for organizations holding a large amount of LTO, it’s not safe to store it in an account that only requires a single signature.
Smart Accounts allow you to change the conditions under which a transaction from that account is accepted or denied.
Multi-sig wallet
A Smart Account can be configured, so only anchor transactions signed with its private key are accepted. For other types of transactions, like transfers, three out of four other private keys need to be used. Each of these keys belongs to a member of the senior management of the organization.
Token freezing
Similar, you could configure an account to be able to stake and lease tokens, but not to transfer any tokens for a certain amount of time. Or create a wallet from which only anchor transactions can be done. Smart Accounts allow you to specify fine-grained logic, beyond basic locked accounts.
Limited recipients
Another option to secure an account is to specify to which accounts tokens may be transferred. For instance, tokens may be transferred to your Binance Chain wallet via the bridge, but not to any other LTO, Binance Chain or Ethereum wallet.
Are these Smart Contracts?
Technically Smart Accounts are non-Turing complete smart contracts: they allow the execution of code on the blockchain. But they have deliberate limitations on functionality to ensure the LTO public chain can process anchor transactions in an optimized and reliable way.
Smart Accounts cannot be used to achieve the things we typically associate with smart contracts;
- They can’t be used to create custom tokens (like ERC20 or BEP2).
- They can’t be used to create colored coins.
- They can’t trigger a secondary transaction.
With a Smart Account, you can only look at account info, block info, and transaction info and return “Yes, this transaction is permitted” or “No, this transaction is not permitted”.
This only replaces the logic of checking the signature. Other conditions, like checking the account balance, are still in place.
Programming the logic for a Smart Account is done in the RIDE programming language. This language has been developed by Waves and is optimized for blockchain execution, requiring minimal resources for its operation.
Smart Accounts do not require any ‘Gas’ for their operation, unlike Ethereum’s smart contracts. This will be possible due to the statically-predictable execution time.
How can I use Smart Accounts?
Once Feature 4 has been activated, developers can create a Smart Account by issuing a “set script” transaction.
Of course, LTO is all about making blockchain accessible for businesses and the wider public in general. Therefore, we’ll be adding the option the LTO wallet, to convert your regular account to one of several different account types, like a multi-sig or frozen account.
This conversion doesn’t require any programming or technical knowledge, simply fill out the form and pay the transaction fee.
We have already tested the features on testnet. Ready for mainnet!
Mainnet Vote on July 15
The voting period will be set for 10000 blocks which is around 7 days. In order to pass through, it would need 80% or more of the votes. Since LTO Layer 1 is a Proof of Stake variation, it would mean that 80% of the blocks within the voting period to contain the “approval stamp” for the new features. Once the features are voted in, it will take another 10000 blocks for the upgrade to get activated. If 80% is not reached after 7 days, the vote will start again.
For staking stats and nodes, see the LTO Tools.
Voting starts at block 270,000. As currently, the network is processing 1440 blocks per day, this will happen around Monday morning at 09:30 UTC, July 15.
Here is the simple step-by-step guide. There is no need to perform the activities described below before that time hits, we will make a separate reminder.
First, add feature vote to docker-compose.yml:
– LTO_FEATURES=4
Pull the latest image and restart node:
docker-compose pull
docker-compose down
docker-compose up -d
If and when the voting settles with the 80% majority, and before 7 days of activation elapse, make sure to upgrade your node. Otherwise, it will stop mining.
What’s Next?
In just 6 months, LTO Network became one of the top-20 most used blockchains, with over 20,000 daily transactions! Check out the Q1-Q2 report. We are taking adoption to the level by evolving into an ecosystem and expanding our reach both in the software and in the VC world.
We are working on technical documentation, a new website, developer-friendly videos, and more educational content. Stay tuned for the integrator releases who are joining the LTO movement!