Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 7 additions & 5 deletions ERCS/erc-7846.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ created: 2024-12-15

## Abstract

This ERC introduces a new wallet connection JSON-RPC method focused on extensibility. It leverages the modular capabilities approach defined in [ERC-5792](https://eips.ethereum.org/EIPS/eip-5792#wallet_getcapabilities) to streamline connections and authentication into a single interaction.
This ERC introduces a new wallet connection JSON-RPC method focused on extensibility, `wallet_connect`. It leverages the modular capabilities approach defined in [ERC-5792](https://eips.ethereum.org/EIPS/eip-5792#wallet_getcapabilities) to streamline connections and authentication into a single interaction.

## Motivation

Expand All @@ -22,6 +22,8 @@ This is especially evident in the case of attempting to batch connection with au

## Specification

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 and RFC 8174.

### JSON-RPC Methods

#### `wallet_connect`
Expand Down Expand Up @@ -93,7 +95,7 @@ const response = await provider.request({

Disconnects connected account(s).

- The wallet SHOULD revoke any capabilities associated with the account(s) that were granted upon connection via `wallet_connect`.
- The wallet SHOULD revoke access to the user account(s) information, as well as to any capabilities associated with them that were granted upon connection via `wallet_connect`.

##### Request

Expand All @@ -115,13 +117,13 @@ await provider.request({

#### `signInWithEthereum`

Adds support for offchain authentication using [ERC-4361: Sign-In with Ethereum](https://eips.ethereum.org/EIPS/eip-4361).
Adds support for offchain authentication using [ERC-4361](./eip-4361.md).

##### Parameters

Same as ERC-4361 specification with minor modifications:
* The casing of multi-word fields has been adjusted to camelCase instead of kebab-case. Resources are an array field.
* The account address returned by `wallet_connect` MUST match the address inferred in the SIWE message.
* The account address returned by `wallet_connect` MUST match the address inferred in the Sign-In with Ethereum (SIWE) message.
* `version` is optional and defaults to an accepted version defined in ERC-4361 if not provided.
* `domain` is optional and defaults to the domain of the requesting app if not provided.
* `uri` is optional and defaults to the uri of the requesting app if not provided.
Expand Down Expand Up @@ -230,4 +232,4 @@ Wallet addresses and any shared capabilities must be handled securely to avoid d

## Copyright

Copyright and related rights waived via CC0.
Copyright and related rights waived via [CC0](../LICENSE.md).