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
170
[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.8k
DeNAにおけるデータ活用事例 〜移動体データ活用によるサービス創出とその基盤 / Data Driven Service in Taxi hiring app MOV
soymsk
0
320
Introduction of GCP Dataflow
soymsk
1
210
wavenet
soymsk
0
74
Other Decks in Technology
See All in Technology
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
380
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
110
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
300
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
Featured
See All Featured
Happy Clients
brianwarren
98
6.7k
Agile that works and the tools we love
rasmusluckow
327
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
A Philosophy of Restraint
colly
203
16k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Gamification - CAS2011
davidbonilla
80
5k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
What's in a price? How to price your products and services
michaelherold
243
12k
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