Live data from Hacker News

Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

hedgehog.audius.co

21–30 of 57 posts

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#21
post #5

Hey all - I'm Roneil, one of the cofounders of Audius. We built Hedgehog to solve a specific pain point we faced - how can we get non crypto-native / non-technical users to sign up for a decentralized app? Current onboarding flows using Metamask and other alternatives were too cumbersome, time-consuming, and restrictive for our needs. We needed a way to generate a wallet on behalf of a user without them even knowing…

Hi Roneil

It looks very cool. Just skimming the documentation, there isn't anything on how to perform actual wallet functions, or whether encrypt/decrypt data using public/private keys is available (which is something I'd find super useful!). Am I missing it, or is it just a matter of looking through the code?

Thanks for making something as cool as this open source!

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#22
post #19

Earlier quoted context omitted.

Has there been any thought as to how the REST API + database side of this could be replaced with ipfs/swarm? I'm not sure how it would work, and there would likely be additional trade-offs, but it would be nice if the "D" in DApps could be retained in full.

There has! This could be a great approach - eg. a network of folks committed to supporting users in this manner could operate IPFS nodes that re-pin the encrypted keys. We are also thinking about offline ways to share the key such that the centralized side is not required - eg. a QR code displayed on one device and scanned by another to propagate the wallet. This creates a problem if a user loses all of their devices…

Nice!

I'm part of the team that develops the Embark Framework and it would be awesome to rehash our decentralized Reddit tutorial using a fully decentralized Hedgehog.

https://embark.status.im/news/2019/02/04/building-a-decentra...

As for the QR code getting lost, that's a good point, but the user could always be encouraged to make a physical copy and keep it in a desk drawer, and/or store it electronically somewhere else (e.g. Dropbox or 1Password) "just in case".

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#23
post #19

Earlier quoted context omitted.

There has! This could be a great approach - eg. a network of folks committed to supporting users in this manner could operate IPFS nodes that re-pin the encrypted keys. We are also thinking about offline ways to share the key such that the centralized side is not required - eg. a QR code displayed on one device and scanned by another to propagate the wallet. This creates a problem if a user loses all of their devices…

Nice! I'm part of the team that develops the Embark Framework and it would be awesome to rehash our decentralized Reddit tutorial using a fully decentralized Hedgehog. https://embark.status.im/news/2019/02/04/building-a-decentra... As for the QR code getting lost, that's a good point, but the user could always be encouraged to make a physical copy and keep it in a desk drawer, and/or store it electronically somewhere…

+1

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#24
post #20
post #16

I guess you can't change your password (while keeping the same private key), can you?

You can! This would re-encrypt your locally decrypted wallet seed using the new credential and store it under the newly generated lookup key

If old pw is considered leaked, new seed must be generated as well. Leaked password is the main reason why users would change passwords.

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#25
post #21
post #5

Hey all - I'm Roneil, one of the cofounders of Audius. We built Hedgehog to solve a specific pain point we faced - how can we get non crypto-native / non-technical users to sign up for a decentralized app? Current onboarding flows using Metamask and other alternatives were too cumbersome, time-consuming, and restrictive for our needs. We needed a way to generate a wallet on behalf of a user without them even knowing…

Hi Roneil It looks very cool. Just skimming the documentation, there isn't anything on how to perform actual wallet functions, or whether encrypt/decrypt data using public/private keys is available (which is something I'd find super useful!). Am I missing it, or is it just a matter of looking through the code? Thanks for making something as cool as this open source!

Thanks for checking out Hedgehog!

This was documented only indirectly - we should add a specific note / example for this. The model here is that the ethereumjs-wallet object returned by Hedgehog (eg. by getWallet https://audiusproject.github.io/hedgehog-docs/#getwallet ) follows this API https://github.com/ethereumjs/ethereumjs-wallet which, when used in tandem with this package https://github.com/ethereumjs/ethereumjs-tx can do everything a normal Ethereum wallet would.

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#26
post #5

Hey all - I'm Roneil, one of the cofounders of Audius. We built Hedgehog to solve a specific pain point we faced - how can we get non crypto-native / non-technical users to sign up for a decentralized app? Current onboarding flows using Metamask and other alternatives were too cumbersome, time-consuming, and restrictive for our needs. We needed a way to generate a wallet on behalf of a user without them even knowing…

That is fantastic! Any way to integrate other chains?

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#27
post #5

Hey all - I'm Roneil, one of the cofounders of Audius. We built Hedgehog to solve a specific pain point we faced - how can we get non crypto-native / non-technical users to sign up for a decentralized app? Current onboarding flows using Metamask and other alternatives were too cumbersome, time-consuming, and restrictive for our needs. We needed a way to generate a wallet on behalf of a user without them even knowing…

Awesome work, and it's great to see more tools in this important area.

How do you handle the "Forgot Password" problem?

Say, if a user clears out local storage and forgets their password. Is there a way to recover it from what's stored on the server?

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#28
post #5

Hey all - I'm Roneil, one of the cofounders of Audius. We built Hedgehog to solve a specific pain point we faced - how can we get non crypto-native / non-technical users to sign up for a decentralized app? Current onboarding flows using Metamask and other alternatives were too cumbersome, time-consuming, and restrictive for our needs. We needed a way to generate a wallet on behalf of a user without them even knowing…

Awesome work, and it's great to see more tools in this important area. How do you handle the "Forgot Password" problem? Say, if a user clears out local storage and forgets their password. Is there a way to recover it from what's stored on the server?

Great question - see my response to "atomical" in this thread for more detail, but short answer is no. Thanks for checking out Hedgehog!

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#29
post #5

Hey all - I'm Roneil, one of the cofounders of Audius. We built Hedgehog to solve a specific pain point we faced - how can we get non crypto-native / non-technical users to sign up for a decentralized app? Current onboarding flows using Metamask and other alternatives were too cumbersome, time-consuming, and restrictive for our needs. We needed a way to generate a wallet on behalf of a user without them even knowing…

Very cool, glad to see people tackling Ethereum UX! Your project seems similar to the Burner Wallet by Austin Griffith: https://github.com/austintgriffith/burner-wallet

Assuming you've seen that project, how does Hedgehog compare?

Do you have recommendations on handling the initial funding of a wallet, especially for your target market of non-technical users? (after they have the wallet, how do they obtain ETH or other tokens to get started?)

Re: Hedgehog Ethereum wallet: Build DApps like apps, without centralized keys

#30
post #26
post #5

Hey all - I'm Roneil, one of the cofounders of Audius. We built Hedgehog to solve a specific pain point we faced - how can we get non crypto-native / non-technical users to sign up for a decentralized app? Current onboarding flows using Metamask and other alternatives were too cumbersome, time-consuming, and restrictive for our needs. We needed a way to generate a wallet on behalf of a user without them even knowing…

That is fantastic! Any way to integrate other chains?

Right now Hedgehog is specific to the Ethereum account model (eg. POA network and others use this too), but there's no reason the approach couldn't be extended to work with other chains.

Here's the key section of code that makes this Ethereum-specific: https://github.com/AudiusProject/hedgehog/blob/master/src/au...

You could replace the use of 'ethereumjs-wallet/hdkey' with any other chain wallet library if it is compatible with the BIP-39 style HDWallet structure. Bitcoin and many other blockchains have compatible libraries that could be substituted easily!

Post reply on HN