This is cool, but again, the problem with new solutions like this one and Polkadot Vault (which is great!) is that tons of people already use Ledgers and aren’t eager to have a separate hardware device. I use a Ledger myself, and I’d strongly prefer to be able to use it with Polkadot/Kusama ecosystem tokens since I already use it for BTC, ETH, and others.
Tons of people used to use Blackberries until Apple/Android phones came along. I got tired of the stress of needing to update my Ledger app and lost faith this year.
Yes, I think for people like you, Polkadot Vault (or the Gameboy solution) are great. But the ecosystem needs Ledger support since it’s very widely adopted and most people want to use a single hardware solution for their various assets.
I personally also think that ledger is a legacy device that was build for static blockchains (BTC). However, for the path forward we did not sacrifice anything and proposed the best technical solution to the current problem. The ledger app will also not require frequent updates anymore, at least this is the plan. So, we will have a way to onboard the people using ledger devices.
It looks cool. However, this is a solution for nerds and not more. You want to give your grandmother a Gameboy to let her generate a seed? How would you sign transactions with this?
For sure it would be cool to play around with this, but that is nothing for a greater audience.
You are right, I am expecting signing with a full display over a USB connection. Seed generation alone is lame, a wallet that doesn’t sign extrinsics/txs is a fancy piece of paper.
“When something is described as a toy, that means it has everything an idea needs except being important. It’s cool; users love it; it just doesn’t matter. But if you’re living in the future and you build something cool that users love, it may matter more than outsiders think.” - Paul Graham
Well the Bybit hack is bringing a lot of (justifed) negative attention to blind signing right now. Really great that Polkadot’s Ledger App doesn’t enable it by default.
As the conversation is shifting a bit … My bet is to NOT bet on Ledger or hardware wallets*, but instead on passkeys
That’s why we created pallet-pass
that in a similar way to pure proxies it manages a key-less account controlled in this case by “devices”(just passkeys initially), this already makes a blockchain way more accessible as it becomes “wallet-less” and gives us a wide spectrum of security options based on user preferences. Most people won’t buy a hardware wallet but will have a device with a WebAuthN compatible authenticator, this is already arguably better than a browser extension or mobile wallet backing up keys in Google drive. As the user gets more security minded they can do more advanced stuff like adding more devices(e.g. a YubiKey or similar), recovery mechanisms or have user defined filters for each device that a compatible passkey could use to make UX better … compatible passkey is the interesting bit here and now that we are talking about custom developments and other devices:
*Let’s build a blockchain aware passkey! 99% of common users sign stuff without verifying what they are signing so a regular authenticator is already good enough for most use cases(even if you blind sign the chain can reject a blacklisted transaction). But us nerd…em…security minded people can have a passkey(virtual or physical) that can still be used to authenticate with our mail/github/etc, but when detecting the payload is a blockchain transaction it can give us the extra details we need.
Is it only me excited about it? I will eventually work on this and bring it to Kusama, but it’s de-prioritized for now along with related side projects like a simple signing ring that would flask a red led if not signing specific extrinsics(e.g. payment of X USD or less). As hardware is hard I will probably not go beyond the ring PoC(or other piece of rustic jewelry) and instead focus on software/firmware(porting our VirtoOS) for existing devices, e.g. a desktop/mobile app that implements a vitual CTAP2 device(the low level transport protocol browsers use), the many esp32 based devices I have like an inexpensive watch, some risc-v boards, my flipper zero or even an implant
As Polkadot technology evolves, authentication solutions like this one would also evolve, we are already looking into supporting transaction extensions, “ZK-fying” the passkey verification plus other social logins and also got some ideas on how to bring this authentication system(via VirtoOS) to JAM
Is the “key-less account” here the same as what was proposed/canvased here (AIP-61):
Not the same, but can yield the same results. I’d say it’s more general and with more options? e.g. we can have multiple kinds of “authenticators”, one is the pass-key authenticator, others can be similar to what you linked using oauth + zk.
For example, zkLogin allows proving ownership over a Google/Apple account, the concept looks similar to the AIP. That was developed with Noir and it happens that I’m working on bringing Noir zk contracts to Kusama in the form of an ink-like dialect called zink!
(there’s also wink!
, but that’s for another story), this development would include having ways to verify Noir generated proofs on Substrate chains, including zkLogin’s that we can further integrate as an authentication option in pallet-pass
.