Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[SUSTEN 勉強会]マイナンバーカードの仕組み
Search
soymsk
April 30, 2022
Technology
0
230
[SUSTEN 勉強会]マイナンバーカードの仕組み
#susten
マイナンバーの仕組み
・マイナンバーの内部構造
・マイナンバーのセキュリティ
・カードAP
・[Demo]Macからマイナンバーのデータを読み取る
soymsk
April 30, 2022
Tweet
Share
More Decks by soymsk
See All by soymsk
Google_Cloud_Next_19_AI_ML_Summary_public.pdf
soymsk
6
1.9k
DeNAにおけるデータ活用事例 〜移動体データ活用によるサービス創出とその基盤 / Data Driven Service in Taxi hiring app MOV
soymsk
0
370
Introduction of GCP Dataflow
soymsk
1
230
wavenet
soymsk
0
84
Other Decks in Technology
See All in Technology
mruby(PicoRuby)で ファミコン音楽を奏でる
kishima
1
320
Webアクセシビリティ入門
recruitengineers
PRO
3
1.1k
Browser
recruitengineers
PRO
5
1.6k
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
1
130
DuckDB-Wasmを使って ブラウザ上でRDBMSを動かす
hacusk
1
130
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
5
1k
microCMS 最新リリース情報(microCMS Meetup 2025)
microcms
0
240
トヨタ生産方式(TPS)入門
recruitengineers
PRO
5
1.1k
浸透しなさいRFC 5322&7208
hinono
0
130
Understanding Go GC #coefl_go_jp
bengo4com
0
1.1k
どこで動かすか、誰が動かすか 〜 kintoneのインフラ基盤刷新と運用体制のシフト 〜
ueokande
0
200
人と組織に偏重したEMへのアンチテーゼ──なぜ、EMに設計力が必要なのか/An antithesis to the overemphasis of people and organizations in EM
dskst
6
680
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Become a Pro
speakerdeck
PRO
29
5.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
830
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
The Cost Of JavaScript in 2023
addyosmani
53
8.8k
Designing for humans not robots
tammielis
253
25k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
900
For a Future-Friendly Web
brad_frost
179
9.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Git: the NoSQL Database
bkeepers
PRO
431
65k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Transcript
マイナンバーカードの仕組み なぜマイナンバーカードで本人確認ができるのか SUSTEN 2022/04/28 Ryosuke Mashiko
モチベーション • マイナンバーカードの技術要素を知りたい • マイナンバーカードで本人確認ができるって聞いたけどなぜかわからない • eTaxでマイナンバーカードが利用できる仕組みが知りたい 2
マイナンバーカード • みんなご存じマイナンバーカード • 2022/04/01時点で普及率は43.3% ◦ マイナポイント (2020年9月1日~)効 果? •
今後マイナポイント第2弾、第3 弾のキャンペーンにより、さらに 普及率は加速すると思われる。 3 マイナポイント第1弾 データ引用元: https://mynumbercard.code4japan.org/data/20220401
マイナンバーカード格納データ 4 • 券面 ◦ 表面: 氏名・住所・生年月日・性別(以上、基本4情報)・顔写真・電子証明書の有効期限・ セキュリティコード・サインパネル領域・臓器提供意思表示欄 ◦ 裏面:マイナンバー番号
• 各種電子証明書 ◦ 利用者証明用電子証明書 ◦ 署名用電子証明書 引用:https://www.city.hannan.lg.jp/kakuka/shimin/shimin/mynumbercard/1589764470892.html
マイナンバーカードのセキュリティ 5 • 表面は簡単に偽造できないように、レーザー印字・パターン印字 • 耐タンパー性(tamper: 「干渉する」「弄る」) ◦ IC チップ内の情報を不正に(物理的に)アクセスされた場合に、
▪ 光が当たるとメモリー内容が消去される ▪ メモリカー回路素子が表面から観察できない ▪ 電圧異常、クロック異常等を検知した場合は動作停止 ▪ メモリー素子のランダム配列、格納情報の暗号化 ◦ 消費電力や処理時間で格納データを推測する攻撃(サイドチャネル攻撃)に対しては、消費 電力や処理時間をランダムに攪拌することで対応 • AP間の格納情報にはアクセスできないようアプリケーションファイヤウォー ルにより独立性を担保
マイナンバーカードAP(1/3) 6 • カードOS上に各種カードAP(カー ドアプリケーション)が搭載 ◦ カードOSはベンダーごとに異なるが、カード APのI/Fが規格化されているので、どのベンダ ー製でも同じ形式で通信できる •
カードAP一覧 ◦ 公的個人認証AP ◦ 券面事項確認AP ◦ 券面事項入力補助AP ◦ 住基AP 公的個人認証AP 券面事項確認AP 券面事項入力補助AP 住基AP カードOS 空き領域 条例利用領域 拡張利用領域 マイナンバーカードの内部構成
マイナンバーカードAP(2/3) 7 • 公的個人認証AP ◦ PKI(公開鍵基盤)による電子署名や本人認証を提供 ◦ 電子証明書 ▪ 利用者証明用電子証明書
• 住民票や印鑑登録証のコンビニ交付に利用。暗証番号4桁 ▪ 署名用電子証明書 • インターネット経由で厳格な本人確認が可能。押印が必要な書類の電子化。 暗証番号は6桁 ◦ 住所が変更になると証明書は無効になる ▪ 顧客から提出された証明書の有効・無効を取得することで、事業者側が顧客の 住所変更を能動的に検知することが可能 • → 金融機関にとって利便性が高い
マイナンバーカードAP(2/3) 8 発表中、補足資料
マイナンバーカードAP(3/3) 9 • 券面事項確認AP ◦ カード券面の「画像」が保存されている。アクセスには券面記載事項の入力が必要 ◦ 利用ケース: 券面の偽造の有無の確認 •
券面事項入力補助AP ◦ 個人番号や基本4情報を「テキストデータ」として保存 ◦ アクセスには4桁の暗証番号入力や、券面記載情報の入力などが必要 • 住基AP ◦ 住民票コードを保存。自治体のみが利用化
電子証明書の有効性検証 10 • マイナンバーカードに搭載されている証明書はPKIを利用しているため、 証明書検証が必須 • 公的個人認証サービスは地方公共団体情報システム機構(J-LIS)が一括して 運営 ◦ J-LIS
▪ マイナンバーの発行 ▪ 認証局の運営 ▪ 証明書失効情報の管理 ▪ 認証局のCAファイルはこちらで配布されている • https://www.jpki.go.jp/ca/ca_rules3.html ・認証局 ・証明書失効情報 利用者 J -LIS 事業者 証明書 証明書の正当性の検証 失効の把握
マイナンバーカードの今後の展望 • 健康保険証機能 • 免許証機能 • スマートフォンへの電子証明書機能搭載 • マイキーID(マイキープラットフォーム)の活用 ◦
マイナンバーカードに搭載された「マイキーID」を利用した広く民間サービスの本人確認に 利用できるID (マイキーID ≠ マイナンバーカード) ▪ 利用者証明用電子証明書を用いて任意に生成可能なID • マイナンバーに比べ、より幅広い用途での利用が想定されており、民間事業者が サービス利用者IDとマイキーIDとの対応を管理することができ、マイナンバーカ ードをユーザー認証に利用できる ◦ 図書館カード, ポイントカード, 会員証 11
デモ 12
非接触型(Type B ISO/IEC 14443) マイナンバーカードのI/F 13 規格 特長 利用例 Type
A ISO/IEC 14443 ISO/IEC 18092 低機能、安価、小容量 入退室カード, taspo Type B ISO/IEC 14443 高機能・高セキュリティ 運転免許証、マイ ナンバーカード FeliCa ISO/IEC 18092 本来は14443 TypeCとして 規格化する方向で提案され ていたが、色々あり 18092 での採択となった。日本で 広く普及 Suica, 楽天Edy, nanaco 接触型(ICチップ ISO/IEC 7816) • クレカ • B-CASカード • SIMカード
マイナンバーと通信する • PC: 2021 M1 Mac • Reader: 接触型カードリーダー(SCR3310-NTTCom) •
Lib: OpenSC(https://github.com/OpenSC/OpenSC) ◦ $ brew install opensc openssl 14
マイナンバーと通信する 15 PIN試行回数 PIN規定長
マイナンバーと通信する 16 PIN試行回数 PIN規定長 失敗すると減る
マイナンバーと通信する 17
マイナンバーと通信する 18
マイナンバーと通信する 19 • 格納情報の閲覧であれば、 JPKIアプリで簡単にできる https://play.google.com/store/apps/details?id=jp.go.jpki.mobile.utility&hl= ja ◦ pinコード回数のリセットに使った。。。 •
署名証明書を使えば、基本4情報を直接入力させずに、オンラインかつ本人 性が担保された状態で情報を取得できる Confidential
次回予告..? 20 • Pythonでマイナンバーと通信してみる ◦ opensc ◦ cryptography Confidential
参考 21 • https://www.soumu.go.jp/main_content/000528384.pdf • https://www.fujitsu.com/jp/documents/about/resources/publications/magazine/backnumber/v ol68-4/paper10.pdf • マイナンバー制度とマイナンバーカード ◦
https://www.jstage.jst.go.jp/article/itej/70/7/70_593/_pdf