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
ブロックチェーン連続講義 第2-4回 暗号技術のリテラシー / Cryptography Li...
Search
Kenji Saito
PRO
August 12, 2016
Technology
2
620
ブロックチェーン連続講義 第2-4回 暗号技術のリテラシー / Cryptography Literacy
ブロックチェーンハブ主催で開催している第2期ブロックチェーン連続講義の第4回「暗号技術のリテラシー」のスライドです。2016年8月12日(金) に使用しました。
Kenji Saito
PRO
August 12, 2016
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
グリーンマイニングが Bitcoin プロトコルに及ぼす影響 / Impact of Green Mining on the Bitcoin Protocol
ks91
PRO
0
18
FinTech 13-14 : Ideathon, Presentations and Conclusions
ks91
PRO
0
54
デザイン相談会 / Design Consultation
ks91
PRO
0
13
FinTech 11-12 : Cyber-Physical Society and Future of Finance
ks91
PRO
0
52
メタ自然選択と製品トレーサビリティー / Meta-Natural Selection and Product Traceability
ks91
PRO
0
8
伝統的金融に呑まれる分散型金融 / Decentralised Finance Engulfed by Traditional Finance
ks91
PRO
0
15
ウェブサービスデザイン 2 / Web Service Design 2
ks91
PRO
0
25
生成AI による論文執筆サポートの手引き(ワークショップ) / A guide to supporting dissertation writing with generative AI (workshop)
ks91
PRO
0
250
FinTech 9-10: Smart Contracts and Decentralized Finance
ks91
PRO
0
64
Other Decks in Technology
See All in Technology
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
390
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.9k
AIチャットボット開発への生成AI活用
ryomrt
0
170
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
490
強いチームと開発生産性
onk
PRO
35
11k
組織成長を加速させるオンボーディングの取り組み
sudoakiy
2
220
複雑なState管理からの脱却
sansantech
PRO
1
160
日経電子版のStoreKit2フルリニューアル
shimastripe
1
140
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
300
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
2
230
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
4
230
Featured
See All Featured
What's new in Ruby 2.0
geeforr
343
31k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Automating Front-end Workflow
addyosmani
1366
200k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
We Have a Design System, Now What?
morganepeng
50
7.2k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Making Projects Easy
brettharned
115
5.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
YesSQL, Process and Tooling at Scale
rocio
169
14k
A Tale of Four Properties
chriscoyier
156
23k
Transcript
2 4 SFC / CSO
[email protected]
— 2016-08-12 – p.1/38
Bitcoin (2014-06-02) http://www.slideshare.net/kenjiurushima/20140602-bitcoin1-201406031222 — 2016-08-12 – p.2/38
1. 2. 3. — 2016-08-12 – p.3/38
1. – – — 2016-08-12 – p.4/38
(1) — 2016-08-12 – p.5/38
(2) H m H(m) = H(m′) m′ (m′ = m)
H(m) m m′ — 2016-08-12 – p.6/38
(+ ID) TX ID (+ Merkle ) ( ) —
2016-08-12 – p.7/38
SHA-256 × SHA-256 SHA-256 × RIPEMD-160 scrypt ( ) Ethash
(Dagger-Hashimoto ) DAG : Directed Acyclic Graph ( ) — 2016-08-12 – p.8/38
— 2016-08-12 – p.9/38
(RSA) RSA — 2016-08-12 – p.10/38
: < , > : : < , , >
: OK NG — 2016-08-12 – p.11/38
— 2016-08-12 – p.12/38
M A 60BTC — 2016-08-12 – p.13/38
: y2 = x3 + ax + b 3 X
A + B = D A + A + . . . = nA A B C D — 2016-08-12 – p.14/38
(EC) DSA G(x, y), p, a, b nG G, p,
a, b n (n ) k(0 ≤ k ≤ n) kG, n nG — 2016-08-12 – p.15/38
ECDSA secp256k1 Certicom : 256 : 512 160 — 2016-08-12
– p.16/38
( )
[email protected]
( ) ( )
[email protected]
( )
(SFC) — 2016-08-12 – p.17/38
Base58Check 1. SHA-256 × RIPEMD-160 2. ( = 0) 3.
SHA-256 × SHA-256 4. 4 2. 5. base58 base58 10 + 26×2 - 4 (l,I,O,0) = 58 58 — 2016-08-12 – p.18/38
( ) — 2016-08-12 – p.19/38
2. – – (malleability) — 2016-08-12 – p.20/38
Script (General) Output: OP_DUP OP_HASH160 OP_PUSHDATA* <Public-key digest> OP_EQUALVERIFY OP_CHECKSIG
Input: OP_PUSHDATA* <Signature> OP_PUSHDATA* <Public key> TX output addressed to a public-key digest and referring input — 2016-08-12 – p.21/38
Script Processing Concatinates scripts: input → output Stack-based processing —
2016-08-12 – p.22/38
(malleability) — 2016-08-12 – p.23/38
(1) — 2016-08-12 – p.24/38
(2) — 2016-08-12 – p.25/38
— 2016-08-12 – p.26/38
(= ) — 2016-08-12 – p.27/38
256 256 ↓ acfedf64beb9d4c1670d1d0890e3231f5effc72fc8e54c3e31035196f86ae1f0 — 2016-08-12 – p.28/38
m n OK : OP_2 <A> <B> <C> OP_3 OP_CHECKMULTISIG
: OP_DUP OP_HASH160 < > OP_EQUALVERIFY OP_EVAL : < A> < A> < C> < C> < > — 2016-08-12 – p.29/38
— 2016-08-12 – p.30/38
50% 253 50% 23 OK n 2n 2 160 80
— 2016-08-12 – p.31/38
— 2016-08-12 – p.32/38
3. – – Web of Trust — 2016-08-12 – p.33/38
( ) . . . — 2016-08-12 – p.34/38
( ) — 2016-08-12 – p.35/38
( ) A B SA SB SA ∩ SB —
2016-08-12 – p.36/38
Web of Trust — 2016-08-12 – p.37/38
— 2016-08-12 – p.38/38