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
SecHack365 '19 愛媛回発表
Search
Izuho Fujiwara
December 01, 2019
Programming
740
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SecHack365 '19 愛媛回発表
暗号通貨サービスとQRコードを活用した署名システムの提案
Izuho Fujiwara
December 01, 2019
More Decks by Izuho Fujiwara
See All by Izuho Fujiwara
Passkey 概論 ~ はてな 秋の京都オフ会 ~
fujiwaraizuho
0
420
はじめての、シビックテック
fujiwaraizuho
1
150
SecHack365 '19 最終発表
fujiwaraizuho
0
910
SecHack365 '19 中間発表
fujiwaraizuho
0
790
Other Decks in Programming
See All in Programming
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
150
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.9k
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
150
Foundation Models frameworkで画像分析
ryodeveloper
1
120
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
270
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
170
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
140
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
140
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
260
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
3
1.5k
Featured
See All Featured
A Tale of Four Properties
chriscoyier
163
24k
The browser strikes back
jonoalderson
0
1.4k
Designing for Performance
lara
611
70k
Being A Developer After 40
akosma
91
590k
Building Applications with DynamoDB
mza
96
7.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Believing is Seeing
oripsolob
1
170
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
How GitHub (no longer) Works
holman
316
150k
How to Ace a Technical Interview
jacobian
281
24k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Transcript
SecHack365 '19 愛媛回発表 暗号通貨サービスとQRコードを活用した署名システムの提案 開発駆動コース仲山ゼミ 藤原 出帆 1
秘密鍵 暗号通貨 送 金 依 頼 出 金 暗号通貨サービス 署名
ウォレット トランザクション 送信 利用者 署名システムについて 2
秘密鍵 暗号通貨 出 金 暗号通貨サービス 署名 ウォレット トランザクション 送信 利用者
署名システムについて 送 金 依 頼 3
秘密鍵 署名 トランザクション 署名システムについて 4
秘密鍵 署名 トランザクション 署名システムについて 重要 5
秘密鍵 署名 トランザクション 署名システムについて 重要 こんな重要なもの管理したくない 6
秘密鍵を利用者に管理させる 利用者 秘密鍵 7
秘密鍵を利用者に管理させる 利用者 ? CASE1 よくわからないけど秘密鍵消えました 8
秘密鍵を利用者に管理させる 利用者 秘密鍵 ? 攻撃者 攻撃 CASE2 秘密鍵を保管している端末のセキュリティが 弱すぎて盗まれました ?
9
秘密鍵を利用者に管理させる 利用者 秘密鍵 ??? 利用者に秘密鍵を管理させるのはすごく難しい 10
既存の署名システム 11
既存の署名システムについて 運営者が利用者の秘密鍵を管理する方法 • 運営者の意図だけで送金できてしまう → 改正資金決済法の暗号資産カストディ業務に関する規制に該当する為 金融庁へ仮想通貨交換業の申請を行う必要がある • サーバーに秘密鍵が保存されている 問題点
利用者 運営者 トランザクション 送金依頼 署名 12
既存の署名システムについて 外部ウォレットと連携する方法 問題点 • 利用者が暗号通貨サービスとは別のサービスに移動し秘密鍵の管理を 自己で行う必要があるためUI / UXが悪くなってしまう • 外部ウォレットサービスに依存する
利用者 外部ウォレット トランザクション 署名 暗号通貨サービス 送金依頼 13
利用者が暗号通貨サービスとは別のサービスに移動し秘密鍵の 管理を自己で行う必要があるためUI / UXが悪くなってしまう 改正資金決済法の暗号資産カストディ業務に関する規制に該 当する為金融庁へ仮想通貨交換業の申請を行う必要がある 問題1 問題2 既存の署名システムの問題点 14
利用者が暗号通貨サービスとは別のサービスに移動し秘密鍵の 管理を自己で行う必要があるためUI / UXが悪くなってしまう 改正資金決済法の暗号資産カストディ業務に関する規制に該 当する為金融庁へ仮想通貨交換業の申請を行う必要がある 問題1 問題2 既存の署名システムの問題点 15
UI / UXが悪くなってしまう理由 外部ウォレットと連携する方法 利用者 外部ウォレット トランザクション 署名 暗号通貨サービス 送金依頼
16
外部ウォレットと連携する方法 利用者 外部ウォレット トランザクション 署名 暗号通貨サービス 送金依頼 サービスが別なので新規登録が複数回必要 UI /
UXが悪くなってしまう理由 17
利用者が暗号通貨サービスとは別のサービスに移動し秘密鍵の 管理を自己で行う必要があるためUI / UXが悪くなってしまう 改正資金決済法の暗号資産カストディ業務に関する規制に該 当する為金融庁へ仮想通貨交換業の申請を行う必要がある 問題1 問題2 既存の署名システムの問題点 18
QRコードを活用した署名システム 19
QRコードを活用した署名システム サーバー データベース 署名用 QRコード 署名用パスワード ウォレット AES-256-CBC 暗号化 AES-256-CBC
復号 iv salt 署名 トランザクション 送 信 クライアントサイド サーバーサイド 20
QRコードを活用した署名システム 生成 サーバー データベース 署名用 QRコード 署名用パスワード ウォレット AES-256-CBC 暗号化
AES-256-CBC 復号 iv salt 署名 トランザクション 送 信 21
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 22
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 23
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 24
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 25
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 26
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 27
QRコードを活用した署名システム 署名 サーバー データベース 署名用 QRコード 署名用パスワード ウォレット AES-256-CBC 暗号化
AES-256-CBC 復号 iv salt 署名 トランザクション 送 信 28
QRコードを活用した署名システム データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード
署名用パスワード ⑤ 署名 トランザクション サーバー ⑥ 送 信 29
QRコードを活用した署名システム データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード
署名用パスワード ⑤ 署名 トランザクション サーバー ⑥ 送 信 30
QRコードを活用した署名システム データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード
署名用パスワード ⑤ 署名 トランザクション サーバー ⑥ 送 信 31
QRコードを活用した署名システム データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード
署名用パスワード ⑤ 署名 トランザクション サーバー ⑥ 送 信 32
QRコードを活用した署名システム データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード
署名用パスワード ⑤ 署名 トランザクション サーバー ⑥ 送 信 33
QRコードを活用した署名システム データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード
署名用パスワード ⑤ 署名 トランザクション サーバー ⑥ 送 信 34
QRコードを活用した署名システム サーバー データベース 署名用 QRコード 署名用パスワード ウォレット AES-256-CBC 暗号化 AES-256-CBC
復号 iv salt 署名 トランザクション 送 信 クライアントサイド サーバーサイド 35
とりあえず生成部分作ってみた 36
None
何が変わるのか very_strong_password 長過ぎるプライベートキー 署名用パスワードとQR army+describe+draft+soon+famous+ razor+duty+shoulder+hockey+blosso m+critic+degree+vendor+rebel+note +junior+scatter+educate+park+kidne y+dentist+health+museum+firs 38
まとめ • 秘密鍵はとっても重要 • 秘密鍵を利用者に管理させるのは危険 • 既存の署名システムには問題がある • 利用者の意図なしに運営者が送金できてしまうため、改正資金決済 法の暗号資産カストディ業務に関する規制に該当する可能性がある
• サービスごとに新規登録を行う必要があるためUI / UXが悪くなって しまう • QRコードを活用した署名システムを導入すればUI / UXの問題を解決し つつ安全に秘密鍵を管理できる • QRコードを活用した署名システムを導入した簡易暗号通貨ウォレット つくってバグハンティング • QRコードを活用した署名システムをゼニマに導入してローンチしたい こと • 発展: QRコードの管理の仕方やQRコードであるべきか? 39