Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ProjectTracking]: Eth wallet support #7

Closed
walnut-the-cat opened this issue Nov 30, 2023 · 6 comments
Closed

[ProjectTracking]: Eth wallet support #7

walnut-the-cat opened this issue Nov 30, 2023 · 6 comments
Assignees

Comments

@walnut-the-cat
Copy link

walnut-the-cat commented Nov 30, 2023

Goals

What is the project trying to achieve?

We want the NEAR Protocol's ecosystem to be closer with Ethereum by integrating Web3 wallet support. To accomplish that, some changes on the protocol level are needed with an emphasis on user experience continuity.

Why should the Near One team work on this project?

Currently, the Ethereum ecosystem is a leading force in the smart contract blockchain space, boasting a large user base and extensive installations of Ethereum-compatible tooling and wallets. However, a significant challenge arises due to the incompatibility of these tools and wallets with NEAR Protocol. This incompatibility necessitates a complete onboarding process for users to interact with NEAR contracts and accounts, leading to confusion, decreased adoption, and the marginalization of NEAR Protocol.

How does it improve the NEAR protocol?

Implementing Web3 wallet support in NEAR Protocol, with an emphasis on user experience continuity, would significantly benefit the entire NEAR Ecosystem. It enhances NEAR's interoperability with Ethereum, significantly improving accessibility and user experience for a broader audience in the blockchain community.

What needs to be accomplished?

Please refer to NEP-518.

Following the design, the main change on the protocol level would be to have ETH-style addresses managed by a new Wallet Contract integrated into the protocol.
For seamless onboarding of EVM users, the contract will be free of charge.

Links to external documentations and discussions

Estimated effort

  • [T-core, T-contract-runtime] Estimated time by which teams in Near One will need to contribute to this project (engineering time) is the end of 2023.
  • [T-core, T-Aurora] Estimated time to finish the project (release time) is the end of Q1 2024, and will involve auditing the Wallet Contract.
  • [T-Aurora, T-integrations] Estimated time to fully deliver the project (out of Near One scope) is past Q1 2024, as it involves a lot of integration, instructing validators, users, etc.

Assumptions

  • Some RPC nodes will have to host RPC-Translator (to provide Ethereum methods implementations using the NEAR RPC as a data source) and a Transaction Relayer that embeds Ethereum-compatible transactions into a NEAR transaction and forwards it to the user’s Wallet Contract.

Pre-requisites

Out of scope

Just the protocol level changes for ETH Wallet support are part of this project. Things that are out of scope of this repository (e.g. RPC-Translator) are out of scope of this project and are owned by the Aurora team.

@walnut-the-cat
Copy link
Author

walnut-the-cat commented Nov 30, 2023

  • Implementation for Eth-implicit addresses support is complete according to the new design
  • we want to treat Wallet Contract specially and not deploy it directly (a PR for that is in progress)
  • The implementation of Wallet Contract is on the Aurora side, they will likely make it till the early January, after some paper work is finished.
  • NEP is under draft, after some discussions it looks it won’t change.

@staffik
Copy link

staffik commented Dec 13, 2023

December 18th status update

  • The PR to treat the Wallet Contract specially is under review.
  • We might want to add support for the Mirror tool and some Nayduck tests.
  • There is nothing more we can do before the real Wallet Contract is ready.
  • Due to the reason above, the project will be paused from Protocol side until things are unblocked.

@staffik
Copy link

staffik commented Dec 19, 2023

December 19th status update

  • In December we did Wallet Contract placeholder. That finishes protocol changes for this project. As a follow up PR, we want to make small operational changes:
    • Include wallet-contract crate to the workspace (blocked by near-sdk having vulnerable dependencies).
    • Use Docker container instead of cargo build command to generate WASM file.
  • The above should be implemented this week, but waiting for new near-sdk version to be released.

@staffik
Copy link

staffik commented Jan 11, 2024

January 11th status update

  • All the protocol changes are merged, needs some tooling related follow-up PRs:
    • generating WASM file using NEAR docker container
    • including the wallet contract into the workspace, so that the linting works there
    • making sure the mirror tool works well
  • Waiting for the real Wallet Contract implementation but nothing happened on the Aurora side yet.
  • Project is currently on hold on the Protocol side, will update in 1 month if anything changes.

@staffik
Copy link

staffik commented Feb 5, 2024

2024 February 5th status update

  • nothing happened, waiting for the Aurora part, will have a sync this month

@walnut-the-cat walnut-the-cat moved this from In Progress to Prioritised in Near One project tracking Feb 8, 2024
@walnut-the-cat walnut-the-cat moved this from Prioritised to Done in Near One project tracking Feb 8, 2024
@walnut-the-cat
Copy link
Author

Will mark it as Done/completed for now. If there are additional works needed from our end, we can create another project to track the progress (e.g. Eth wallet support part 2)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

2 participants