Since this proposal is lised on Ethereum.org now. we don't modify content here anymore. If you'd like to read the latest one, please visit: https://eips.ethereum.org/EIPS/eip-2569
eip | title | author | discussions-to | status | type | category | created |
---|---|---|---|---|---|---|---|
2569 |
Saving and Displaying Image Onchain for Universal Tokens |
Hua Zhang (@dgczhh), Yuefei Tan (@whtyfhas), Derek Zhou (@zhous) |
Here 😁 |
Draft |
Standards Track |
ERC |
2020-03-28 |
Simple Summary
A set of interfaces to save an SVG image in Ethereum, and to retrieve the image file from Ethereum for universal tokens.
Read more: EIP-2569: Saving and Displaying Image Onchain for Universal Tokens
Our team is going to submit another EIP to improve ETH 2.0 Staking. Welcome to join us:
naturaldao.io/en/project/eip2794.html
Note: This is obviously not a EIP yet, It's a doc for discussion.
We have almost finished the smart contract: https://github.com/DAism2019/EtherDAO
And a emulator to help people to understand this proposal: https://naturaldao.io/emulator/
Simple Summary
We propose a new staking protocol with an honor system to replace ETH 2.0's staking mechanism in which a node must stake 32 ETHs to be a validator and thus expose ETH 2.0 to extremely high risks. This proposal will bring strong and reliable security to ETH 2.0's staking.
Motivation (Risk Analysis)
According to the latest released specifications of ETH 2.0, phase 0 needs to be activated by at least 16,384 nodes and this will lock at least 524288 ETHs till phase 1. In additon Ethereum's outshining potentials and future will undoubtedly attract more people to do this staking and cause more ETHs to be locked. Furthermore the ETH 2.0 Economics section in the official document "Ethereum Roadmap" discusses Staking Rewards from one million validators to 0ne hundred million and if this comes true a large amount of ETHs will be locked. All these factors will very likely drive ETH's price dramatically up.
As a rule of thumb, if ETH's price rises by ten times or has a hike like what happened in 2017, ETH 2.0's validators will be tempted to sell ETHs for fiat currencies or stable coin and it will be a huge financial burden for people who want to join staking. When this happens, on one hand a large number of existing validators will perform an exit, and on the other hand interested people who want to stake may not be able to afford the expensive cost. The consequence will be that ETH 2.0's security and reliability will be hit hardly.
Read more: EIP-2794: Improved Mechanism for ETH 2.0 Staking
WRITTEN BY DEREK ZHOU (https://twitter.com/Derek_Joe_China)
PROOFED BY : YUEFEI TAN
The first real ERC-721 asset on Ethereum
Let's take a look at a collaborative souvenir (Commemoratiove NaturalDAO Token) we have saved with the Ethereum Smart Contract:
What innovation does it have?
ERC721 Token, picture, and text are all coded in an Ethereum smart contract! It is probably the first true non-fungible blockchain asset. Cryptokitties is not a real blockchain asset, because the cat pictures are all kept off-chain.
The format of Commemoratiove NaturalDAO Token's picture is SVG (Scalable Vector Graphics)。SVG is a language for describing two-dimensional graphics in XML [XML10, XML11]. SVG allows for three types of graphic objects: vector graphic shapes (e.g., paths consisting of straight lines and curves), multimedia (such as raster images, video, and audio), and text. Graphical objects can be grouped, styled, transformed and composited into previously rendered objects.
The main reason for adopting an SVG image is that it is written in XML language code, and the code can be saved directly in a smart contract.
Special tags of Commemorative NaturalDAO Token:
<description>This ia a medal of honor awards from Alpha Test of NaturalDAO.</description>
<honoree class="thonoree">Alpha Tester</honoree>
<ARTIST>Tung Sau Chun Queena</ARTIST>
You can learn about its technical specifications through the W3C: Scalable Vector Graphics (SVG) Tiny 1.2 Specification.
Another technology similar to SVG is Canvas. Canvas even has its own game engine: playcanvas.
Inspiration
So what do they inspire me about the data storage of blockchain?
- Images and even entire games could be stored in smart contracts in readable code, which protects the rights of designers and owners and ensures the transparency of an NFT. Because starting with Bitcoin, a blockchain Token is already be developed as anonymous. Lets say no one knows exactly which address belongs to you. If Satoshi Nakamoto really lost his private key, then there would be no way around the world to confirm whether James Bilal Khalid Caan is Nakamoto Satoshi himself. So I personally don't think blockchain has the traditional concept of privacy and copyright, becauseNothing relies on human's ID. And everything is only associated with a private key, which would never be exposed.
The more important thing is ownership, control (for usage) , profit and transparency of data.
If you convert an image into SVG, you could permanently save its ownership, usage rights, and profit rights in a smart contract, while all of them will absolutely be uncontroversial. At the same time, its accessibility(readability, recreativity, retrieve/searchability) can be guaranteed. The reason I use SVG instead of Canvas to design Commemorative NaturalDAO Token is because its source code has better accessibility. And the accessibility (especially readability and searchability) combined with the openness and transparency of the smart contract can better ensure the reliability of the ERC-721 token, better open collaboration and so on. - It is a solution for data storage, IPFS is no longer needed.
Both SVG and Canvas can be stored in smart contract. Compared to IPFS storage, the advantages are:- It doesn't require Proof-of-Storage
IPFS requires proof-of-storage, it must have a way to prove that stored data is still intact at all times. We can imagine how hard it would be! But we all know that transaction data in Ethereum does not require proof of storage because of the reliable consensus and numerous storage nodes. - Expand the application scope of Ethereum
Ethereum can be used for storage through shading innovation. We can find ways to assign different tasks to different shards. For example, shard A stores images (SVG and Canvas), and shard B stores video. The storage fee per byte for different types of shards varies.
If we delve into it, we should be able to improve this storage technology. - Enrich its applications through innovations and more efficient means.
For example, they can embed smart contracts. As they are now interactive, we can extend them to smart contract interactive. This will undoubtedly greatly expand their application value.
In addition, XML has rich use case scenarios, such as support for multi-language automatic switching (even a unified multi-language library for the entire blockchain field), and its own scalability.
- It doesn't require Proof-of-Storage
- Standardization
Ethereum's distributed storage is extremely high in repetition rate, and waste of resources is serious, but SVG can save images in the form of raw materials or standards, and text content can be saved in another contract. In this way, the reuse rate of image will be greatly improved. For example, we can define a certain blockchain standard medal, and publish it as an open source. As you can imagine, I am not only applying it to virtual NFT assets, but this model can also be extended to industrial design. - They are derivable data
SVG supports CSS style sheets. If we put the CSS file off-chain, the work becomes arbitrarily derivable.
Similarly, using Javascript can also customize, by anybody, the items in an HTML5 Canvas game.
Of course, derivatives can also be made on the Ethereum by using smart contracts. - Can we build a self-organized Picture System, or Chaos Picture System? Because such a derivative is creative through some simple rules, coupled with Turing's complete smart contract, which can adapt to feedbacks . The whole thing is creative. And it may also naturally undergo evolution. The laws of evolution of everything in the world apply equally to it.