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
720
0
Share
SecHack365 '19 愛媛回発表
暗号通貨サービスとQRコードを活用した署名システムの提案
Izuho Fujiwara
December 01, 2019
More Decks by Izuho Fujiwara
See All by Izuho Fujiwara
Passkey 概論 ~ はてな 秋の京都オフ会 ~
fujiwaraizuho
0
410
はじめての、シビックテック
fujiwaraizuho
1
140
SecHack365 '19 最終発表
fujiwaraizuho
0
910
SecHack365 '19 中間発表
fujiwaraizuho
0
780
Other Decks in Programming
See All in Programming
AgentCore Optimizationを始めよう!
licux
3
260
tsserverとは何だったのか_これからどうなるのか
nowaki28
1
270
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
190
色即是空、空即是色、データサイエンス
kamoneggi
1
140
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
520
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
170
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
270
My daily life on Ruby
a_matsuda
3
420
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
390
運転動画を検索可能にする〜Cosmos-Embed1とDatabricks Vector Searchで〜/cosmos-embed1-databricks-vector-search
studio_graph
3
980
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
140
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
160
Featured
See All Featured
AI: The stuff that nobody shows you
jnunemaker
PRO
7
650
Marketing to machines
jonoalderson
1
5.3k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
290
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
240
GraphQLとの向き合い方2022年版
quramy
50
15k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
83
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
140
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
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