Site icon UK Essayz

BlockChain as an Operating System

Abstract

We all have come across using different operating systems namely Mac, Windows, Linux, Chrome Operating System. However, you might have never heard about Blockchain Operating System. It’s a new technology which offers to improvise the vulnerabilities and security threat involved in the operating systems.

A blockchain operating system uses blockchain as a support in background. A blockchain-based Operating System captures all commands and transactions from a user’s device but authenticating, executing, and recording them occurs on the blockchain.

A blockchain essentially works as a transaction processing engine. Whether a payment needs to be processed or a distributed application is to be built and run on Ethereum platform or making a bitcoin transaction all such applications of blockchain are built on Blockchain Operating System.

Introduction

To understand Blockchain Operating System, let’s see what is blockchain. Blockchain is, in the simplest of terms, a time-stamped series of immutable record of data that is managed by cluster of computers not owned by any single entity i.e. it is decentralized. Each of these blocks of data are secured and bound to each other using cryptographic principles. Basically, it’s a distributed database which maintains a continuously growing tamper proof data structure blocks which holds batches of individual transactions.

Now let’s have a look at why blockchain technology is of great importance for the data integrity. Data is for the current age become an invaluable resource, indeed it guides all business decisions in most of the computer-aided human activities. Threats to data integrity are thus of utmost relevance, as tampering with data may maliciously affect crucial business decisions. Thus, it become really important to make our system very safe and secure to all types of threats. We feel blockchain operating system is the answer for all types of threats because of its main feature of using a complex hashing 256 bit algorithm to access every BlockChain transaction between the both the sender and the receiver which makes it nearly impossible for possible hackers to hack their system.

In this report we have done a research on integrating the ‘Blockchain’ technology on Operating System with a aim of removing all the vulnerabilities and security threats which are still faced by multiple Operating System Platforms. We have used and implemented ethOS (Ethereum Based Operating System) to support our claim.

What is blockchain Operating System?

A blockchain-enabled virtual OS is one that gives the system ability to combine communication and commerce in a single unified platform. Here the virtual aspect means that the main and intelligent stuff will be carried in the cloud data center and not on the device itself, which make it very secure to use.

The introduction of this new unified technology proposal means that, currently in the theory at least, users can start engaging with blockchain based services on smartphones with security and privacy already locked down.

Advantages of Blockchain OS over other Operating System

Blockchain users will be able to harness the benefits of blockchain OS. As we know that whatever we do on our iOS mobiles or Android, or Mac PCs or Windows are prone to be captured by the respective apps, ISPs, as well as the OS manufacturers by recording user activities from the OS logs. Here is what Blockchain OS plays its role by providing security and privacy, and the deregulated, decentralized use of OS.

Blockchain OS platform is open-source and accepts contributions from partners and customers as they adapt the platform to their specific uses. It builds a community that can recover quickly and will keep improving the system as Blockchain itself gains more traction. It is a platform on top of which we can build applications that are secure scalable and distributed in nature resisting attacks.

An aspect that sets Blockchain apart is neither the distributed aspect nor the need for security on an adversarial network. Today, most software’s running on internet are highly vulnerable to attacks. This is what blockchain makes it different where the higher stakes are directly associated to failure. Thus, once Blockchain Operating System exists, many users outside of Blockchain will demand the same standards of security and developers will enjoy the same quality of development tools. As we are using more personal devices which controls our lives and money there is a high and vital need of software security. This is what would raise the demand for blockchain.

What is Ethereum and how we have used it in our project?

Ethereum is one of the particular application of the Blockchain OS. It is a global, open-source platform for decentralized applications. It is blockchain based operating system that supports modified version of Nakamoto consensus of transaction-based state transitions. On Ethereum, we can write code that controls digital value, runs exactly as programmed, and is accessible anywhere in the world. Blockchain Operating System is a new technology which has several advantages over regular Operating System and in this project we have used ethOS which is a Ethereum Based operating System.

It is implemented using memory- hard hash function.

Ethereum Network

Geth/Parity Node : It is the implementation of an Ethereum Node/Block.

Genesis File: A genesis file is the building block of the blockchain ethereum that contains the setting file for example the chain configuration. We can create our own genesis file which in Json format

There are 4 required value(config, difficulty, gasLimit, alloc) that we need to specify in genesis.json.

Config : The blockchain configuration.

Difficulty : mining difficulty // set this value low so you don’t have to wait too long for mining blocks.

gasLimit: the limit of gas cost per block // set this value high to avoid being limited when testing”

alloc: pre-funded address, the first parameter of each is the address . Need to be a 40 digits hex string (160 bit, one hex digit is 4 bit). Note that this does not create an account

Implementation:

1. Download and install (if needed) the most recent versions of Geth (Ethereum client) and Mist (Ethereum Browser and Wallet)

Geth can be obtained below. Get “Geth 1.7.3 Installer” or “Geth & Tools 1.7.3” for Windows 64-bit system (if that’s your system).

https://geth.ethereum.org/downloads/

Get “Mist-win64-0-9-3.zip” from the following link and unzip.

