what does it do?

  • receive money and store it self custody, using passkeys but never interacting with a wallet
  • ability to send that money elsewhere aka sign transactions
  • receive money from anywhere as well
  • have email recovery so that money is never lost

stream:

  • experiment: https://warpcast.com/segall/0x52de13 but for solana
    • embedded wallets with byow onboarding
    • account abstraction
    • todo: stalk the current mobile experience on solana, find if embedded wallets exist, see how they’ve made it, and CLONE and IMPROVISE!!!

try creating your own account abstraction using passkey

small proof of concept to make it possible to interact onchain with a stored passkey


kind of relevant? session keys w gum

29 Nov 23 12:48 am:

was looking at squads protocol, that’s not what im looking for either they’re only doing multisig and are focused purely on that, even for the protocol

who is even doing account abstraction on solana bro?

there was this one app bunkr, but it seems like they shut down / discontinued service, their demo doesnt work and they’re extremely small


a lot of people are trying to build on solana passkeys rn and all of them have more experience than me but imma keep going

https://github.com/jordaaash/solana-passkeys

https://www.turnkey.com/ https://passkeys.is/

this jordan guy and icarus something got some hype since big players in the game, but i cant find it

ok they’re in stealth coming up with something big wrt solana passkeys


okay now im going to do a lot of grokking and try to get this basic basic mvp running

  • open that solana-passkeys and see how they work, test it out - done
  • passkey auth on a normal app using some lib, see how that lib works maybe
  • creating solana user account programatically - done kind of
  • linking passkeys and solana accounts and trying to create transactions from that - done

turnkey: private key management? why is it even necessary

simple api to generate private keys and sign txns securely… hmm

(im trying to get the repo working)

the repo works well

signed in with passkeys, signed and send txns without EVER opening my wallet

but the passkey kind of became my wallet, the only issue i see here is that turnkey

it’s 25 cents for every signature 😮 WHICH IS A LOT


ive deduced something after talking to orion ( the guy who built bunkr passkey demo ) and testing out solana-passkeys

can we really store keypairs inside of passkeys and retrieve them? ( this is dangerous )

okay bunkr basically uses this as a second layer of authentication

so on top of your private key.. you will have to have your passkey as well

concern:


the current way to use passkeys with solana is by trusting a 3rd party to manage keys safely for you

like turnkey and you authorize user via the passkey

this is not ideal

but kind of the conclusion of the arena rn


i wanna spend one more day going a bit more into two things

passkey creation and usage solana keypair creation and usage

if i understand these two, i’ll be able to figure out next steps wrt solana and passkeys


ok to build some momentum going to build this:

a flowchart and ui mockups for a payment type app

  1. login screen where i can login by creating / using an existing passkey and also setting a username
  2. home screen where i can see balance, a receive button and send button
    • receive button lets me copy a link onto my clipboard
    • send button takes me to send money page
  3. send money page lets me enter a number, and recipient ( username ) and a send button
  4. payment link page, show login if user not logged in alr, if yes, allow them to send any amount of money after verifying their passkey
  5. success page / modal for every successful action

  • the functionality you gotta add is:
    • nextjs server instead of golang
    • port to solana
    • mobile support
    • unique usernames instead of email
    • add payment links

the point of building this, is to build an app which makes the following possilbe

i just need to create sub orgs, and not sign txns- only sign txns if they want to take money out, in which case can just charge them 0.25 extra lol - platform costs

simple