Skip to content

Commit

Permalink
Update EIP-6963: Add RDNS section for motivation and requirements
Browse files Browse the repository at this point in the history
Merged by EIP-Bot.
  • Loading branch information
everdimension committed Sep 25, 2023
1 parent b3a296e commit 58f3c8c
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions EIPS/eip-6963.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,16 @@ data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12

The `icon` string MUST be a data URI as defined in [RFC-2397]. The image SHOULD be squared with 96x96px minimum resolution. The image format is RECOMMENDED to be either lossless or vector based such as PNG, WebP or SVG to make the image easy to render on the DApp. Since SVG images can execute Javascript, applications and libraries MUST render SVG images using the `<img>` tag to ensure no untrusted Javascript execution can occur.

#### RDNS

The **`rdns`** (Reverse-DNS) property serves to provide an identifier which DApps can rely on to be stable between sessions. The Reverse Domain Name Notation is chosen to prevent namespace collisions.
The Reverse-DNS convention implies that the value should start with a reversed DNS domain name controlled by the Provider. The domain name should be followed by a subdomain or a product name. Example: `com.example.MyBrowserWallet`.

- The `rdns` value MUST BE a valid [RFC-1034] Domain Name;
- The DNS part of the `rdns` value SHOULD BE an active domain controlled by the Provider;
- DApps MAY reject the Providers which do not follow the Reverse-DNS convention correctly;
- DApps SHOULD NOT use the `rnds` value for feature detection as these are self-attested and prone to impersonation or bad incentives without an additional verification mechanism; feature-discovery and verification are both out of scope of this interface specification.

### Provider Detail

The `EIP6963ProviderDetail` is used as a composition interface to announce a Wallet Provider and related metadata about the Wallet Provider. The `EIP6963ProviderDetail` MUST contain an `info` property of type `EIP6963ProviderInfo` and a `provider` property of type `EIP1193Provider` defined by [EIP-1193](./eip-1193.md).
Expand Down Expand Up @@ -257,6 +267,7 @@ One advantage to the concurrency Event loop utilized by this design is that it o
Copyright and related rights waived via [CC0](../LICENSE.md).


[RFC-1034]: https://www.rfc-editor.org/rfc/rfc1034
[RFC-2119]: https://www.rfc-editor.org/rfc/rfc2119
[RFC-2397]: https://www.rfc-editor.org/rfc/rfc2397
[RFC-3986]: https://www.rfc-editor.org/rfc/rfc3986
Expand Down

0 comments on commit 58f3c8c

Please sign in to comment.