Skip to content
Jasper den Ouden edited this page Jun 27, 2014 · 6 revisions

Ethereum Browser

In Ethereum the idea is to have a browser that have an API interface to the Ethereum state. In essence websites, using HTML, CSS and JS could make user interfaces. There are some security concerns there still needing addressing, like where these files come from and who gets access to data when that happens, also what the javascript does in that regard.(current web being terrible with this regard)

Another security instance is misleading pages that do not represent the Transactions that are sent well.(for instance this issue at cpp-ethereum)

The issue with an Ethereum browser is that it is hard to get a lot of people to change browser. On the other hand, they only need to do so for when they want to do the transaction, but nontheless. Alternatives are:

  • Running a program that acts as local server, and then pointing your browser at it. I think an early example, is c3d of projectdouglas.

    This can either include the JS Ethereum bindings via XMLHttpRequest, or add scripting at the server-side. There are advantages and disadvantages to both.

  • Getting existing browsers to support Ethereum. The big disadvantage is that people might passively get a node, and may be passive about changing their software. This is very problematic for hard forks, or even hostile attempts at this.

  • Making a addon. This has less of a pro-activity issue.

  • Having people talk to servers with pubkey encryption, and checking that it is those pubkeys being used on Ethereum too. (No MITM between people and Ethereum!)

I reckon anything that doesnt ultimately give power over their things, like web wallets are bad.

Browser 'as an OS'

For instance Firefox OS is this. This doubles things up unnecessarily, in a sense, but the reason it is interesting is that it gives people standard APIs that are complete. HTML/CSS/JS is a nice, and well-known way to make interfaces. Ethereum provides functionality that doesnt exist yet; -the consensus system-, it could provide tools for other decentralized communication. Both as in sockets, and magnet-link like system.(as called whisper and swarm here, or see here) It also provides the opertunity for it to not be a walled garden.

An additional advantage of 'browser as OS' is that web pages can interact with programs more smoothly. It could even be a smooth transition between 'apps' and websites/pages, with a permissions system. I reckon that apps that cannot be walled in(security wise) well need a release schedual so things actually stand a shot of getting reviewed before release.

Programs can talk to Ethereum too

This is worth a mention, and it is perfectly fine if people use some other program to send transactions.

Clone this wiki locally