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
January 01, 2020
Programming
0
860
SecHack365 '19 最終発表
暗号通貨サービスとQRコードを活用した署名システムの提案
Izuho Fujiwara
January 01, 2020
Tweet
Share
More Decks by Izuho Fujiwara
See All by Izuho Fujiwara
Passkey 概論 ~ はてな 秋の京都オフ会 ~
fujiwaraizuho
0
360
はじめての、シビックテック
fujiwaraizuho
1
120
SecHack365 '19 愛媛回発表
fujiwaraizuho
0
680
SecHack365 '19 中間発表
fujiwaraizuho
0
740
Other Decks in Programming
See All in Programming
Building, Deploying, and Monitoring Ruby Web Applications with Falcon (Kaigi on Rails 2025)
ioquatix
4
1.9k
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
400
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
120
開発生産性を上げるための生成AI活用術
starfish719
3
420
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
670
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
1.2k
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
980
株式会社 Sun terras カンパニーデック
sunterras
0
270
技術的負債の正体を知って向き合う / Facing Technical Debt
irof
0
150
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
160
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
800
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
1.2k
Featured
See All Featured
Visualization
eitanlees
148
16k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Raft: Consensus for Rubyists
vanstee
139
7.1k
We Have a Design System, Now What?
morganepeng
53
7.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Navigating Team Friction
lara
189
15k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Producing Creativity
orderedlist
PRO
347
40k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
590
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Transcript
SecHack365 '19 最終発表 暗号通貨サービスとQRコードを活用した署名システムの提案 開発駆動コース 仲山ゼミ 藤原 出帆 1
2 暗号通貨サービスとは 暗号通貨を扱うことが出来るサービスのこと
3 私が実現したいこと セキュアかつカジュアルに 暗号通貨サービスが利用できる世界
4 なぜ実現したい? 今の暗号通貨サービスが セキュアかつカジュアルではないから • 暗号通貨サービスで相次いで起き る資産流出事件 • 暗号通貨サービス特有のとっつき にくさや使いにくさ
秘密鍵 暗号通貨 送 金 依 頼 移 転 暗号通貨サービス 署名
トランザクション 利用者 署名システムとは 5 配信 ブロックチェーン
秘密鍵 暗号通貨 送 金 依 頼 移 転 暗号通貨サービス 署名
トランザクション 利用者 署名システムとは 6 配信 ブロックチェーン
秘密鍵 署名 トランザクション 署名システムとは 7
秘密鍵 署名 トランザクション 署名システムとは 8 重要
既存の署名システム 9
既存の署名システムについて 運営者が利用者の秘密鍵を管理する署名システム 問題点 利用者 運営者 トランザクション 送金依頼 署名 10 •
利用者の意図にそぐわない資産の移動が出来てしまう ➢ 利用者保護の為に法律が改正された ➢ 法律に準拠するためのコストが高い • 運営者のサーバーがクラックされたときに資産が流出する可能性がある
既存の署名システムについて 外部ウォレットと連携した署名システム 問題点 • 暗号通貨サービスと外部ウォレットは別のサービスなので 新規登録が複数回必要で手間である • 外部ウォレットサービスに依存する 外部ウォレット トランザクション
署名 暗号通貨サービス 送金依頼 11 利用者
法的な対応へのコストが低い その1 その2 署名システムのあるべき姿 12 その3 その4 サービスがクラッキングされた時に 資産が絶対に流出しない 少ないステップで署名が出来る
どんな端末でも簡単に利用できる
13 署名システム比較表 法的対応への コストが低い 不正に資産が 流出しない 少ないステップで 署名が出来る どんな端末でも 簡単に利用できる
運営者が利用者の 秘密鍵を管理する 署名システム × × ◎ ◎ 外部ウォレットと 連携した 署名システム 〇 〇 × 〇
QRコードを活用した署名システム 14
15 法的対応への コストが低い 不正に資産が 流出しない 少ないステップで 署名が出来る どんな端末でも 簡単に利用できる 運営者が利用者の
秘密鍵を管理する 署名システム × × ◎ ◎ 外部ウォレットと 連携した 署名システム 〇 〇 × 〇 QRコードを活用した署名システム
16 外部ウォレットと連携した署名システム 外部ウォレット トランザクション 暗号通貨サービス 利用者 ③ 署 名 ②
署名依頼
QRコードを活用した署名システム ブロックチェーン データベース 署名用 QRコード 署名用パスワード ウォレット AES-256-CBC 暗号化 AES-256-CBC
復号 iv salt 署名 トランザクション 配 信 クライアントサイド サーバーサイド 17
QRコードを活用した署名システム 生成 データベース 署名用 QRコード 署名用パスワード ウォレット AES-256-CBC 暗号化 AES-256-CBC
復号 iv salt 署名 トランザクション 配 信 18 ブロックチェーン
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 19
QRコードを活用した署名システム データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv
salt ①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 20
データベース 署名用 QRコード 署名用パスワード ウォレット ④ AES-256-CBC 暗号化 iv salt
①ランダム生成 クライアントサイド サーバーサイド QRコードの生成 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コードを採用した理由 25 暗号通貨サービスは複数の端末で利用されるので 画像として管理できる形式のほうが扱いやすい 理由1 理由2 デジタルデータとして暗号化された秘密鍵を 保持したくない場合はQRコードを紙に印刷することで ペーパーウォレットとしても利用できる
署名 データベース 署名用 QRコード 署名用パスワード ウォレット AES-256-CBC 暗号化 AES-256-CBC 復号
iv salt 署名 トランザクション 26 QRコードを活用した署名システム ブロックチェーン
データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード 署名用パスワード
⑤ 署名 トランザクション ⑥ 配 信 27 QRコードを活用した署名システム ブロックチェーン
データベース ④ AES-256-CBC 復号 クライアントサイド サーバーサイド QRコードで署名 署名用 QRコード 署名用パスワード
⑤ 署名 トランザクション 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コードを活用した署名システム ⑥ 配 信 ブロックチェーン
33 QRコードを活用した署名システム ウォレット 署名用QRコード 署名用パスワード Salt ・ iv 分散 iv
salt ユーザーが知っている ユーザーが持っている サービスが持っている
34 QRコードを活用した署名システム 署名用QRコード 署名用パスワード Salt ・ iv iv salt ユーザーが知っている
ユーザーが持っている サービスが持っている 多要素認証
成果物と送金デモ 35
36 QRコードを活用した署名システムの送金デモで ”ぜひ見てほしいこと” 送金が完了するまでのステップが短いこと 特別な知識が無くても送金できること どんな端末でも簡単に利用できること
None
38 QRコードを活用した署名システムの送金デモ ”いかがでしたか?” 送金が完了するまでのステップが短いこと 特別な知識が無くても送金できること どんな端末でも簡単に利用できること
39 簡易暗号通貨ウォレット QRコードを活用した署名システムを導入した 簡易暗号通貨ウォレットを開発しました https://wallet.zenyma.jp 制作期間: 一ヵ月 使っている技術: Laravel, Nuxt.js…
書いた行数: 3021行
40 簡易暗号通貨ウォレット https://wallet.zenyma.jp ※ アカウントを作ってアドレスを私に送るとMonacoinがもらえるぞ!
41 署名システム比較表 法的対応への コストが低い 不正に資産が 流出しない 少ないステップで 署名が出来る どんな端末でも 簡単に利用できる
コードを活用した 署名システム 〇 〇 〇 ◎ 運営者が利用者の 秘密鍵を管理する 署名システム × × ◎ ◎ 外部ウォレットと 連携した 署名システム 〇 〇 × 〇
42 法的対応への コストが低い 不正に資産が 流出しない 少ないステップで 署名が出来る どんな端末でも 簡単に利用できる コードを活用した
署名システム 〇 〇 〇 ◎ セキュアかつカジュアルに 暗号通貨サービスが利用できる世界 を実現できる署名システム
今後の課題と修了後の発展 今後の課題 修了後の発展 43 QRコードを活用した署名システムを技術的に実装できたが 利用者目線でのリアルな意見は得られていない QRコードを活用した署名システムを実際に暗号通貨 サービスに導入してローンチしリアルな意見をもらうこと
SecHack365を通して 一言でいうと 44 • 普段生活していて気づかないこともSecHack365を通して 思索や表現を重ねることで気づくことが出来た • 人に思っていることを伝えることの難しさを知った どのコースも 必ず一度はみんな思索をする
よかったこと
まとめ 45 既存の署名システムではセキュアかつカジュアルに 暗号通貨サービスを利用できない QRコードを活用した署名システムは ウォレットの復号に必要な情報を分散している セキュアかつカジュアルに暗号通貨サービスを利用できる 世界を実現できるのがQRコードを活用した署名システム 修了後はQRコードを活用した署名システムを 実際に暗号通貨サービスに導入してローンチしリアルな意見をもらいたい