https://github.com/ethereum/mist/releases

When your run “geth” or “mist”, make sure you either run in the directory that contains these commands or add the directory of these commands to your system PATH variable, so that you can access these programs.

2. Create a genesis file.

For example, create the file “C:ethereumcodesgenesis.json” with the following contents. The file should be a pure text file (e.g., you can use NotePad or PSPad to edit such a file). The chainId variable is set to 3456 in this file – you can set this to any positive integer you want. This number will be the id of your private network so you should set it to be a unique number if possible.

{

“coinbase” : “0x0000000000000000000000000000000000000001”,

“difficulty” : “0x20000”,

“extraData” : “”,

“gasLimit” : “0x8000000”,

“nonce” : “0x0000000000000042”,

“mixhash” :

“0x0000000000000000000000000000000000000000000000000000000000000000”,

“parentHash” :

“0x0000000000000000000000000000000000000000000000000000000000000000”,

“timestamp” : “0x00”,

“alloc”: {

},

“config”: {

“chainId”: 3456,

“homesteadBlock”: 0,

“eip155Block”: 0,

“eip158Block”: 0

}

}

3. Initialize the private blockchain.

Run “cmd” to obtain a new command window. Change into the directory that contains “geth” command. Here the directory is “C:ethereum”.

Run the following command. This initializes the private blockchain with the first (genesis) block based on the genesis file. The blockchain and its associated data will reside in the directory specified, “C:ethereumchaindata3456” here.

geth –datadir=”C:ethereumchaindata3456? init “C:ethereumcodesgenesis.json”

4. Run a geth client that works on the blockchain

Run the following command. Note that it is important to specify the network id to be 3456 (or any other network id that you have defined in your genesis file). This tells the geth client that you are running a private network. If you don’t specify the network id, your geth client will keep trying to connect to the main Ethereum network.

geth –datadir=”C:ethereumchaindata3456? –networkid 3456

5. Start another geth client that runs commands on the blockchain.

Start another “cmd” window and run:

geth attach ipc:\.pipegeth.ipc

6. Run the Mist program from the directory that you downloaded and unzipped Mist.

When you see the following window, click on “Launch Application”. Click on Add Account and follow the instructions to enter passwords to create your first account on the blockchain. This first account will be the “coinbase” account that your mining rewards will go to. Make sure that you remember the password! There is no way to recover the password if you forgot it. Since this is only a private network that does not involve real money, you can choose a simple password that’s easy to remember. Now you should see the account and its address on the Mist browser as follows:

7. You can now start mining.

Run the command “miner.start()” at the geth prompt in the second window that runs geth (see Step 5)

On the first geth window, you should now see the mining process starts (it may need one or two minutes) and you should be able to mine blocks very quickly (about one block each second).

Type “miner.stop()” at the second geth window to stop mining for now.

8. You should now see some Ether in the main account in the Mist browser. Of course, these Ethers are only valid in your private network! You can also see that there are now some blocks (31 in this case) on the blockchain.

9. You can now practice creating more accounts (remember the passwords) on Mist and transferring ether among the accounts. For any transaction to go through and be confirmed, you need to start mining on the “geth attach” window since only miners can verify and write transactions to the blockchain.

10. You can check balances using the Mist browser or typing commands in the geth attach window. Note that 1 ether = 1018 wei and the balances are stored as wei’s and hence need to be converted to ethers in the commands.

Conclusion:

Blockchain Operating System is still a developing and new technology which promises to provide increasing speed by increasing the scalability of the system which is considered as the biggest challenge the Blockchain technology faces.

Moreover, the Blockchain Operating system technology enables any application to seamlessly communicate with any blockchain and it is very secure.

This added to all the Blockchain features makes it a very important technology which has already been implemented by many of the companies viz GemOS, WABnetwork, EOS Blockchain & Overledger to name a few.

References:

https://www.investopedia.com/terms/b/blockchain-operating-system.asp

https://medium.com/alacris/alacris-the-blockchain-operating-system-a37fdf4fae8e

https://medium.com/coinmonks/transactions-in-ethereum-e85a73068f74

https://www.investopedia.com/terms/e/ethereum.asp

https://www.investopedia.com/terms/c/cryptocurrency.asp

https://www.nynja.io/

https://www.prnewswire.com/news-releases/nynja-group-and-amgoo-to-deliver-high-performance-tools-for-communications-collaboration-and-blockchain-powered-e-commerce-to-latin-america-300664148.html

https://eprints.soton.ac.uk/411996/

https://steemit.com/crypto/@bikash08/differences-between-ethereum-blockchain-and-bitcoin-s-blockchain

Blockchain E-commerce to Come to Latin America

https://www.forbes.com/sites/adrianbridgwater/2018/07/03/what-is-a-blockchain-operating-system/#74cd55b236ae

https://medium.com/blockchannel/life-cycle-of-an-ethereum-transaction-e5c66bae0f6e

Get Help With Your Essay
If you need assistance with writing your essay, our professional essay writing service is here to help!
Find out more