Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

OpenSC JPKIカードドライバ

1.869 Aufrufe

Veröffentlicht am

OpenSC JPKIカードドライバ

Veröffentlicht in: Software
  • Loggen Sie sich ein, um Kommentare anzuzeigen.

OpenSC JPKIカードドライバ

  1. 1. OpenSC JPKIカードドラ イバ Open Source Solution Technology Corporation HAMANO Tsukasa <hamano@osstech.co.jp> PKI Day 2017 1
  2. 2. OpenSC JPKI カードドライバ 個人番号カード(マイナンバー カード) 2
  3. 3. OpenSC JPKI カードドライバ 2種類の証明書 • 署名用証明書 • 身分証明 • 電子申請 • 利用者認証用証明書 • 行政・民間サイトでの認証用 3
  4. 4. OpenSC JPKI カードドライバ データモデル 4
  5. 5. OpenSC JPKI カードドライバ APDU(ISO 7816-4) 5
  6. 6. OpenSC JPKI カードドライバ APDU通信例 - SELECT FILE 6
  7. 7. OpenSC JPKI カードドライバ APDU通信例 - PIN入力 < 00 20 00 80 04 XX XX XX XX > 90 00 # 成功 > 63 C2 # 失敗 7
  8. 8. OpenSC JPKI カードドライバ APDU通信例 - 署名 秘密鍵IEFをSELECT FILE < 00 A4 02 0C 02 00 17 > 90 00 署名 < 80 2A 00 80 [PKCS1 DigestInfo] > [署名データ] 8
  9. 9. OpenSC JPKI カードドライバ PKCS1 DigestInfo SEQUENCE { SEQUENCE { OBJECT IDENTIFIER sha1(1 3 14 3 2 26) NULL } OCTET STRING XX XX .. XX XX } 9
  10. 10. OpenSC JPKI カードドライバ ロードマップ • カードエッジ仕様の解析 • OpenSCカードドライバ開発 • オープンな PKCS#11 実装 • PKCS#15 カードエミュレーション • 公的個人認証の普及 10
  11. 11. OpenSC JPKI カードドライバ 仕様を隠さないで • 安全性の為に • 普及の為に 11
  12. 12. OpenSC JPKI カードドライバ OpenSCスタック 12
  13. 13. OpenSC JPKI カードドライバ OpenSCカードドライバ • esteid(エストニア) • Belpic(ベルギー) • DNIe(スペイン) • CNS(イタリア) • pteID(ポルトガル) • PIV(米国) 13
  14. 14. OpenSC JPKI カードドライバ PKCS#11 APIs • C_Initialize() • C_FindObjects() • C_Login() • C_Sign() • C_Finalize() 14
  15. 15. OpenSC JPKI カードドライバ PKCS#15エミュレーション 15
  16. 16. OpenSC JPKI カードドライバ マイナンバーカードでSSH https://www.osstech.co.jp/~hamano/ posts/jpki-ssh/ 16
  17. 17. OpenSC JPKI カードドライバ SSHプロトコル 17
  18. 18. OpenSC JPKI カードドライバ SSH公開鍵認証 18
  19. 19. OpenSC JPKI カードドライバ ブラウザ対応状況 19
  20. 20. OpenSC JPKI カードドライバ TLSクライアント認証 with Microsoft Edge 20
  21. 21. OpenSC JPKI カードドライバ TLSクライアント認証 with Mozilla Firefox 21
  22. 22. OpenSC JPKI カードドライバ 目指すべき社会 • 電子先進国(エストニア・ベルギー) • オープン・スタンダード • オープン・ソース • OS・ブラウザ非依存 • 高い普及率と利用率 • 電子後進国(日本) • 仕様が非公開 • クローズドソース • Java Applet(笑) 22
  23. 23. OpenSC JPKI カードドライバ 課題 • 運用に対する不安 • マイナンバーに対する不信 • 鍵生成の仕組み • 仕様公開されないと安心できない • 失効情報の検証 • 総務大臣の認可 • 名寄せの問題 • 信頼できる ID Provider が必要 • 複数の鍵管理 23
  24. 24. OpenSC JPKI カードドライバ github.com/open-eid 24
  25. 25. OpenSC JPKI カードドライバ github.com/JPKI 25
  26. 26. OpenSC JPKI カードドライバ OpenSCソースレポジトリ • github.com/OpenSC • OpenSC/master • github.com/JPKI • OpenSC/jpki = 0.16.0 + JPKI patch 26
  27. 27. OpenSC JPKI カードドライバ GNU Lesser General Public License • アプリ + LGPLライブラリ別配布 • アプリ + LGPLライブラリ同梱 • アプリ + LGPLライブラリstatic link 適用例: glibc, GTK+ 27
  28. 28. OpenSC JPKI カードドライバ mynaコマンド https://github.com/jpki/myna $ myna --help COMMANDS: card 券面事項を表示 cert 証明書を表示 sign CMS署名 pin_status PINステータス 28
  29. 29. OpenSC JPKI カードドライバ 5種類のOSで動く! 29
  30. 30. OpenSC JPKI カードドライバ CMS署名(RFC 5652) $ myna sign -i 文書ファイル -o 署名付きファイル 30
  31. 31. OpenSC JPKI カードドライバ 検証 $ openssl cms -verify -CAfile CA.pem -inform der -in 署名ファイル 31
  32. 32. OpenSC JPKI カードドライバ GUI版もある 32

×