Introduction to Lisk (LSK) Part 2

Lisk SDK. JavaScript. Consensus on Lisk Network.

 

Lisk App SDK Functionality

One of the main differences between Lisk and other blockchains is that Lisk App SDK offers a lot of additional functionality for developers.

Lisk doesn’t just allow for building of side blockchains. If this was all it did, it would be extremely similar to many other blockchain networks. In addition to the functionality of side blockchains, Lisk App SDK allows developers to create back end and front end of the decentralized apps. This means that with Lisk, developers can create full applications that consist of a blockchain with a consensus algorithm, a user front end, a developer back end, and an optional custom cryptocurrency. Because of this, it is extremely easy for developers to use Lisk to create full-fledged apps that include everything an app could include.

Lisk decentralized apps do not run on the Lisk blockchain. This is what makes Lisk different from Ethereum and decentralized apps on the Ethereum network that use Ethereum Virtual Machine. With Lisk, users need to download the apps and run them as hosted software, similarly to how they would run a Bitcoin client or any other decentralized client software. Once a side chain has multiple users, various users will have various privileges according to Lisk’s Delegated Proof-of-Stake algorithm. Some users can become delegates and can participate in the creation of the blocks on the side chain while others will remain users and simply use the application. From the perspective of the creators of the Lisk network, the applications are decentralized because they have multiple users and multiple devices similarly to how Bitcoin is decentralized because it has many nodes.

 

Brief History of the Lisk Network

Lisk is a hard fork of a blockchain project called Crypti. Both founders of Lisk, Max Kordek and Oliver Beddows, worked at Crypti for over a year before starting Lisk. During an initial coin offering in 2014, Crypti has collected about 750 bitcoins. Kordek and Beddows believed that getting to their vision would be more expensive than that, which is why they created a fork in May of 2016, which is when Lisk was officially born. The sale of the Lisk tokens ended in March of 2016. Kordek and Beddows have collected over 14,000 Bitcoins from investors, which in 2016 was over $5 million.

 

JavaScript on Lisk

While some developers consider JavaScript to be a weakly typed coding language, this fact doesn’t make the language inherently insecure. While the programming language does play an important role, it is the job of the developer to make the final product secure. With JavaScript, the benefit is that the language is very popular, easy to use, and the disadvantages of the language are well-known. This also means that the probability of developers creating bad code using JavaScript is lower compared to using some brand new unfamiliar programming language. With JavaScript, corporations like Microsoft are working all the time on improving the speed and security of the language, which ultimately benefits everyone, including members of the Lisk ecosystem.

One of the limitations of the JavaScript programming language has been number precision above 32 bits. Lisk developers have created a workaround for the issue by using a library for decimal and non-decimal arithmetic called BigNumber.js.

 

Consensus algorithm on the Lisk network

Just like Bitcoin, Ethereum, and many other cryptocurrency networks, Lisk is a decentralized blockchain network. However, it does not use proof-of-stake consensus algorithm to create the blocks of its blockchain. Instead, Lisk uses an algorithm called delegated Proof-of-Stake that it borrowed from BitShares and then simplified for the Lisk blockchain.

 

Proof of work versus proof of stake

In proof of work, miners first compile transactions on a blockchain into blocks and then they need to seal the blocks with hashes that correspond to the current “difficulty” of the network.

The problem with this is that essentially the miners on proof-of-work networks are guessing the winning hash. They first compile the information about transactions on the network into a block of blockchain, which is a trivial task for almost any modern computer. In cryptography, a hash is a string that is much shorter that the set it corresponds to. For instance, block #528531 of the Bitcoin blockchain contains full data about 200 transactions on the Bitcoin network, yet the hash for all this data is only 0000000000000000001e550cca49be5a1084314caeabfaf90664a459700d8427.  A set of data can have one and only one hash in one cryptography algorithm (the software of the Bitcoin network, for example, is built around cryptography algorithm called SHA-256. SHA-256 was originally created by the National Security Agency of the United States).