You had to be trying to log in while I was at a musical theater performance with the family. 😂

Glad you were able to log in. Hopefully nostr:nprofile1qqszw70nm86zcl0wzlcwd0xulzdgl82e95v78vdm6fl0rnlarfle35gpzemhxue69uhhyetvv9ujumn0wd68ytnzv9hxgqg4waehxw309aex2mrp0yhx6mmnw3ezuur4vgq3qamnwvaz7tmwdaehgu3wwa5kuegncs9v7 will have a better NIP-46 signer option for folks on iOS before long.

Reply to this note

Please Login to reply.

Discussion

nostr:npub1dzrlhj48aycgfkny2mn7e6qkgme7w5xa53u75c30atkflrck6fuq7cdjyj Use Nostore for now to sign in with the Safari extension.

To be clear, my priority is building a native signer similar to NIP-55 and also support NIP-07 as an extension. I don’t think a remote signer is the best solution for iOS in this case.

Thanks for the clarification, sir!

Now you have me curious about why NIP-46 isn't a good fit for iOS, though.

I generally think of a phone as the ideal device for NIP-46 signing, since it can more easily act as the one device for all your persinal signing needs.

I agree with nostr:nprofile1qqsf03c2gsmx5ef4c9zmxvlew04gdh7u94afnknp33qvv3c94kvwxgsppemhxue69uhkummn9ekx7mp0qy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgewaehxw309a5xyu3wvdhhyctrd3jjuum0vd5kzmp0gankr4's assessment here:

nostr:nevent1qqsw0r6gzn05xg67h5q2xkplwsuzedjxw9lf7ntrxjl8ajm350fcyugpz3mhxw309ucnydewxqhrqt338g6rsd3e9upzpde8f55w86vrhaeqmd955y4rraw8aunzxgxstsj7eyzgntyev2xtqvzqqqpxfg6daduv

I agree with you. However, iOS has technical limitations that prevent background apps from running. In order to be an effective remote signer, you would have to open your iOS signer app to the foreground each time you want to sign a request. There might be a possibility of using a centralized push server to wake up the signer on iOS and show a notification to the user when a signing request comes in. But it seems much more limited than what Android is capable of doing.

Is there any technically-feasible way to store an nsec locally in a passkey and use biometrics to sign events in the app?

Amber is essentially exactly that, but a passkey app for only your Nostr keys. It also has the ability to require biometrics to authorize signimg events.

I can’t use Amber on iOS and we really need something that runs natively to make onboarding and daily use easier.

I'd imagine that would be possible with what nostr:nprofile1qqszw70nm86zcl0wzlcwd0xulzdgl82e95v78vdm6fl0rnlarfle35gpzemhxue69uhhyetvv9ujumn0wd68ytnzv9hxgqg4waehxw309aex2mrp0yhx6mmnw3ezuur4vgq3qamnwvaz7tmwdaehgu3wwa5kuegncs9v7 is builting, but only for a signing method similar to NIP-55.

I have seen a couple web-apps that allow NIP-55 signing. I wonder if it would be possible for something similar to work with web apps on iOS, too. 🤔

iOS lets you lock down every app with Face ID, so it’s really fast to unlock. That function would be very useful for posting.

I think it may be possible to do something like what NIP-55 describes with nostrsigner:// deep link URLs which would in theory allow us to switch between native Nostr iOS app / Nostr web app to signer app, and then back to the Nostr client using callbacks. It might be janky and disorienting with all the app switches, but that’s the most seamless experience I can see.

The alternative is the approach I’m taking now in my design, which is using action extensions to bring up a sheet to sign an event without needing to switch apps, but this requires one too many taps from being ideal.

The best UX is one the user doesn’t have to think about.

Yeah, agreed. Which is why the former solution with app switching might end up being the best we can pull off.

I don’t want to have to switch apps every time I hit a reaction button though.

True. I’m exploring alternatives that may allow background processing on iOS, though I haven’t tried it yet. It’s new territory for me so I don’t have much to report back yet. Hopefully we can make it work!

Uncharted Terrytory. 🤙

Apple’s Secure Enclave supports only P-256, not secp256k1. It’s not compatible. I’m no cryptographer, but I believe the only solution is to have a separate dedicated Nostr signing app that you bring to the foreground when you need to sign an event.

https://developer.apple.com/documentation/cryptokit/secureenclave

That’s lame. Fix your shit, Tim Apple.

Thank you for that explanation! That makes perfect sense, and unfortunately means that Apple users simply can't have nice things in this regard.