セキュリティ
Show HN: Passkey搭載暗号化による匿名年齢確認
Show HN: Anonymous age verification with passkey-powered encryption (loginwithone.com)
要約
このプロジェクトは、Passkey認証中に生成されるクライアント側の暗号化キーを利用して、ユーザーデータをデバイス上でのみ復号・再利用可能にします。これにより、ユーザーは個人情報(PII)を共有することなく、短期間有効なプライバシー重視の年齢証明を要求するアプリケーションに発行できます。SSO体験はOAuth 2.0認可コードフロー上に構築されています。
全文翻訳
このプロジェクトは、2024年初頭にWebAuthn PRF拡張機能について初めて聞いたときから、私の頭の中で温められてきました。夏の間、非常に楽しい育児休暇のおかげで、ゆっくりと作業を進め、ついに共有可能な状態になりました。明日から仕事に戻るので、今が最良の時期だと考えています。
tldr: Passkey認証中に生成されるクライアント保持の暗号化キーが、永続化前のすべての機密ユーザーデータを暗号化するため、ユーザーのみがそのデータをデバイス上で復号・再利用できます。これにより、ユーザーがドキュメントを再アップロードすることなく、短命でプライバシーを保護する年齢証明を要求アプリケーションに発行できます(18歳以上、PIIは共有されません)。SSOユーザー体験はOAuth 2.0認可コードフロー上に構築されています。
https://loginwithone.com - デモビデオ + 高レベルアーキテクチャ + FAQ
ビデオのパロディデモアプリも公開しました。ユーザー体験を試してみたい方はどうぞ:
https://demo.brainrot.loginwithone.com
https://demo.dgnrt.loginwithone.com
https://demo.kirby.loginwithone.com
ほとんどの人は現時点ではIDステージをパスしないだろうと推測します(気分を害しないでください、この文脈では報酬が低いため、そうすることはあまり意味がありません)が、オンボーディング後にhttps://app.loginwithone.comに移動すると、ロック/アンロックボタンを介してメールのPasskey搭載暗号化を実証できます。
フィードバックを非常に歓迎しており、どんな質問にも喜んでお答えします!クライアントサイド暗号化機能を一般的な用途のためにオープンソースのTypeScriptライブラリに移行する予定ですので、そのインターフェースからどのようなものを見たいかについての考えや提案があれば、非常に役立ちます。皆さん、ありがとう。
Michael