第3回 WebAuthn もくもく会
先日行われた WebAuthn もくもく会で利用した共用メモです。
https://hackmd.io ってのを使いました。
https://fido2-workshop.connpass.com/event/100944/
日時:
- 2018-10-04 17:00~
場所:
- CTC DEJIMA https://dejima.space/news/2018/20181023.html
- Google Map https://goo.gl/maps/s4xoPejAgh82
※13階
Supported by FIDO Alliance
注意事項
ゴミについて。
会場のごみは、直接ゴミ箱には入れず、ゴミ箱前のごみ袋に入れてください。
当日の流れ
日時 | |
---|---|
17:00 | 開場 |
17:30 | あいさつ |
17:30 | FIDOの基本プレゼン by @watahani |
19:30 | QAセッション |
20:00 | 懇親会 |
21:45 | 後片付け |
22:00 | 完全撤収 |
資料
公式
-
Web Authentication: An API for accessing Public Key Credentials Level 1
- ↑より 最新Draft見たほうがよさそう
- 5章のブラウザAPI,7章のサーバーサイドの責務,あたりから読み始めるのが個人的にはおススメ
-
Client to Authenticator Protocol (CTAP) Review Draft, July 02, 2018
スライド
スライドとか貼る
Beyond Passwords: FIDO2 Demos from Google and Microsoft
0昨日のスライドたち..は connpass で https://fido2-workshop.connpass.com/event/100866/
エンジニア向け
おススメDemoサイト
個人的には MS のやつがオプション全部実装してて、オプションを試すにはおススメ
webauthn.org が一番簡単だし、 Advanced クリックすると、バックエンドの通信可視化してくれるんで、APIの動きをみるのはおススメ。
- Microsoft: https://webauthntest.azurewebsites.net
- FIDO: https://webauthn.org/
- Yubico: https://demo.yubico.com/webauthn
@watahani おススメのコード
-
https://github.com/fido-alliance/webauthn-demo
- FIDO Alliance の Yuriy が Workshop 用に作ったサンプルコード
- U2F ベースだけど、非常にわかりやすいスライドもあるのでお勧め
- ちょっと改造すれば FIDO2 対応できる
その他
Q&A
質問がある方はここに書いてね
- Q. 17:00 に遅れそうなときはどうすればいいですか?
- A. 20:00 までは会場ビルが開いているそうなので、直接会場までお越しください。
Yuriy への質問
本日非公式にですが、FIDO Alliance Senior Certification Engineer の Yuriy が来ます。
意見。質問ある人はここに書いておく(誰か英語に訳してくれー)
- ResidentKey 内のユーザ情報の扱いについて
- 個別削除や、表示させる機構は WebAuthentication API のスコープ外だと思うが、禁止事項などはあるか?
- A. ガイドラインはあるが、 CTAP/WebAuthn の API に対応していれば、その他の実装は自由。例えばディスプレイがあって、ユーザ情報を個別削除するようなUXの Authenticator とかも可能。YubiKey などディスプレイがない Authenticator はオールクリア(CTAP API?) しかない。
- 個別削除や、表示させる機構は WebAuthentication API のスコープ外だと思うが、禁止事項などはあるか?
- Android Safety-net Attestation では、AuthenticatorData と ClientData の SHA256 ハッシュしか検証していないようだが、Authenticator の偽造されているかどうかの検証には使えないのではないか?
- よくわかる Android Safety-net 動画 --> https://www.youtube.com/watch?v=8lv_9mydrjg
- SHA256( AuthenticatorData | ClientDataHash ) に対して Android Safety-net の署名方法に基づいて署名している。
- developer.android に詳しいドキュメントがあるのでちゃんと読もう(つらい)