AlertSourceDiscuss
Skip to content

ERC-831: URI Format for Ethereum

A way of creating Ethereum URIs for various use-cases.

🚧 StagnantERC

Stagnant

This EIP has had no recent activity for at least 6 months, and has automatically been marked as stagnant. This EIP should not be used in production.

If you are interested in helping move this EIP to final, create a PR to move this EIP back to Draft and add yourself as an author, and an EIP editor will help guide you through the process. Thank you!

Authorsligi (@ligi)
Created2018-01-15

Abstract ​

URIs embedded in QR-codes, hyperlinks in web-pages, emails or chat messages provide for robust cross-application signaling between very loosely coupled applications. A standardized URI format allows for instant invocation of the user's preferred wallet application.

Specification ​

Syntax ​

Ethereum URIs contain "ethereum" or "eth" in their schema (protocol) part and are constructed as follows:

request                 = "eth" [ "ereum" ] ":" [ prefix "-" ] payload
prefix                  = STRING
payload                 = STRING

Semantics ​

prefix is optional and defines the use-case for this URI. If no prefix is given: "pay-" is assumed to be concise and ensure backward compatibility to EIP-67. When the prefix is omitted, the payload must start with 0x. Also prefixes must not start with 0x. So starting with 0x can be used as a clear signal that there is no prefix.

payload is mandatory and the content depends on the prefix. Structuring of the content is defined in the ERC for the specific use-case and not in the scope of this document. One example is EIP-681 for the pay- prefix.

Rationale ​

The need for this ERC emerged when refining EIP-681. We need a container that does not carry the weight of the use-cases. EIP-67 was the first attempt on defining Ethereum-URIs. This ERC tries to keep backward compatibility and not break existing things. This means EIP-67 URIs should still be valid and readable. Only if the prefix feature is used, EIP-67 parsers might break. No way was seen to avoid this and innovate on the same time. This is also the reason this open prefix approach was chosen to being able to adopt to future use-cases and not block the whole "ethereum:" scheme for a limited set of use-cases that existed at the time of writing this.

Security Considerations ​

There are no known security considerations at this time.

Copyright and related rights waived via CC0.

Citation

Please cite this document as:

ligi, "ERC-831: URI Format for Ethereum[DRAFT]," Ethereum Improvement Proposals, no. 831, 2018. [Online serial]. Available: https://eips.ethereum.org/EIPS/eip-831.