{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreigsukriwnudkheolhxwid672bab5s45zglbowt2b26ei2qsiwt6pe",
"uri": "at://did:plc:nfto3lv2rcs5s7h7digotzlu/app.bsky.feed.post/3mp5vhgs2jfp2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreig7saeenw6c3prrms24e2bpcmq7mskq26az4ajg73ufx33cf4gf2a"
},
"mimeType": "image/png",
"size": 32236
},
"path": "/packages/maktub_passkey",
"publishedAt": "2026-06-26T02:27:48.418Z",
"site": "https://pub.dev",
"textContent": "WebAuthn passkey create/assert plus the PRF (hmac-secret) extension for Flutter — derive a stable per-credential secret from a synced passkey on iOS and Android. The PRF API the common passkey plugins [...] Changelog excerpt: - `PasskeyAssertion`now surfaces `credentialId`and `userHandle`(base64url) — the credential the platform actually used. For a discoverable assertion (`credentialId: null`) this is the only way to learn which credential the user picked, unblocking credential-bound PRF recovery (#2). Both native sides report it (iOS `credentialID`/`userID`; Android assertion `id`/`response.userHandle`). `userHandle`is nullable — it is omitted when the platform returns no user handle (e.g. a targeted assertion). Ad[...]",
"title": "v0.1.0-dev.3 of maktub_passkey",
"updatedAt": "2026-06-26T02:15:17.031Z"
}