IPFS系列 Juan Benet Devcon2 IPFS PPT 分享2

月亮🌛   |     |   1526 次阅读


The important things about JS IPFS is that before with just the go implementation, people just have hesitations about adopting a new protocol for the web before browsers have changed to adopt it. How could you build a website on a new protocol if people would have to install something or an extension or something like that. So we had decided to build a full IPFS implementation in javascript and make it run entirely on the browser. This is a huge undertaking and it is very powerful. It means that web application developers can start building on IPFS without having to rely on any browser change or installation. So you can have a full distributed decentralized web application today with stock browsers. Another major bit of news is that dynamic contents are finally here with IPFS. Previously people have remarked that IPFS is great with static content but they couldn't see how to build real-time dynamic web applications. The distributed decentralized web architecture just fog things up. So this year we decided to implement the pieces needed on top of IPFS to build these kinds of applications. This means a low-latency protocol and a set of libraries for storing and retrieving data that are designed to converge. This means CRDTS (communicative/convergent replicated data types).

We accepted the challenges of taking these distributed data models.

We wanted to build a distributed, peer-to-peer, chat client, capable of working in a local area network without having to connect to the backbone and that is Orbit. You will hear about it later today.

Another news is that a lot of our sub-projects have graduated into their own fullfledged efforts. One of them is multiformats. This is a self describing protocol that is very viable and avoids data lock in and so on. You may be familiar with multi-hash, which allows you to multiplex many different kinds of hash functions, multiaddr, multikey and bunch of others. These are headed for stardarization of at IETF and there are already bunch of groups of people dependening on it. So we decided to create its own organization.

Another of these projects are libp2p. The modular peer-to-peer library.

The last one is IPLD, a thin-waist format for representing merkle chain data structures.

IPLD is the secret sauce for IPFS. It makes the mekle forest possible. It makes possible for you to link from one data structure to another.

What's really interesting for the ethereum community is that soon, not yet, but soon, we will have the ability to natively address ethereum blocks in IPFS. This means you can take ethereum hash and address a block and look into transcations and look into the entire state-trees in IPFS native apps without running a ethereum node or ethereum light client. This is great. This is great for ethereum becuase it extends its reach to all other applications around IPFS. You can hand other applications a reference and they can look it up in IPFS. It is also great for archiving becuase a lot of archival tools are being constructed around IPFS.

The last bit of news is that IPFS projects has been doing a lot of work on package management. IPFS started its life as a data set package manager. So it is naturally pretty useful for this. The community has been putting data set managers on IPFS. There is really good proof of concept. But none of them are quite usable yet. So more work needs to be done. We are going to be working on that over the next coming months. What has happened tho, is that we are able to build new package managers from the scratch directly on IPFS and we have our own GX that we use for GO. So with GX, we can package manage GO package with hashes so that you know the codes are not going to change underneath it. There are other package managers. Dapple is a package manager for ethereum dapps.


1 人喜欢