Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Ethereum Projects for Beginners

You're reading from  Ethereum Projects for Beginners

Product type Book
Published in Jul 2018
Publisher Packt
ISBN-13 9781789537406
Pages 106 pages
Edition 1st Edition
Languages

Chapter 5. Ethereum Outside the PC/Web Environment

So far, we've looked at using Ethereum on your own personal computers. This chapter takes a look at the uses of Ethereum in various other applications: smartphones, being the most commonly use electronic device, are one of them. The current growth of technology demands an automatic system that requires us to implement the Internet of Things (IoT). This chapter focuses on the following topics:

  • Ethereum outside the browser 
  • Ethereum and IoT 
  • Ethereum and smartphone applications
  • Further steps and resources

We are going to have a look at how people use Ethereum outside the browser, how people use Ethereum as the backbone of IoT, and how you can work with physical components in the blockchain. In addition, we will have a look at how you can use Ethereum in smartphone applications. We'll also discuss some further steps and resources that you can use. So let's get started by looking at how you can use Ethereum outside the browser.

Ethereum outside the browser


This section will teach us to work with Ethereum outside the browser. Standard libraries that can be used on Java, Python, Go, or .NET have been developed by the Ethereum team. These are accessible directly from GitHub at https://github.com/ethereum.

 

One essential feature that you need in order to use Ethereum outside your browser is a connection to the Ethereum network. This connection can be direct—that is, connected directly to your application—or you can use a relay server. Even though using a relay server is not an optimal option, it is completely possible. To use a relay server, you first need to have a server of your own that is centralized in nature and only accepts presigned transactions.

Another requirement that is necessary for using Ethereum outside your browser is the Ethereum library of the language that you will be using to develop it. This is optional because we always start any transaction with raw data. To get a transaction going on the Ethereum...

Ethereum and IoT


In this section, we are going to take a look at Ethereum and how it helps propagate the IoT. In my personal opinion, Ethereum is the perfect backbone for IoT. This is because of two factors: dataflow and security. Data is spread out across the network, which is the most basic concept of IoT; this unhindered and smooth flow of data is an essential factor in using Ethereum to help build the IoT. Also, every device has its own private key that enhances the security factor. The combination of these two elements opens up a lot of new possibilities.

 

Let us look at a case study involving the charging of electric vehicles. At this moment, they are not many electric vehicles or charging stations. There is a high possibility that all vehicles will run on electricity in the near future. This would mean that more charging stations will be placed at many more locations. Let us consider a scenario where there are charging stations at a supermarket. It wouldn't be feasible to provide this...

Ethereum and smartphone applications


You can make smartphone applications with Ethereum support in three ways:

  • Using a DApp browser.
  • Using Android or the iOS library.
  • Doing everything in JavaScript, from key generation to key security and everything in-between. However, this is not recommended, as this makes you very vulnerable.

 

 

 

Using a DApp browser

One kind of DApp browser is Toshi. It will allow you to make use of the centralized application, and you can use it in pretty much the same way in which you would use MetaMask, but on a mobile. Another more popular option isStatus.IM. It's actually a secure chat, but it's also a chat bot. You can give it commands such as retrieving the browser location, as shown in the following screenshot, and if you give it such commands, then you can trigger functions inside of the smart contracts:

Status.IM home page

A few applications have been developed using this method. One such application is WhoPays. This a contract-based bot that creates groups in which...

Further steps and resources


I want to mention Infura. Infura is basically a relay server for the Ethereum and IPFS network that you don't have to manage yourself, making it trustless again. This will exist pretty much for as long as some people are not running their own Ethereum node. Visit www.infura.io for more information. It is of course highly recommended that you run your own nodes, but in case you can't, check out Infura. You can remotely send resigned transactions to this server and they will propagate them into the network.

Another resource for you to check out is the Ethereum GitHub page, which we have mentioned before. Here, you can find all the projects, such as the Ethereum Improvement Protocol, the remix, and yellow paper, which has all the technical specifications of Ethereum. You can find out everything about the Solidity programming language and the different clients that have been built. You can adapt these clients and then use them in your own projects to connect to the...

Summary


In this chapter, we understood how Ethereum is run outside the browser. We learnt how Ethereum can be used for various IoT applications. Then we went on to see how Ethereum is implemented on smartphone devices in Android as well as iOS using various methods. Then you were given some links to various resources that can help you master Ethereum. In this book, we have covered almost everything that you need to build, use, and deploy your own Ethereum token, and have given you additional insight into what applications you can build with this knowledge of Ethereum.

lock icon The rest of the chapter is locked
You have been reading a chapter from
Ethereum Projects for Beginners
Published in: Jul 2018 Publisher: Packt ISBN-13: 9781789537406
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}