ethereum / ethereum-org-website

Ethereum.org is a primary online resource for the Ethereum community.
https://ethereum.org/
MIT License
4.9k stars 4.67k forks source link

Add security filters to the "Find wallet" page #13144

Open matiassequeira opened 3 weeks ago

matiassequeira commented 3 weeks ago

Is your feature request related to a problem? Please describe.

The current comparisons between wallets regarding security are limited to two variables: Open Source and Personal Ownership. Given the importance of security in managing crypto assets, a more comprehensive comparison is necessary to help users evaluate and make informed decisions.

Several months ago, Coinspect initiated an investigation into web3 wallets. After identifying various bugs in over 40 wallets and releasing a security checklist designed for wallet developers, we put together a checklist prioritizing the protection of users from phishing attacks and malicious DApps, as mentioned in this blogpost. We currently have a set of 30 checks for browser extension wallets and over 30 checks for mobile wallets, categorized into sections such as DApp Access Control, Local Access Control, Censorship Resistance, etc.

Along with this, we are developing software to aid the testing process, which will inherently contribute to a more objective and traceable assessment.

Although we plan to publish the results on a dedicated website, following discussions with the ethereum.org team, we agreed it would be beneficial to integrate this information into the Find a Wallet page on their site.

Describe the solution you'd like

Given that the current design does not directly support the display of numeric values (i.e. score, ranking), we suggest incorporating additional categories to the 'Security' filters, which users could toggle.

We propose adding the following categories:

To determine which wallets will 'pass' each category, we propose considering those that ranked above the median value for the category.

Below we provide an example of how these categories/filters would look as toggle buttons on the wallets’ site:

image (5)

Describe alternatives you've considered

As previously mentioned, we have adapted the information we had, in the form of rankings, to the current design of the ethereum.org website. This approach allows us to avoid major modifications to the current web site while providing user-friendly value. We will maintain an independent website with detailed information e for those curious and interested in learning more about it.

Additional context

Here are the current test results for the extension wallets listed on the ethereum.org wallets page. They are ranked from the top performers in each category to those with opportunities for improvement. image

Would you like to work on this issue?

wackerow commented 2 weeks ago

Hey @matiassequeira, really appreciate your post and ideas. Personally agree with much of what is proposed here as I'd love to offer more in terms of security options.

So you're proposing using the data collected from the Coinspect investigation? How do we see this data being maintained over time? How would we account for wallets that are not in this data set?

@konopkja Any thoughts on this potentially making things overly complex for users?

matiassequeira commented 2 weeks ago

Hi @wackerow, glad you liked it!

To answer your questions, we'll use the data we collected and keep it updated. We can commit to periodically testing a maximum number of wallets and establish clear criteria for accepting new ones for testing.

Regarding UI complexity, we can alternatively add only one security category, such as "Security Score Above X" instead of all those new filters we proposed earlier. In this case, we'll also add a link to a website with all the details about how we calculate the score, including the testing process.

konopkja commented 2 weeks ago

Hello, great to see this initiative here!

On the complexity note: Yeah i think we would prefer merging this into 1 - 3 groups (doesnt have to be just one, but also can be if it makes sense).

Re numeric value: We can tweak the designs so that this value is prominently visible on each listing if the community agrees on this improvement!

Question I think right now this audit is focusing on subset of wallets on our page, which is already super helpful, but woudl it be possible to extend it to all walets? If not it may require a more subtle design choice i think

wackerow commented 1 week ago

I think right now this audit is focusing on subset of wallets on our page, which is already super helpful, but would it be possible to extend it to all wallets?

@matiassequeira Curious your thoughts on this. How often were you thinking about testing/reviewing these wallets? And were their any criteria you used to determine the initial set of wallets you investigated?

I think this would be a great addition, but just want us to be aware we'd be introducing a new dependency.

matiassequeira commented 1 week ago

I think right now this audit is focusing on subset of wallets on our page, which is already super helpful, but woudl it be possible to extend it to all walets?

@konopkja We have already covered all the EVM-compatible browser extension wallets listed on ethereum.org. We are currently working on the rest of the mobile wallets (iOS and Android), and the results should soon be ready. So yes, we will test all the wallets listed on ethereum.org site.

How often were you thinking about testing/reviewing these wallets? And were their any criteria you used to determine the initial set of wallets you investigated?

@wackerow We definitely plan to periodically re-review the wallets. Our current goal is to retest once per quarter as long as the number of wallets remains manageable by our team. Additionally, as mentioned above, the scope was set to be all the wallets listed on ethereum.org, although we could include more in future iterations.