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
暗号技術のリテラシー / Cryptography Literacy
Search
Kenji Saito
PRO
February 17, 2017
Technology
420
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
暗号技術のリテラシー / Cryptography Literacy
ブロックチェーンハブ主催で開催している連続講義 (通算第3期) ブロックチェーン基盤技術 第3回「暗号技術のリテラシー」のスライドです。2017年2月17日(金) に使用しました。
Kenji Saito
PRO
February 17, 2017
More Decks by Kenji Saito
See All by Kenji Saito
責任2.0 ∼ AI が主体となる世界で ∼ / Responsibility 2.0: In a World Where AI Takes Responsibilities
ks91
PRO
0
29
発表と総括 / Presentations and Summary
ks91
PRO
0
170
インシデントレスポンス演習II / Incident Response Exercise II
ks91
PRO
0
74
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
160
戦略と安全保障 / Strategy and Security
ks91
PRO
0
100
ローカル LLM とコンピューティングの脱領土化 / Local LLMs and Deterritorialization of Computing
ks91
PRO
0
25
サイバー戦の現在と未来 / The Present and Future of Cyber Warfare
ks91
PRO
0
82
金融の未来を考える / Thinking About the Future of Finance
ks91
PRO
0
190
AI Agentification: Current State and the Changes Ahead
ks91
PRO
0
55
Other Decks in Technology
See All in Technology
人とエージェントが高め合う協業設計
kintotechdev
0
680
AIと1000本ノックしてたどり着いた、最速のプロダクト開発 ~toC向けAIエージェントUXを、動く選択肢とAIキャパシティで設計する~
lycorptech_jp
PRO
1
110
2026年のソフトウェア開発を考える(2026/07版) / Agentic Software Engineering 2026-07 Findy Edition
twada
PRO
16
6.3k
ここは地獄!つらい朝会を体験することで、チームとしてのより良い振る舞いに気づくワークショップ / The stand-up meeting from hell in the game industry
scrummasudar
0
190
副作用のある Lambda でも Lambda Power Tuning は使えるのか / lambda-power-tuning-side-effects
koukihosaka
1
130
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
11
4.1k
「守りたい体験」を渡すだけで E2E を生成させられるようになった話
hinac0
2
970
プロダクト開発組織の現在地(Ver.2026/07) / product-organization
kaonavi
0
180
Alphaモジュール使っていいのかい!?いけないのかい!?どっちなんだいっ!?
watany
1
310
Jitera Company Deck
jitera
0
250
現場との対話から始める “作る前に問い直す”業務改善
mochico50
1
150
しくみを学んで使いこなそう GitHub Copilot app
torumakabe
2
320
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.9k
Code Reviewing Like a Champion
maltzj
528
40k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
810
Balancing Empowerment & Direction
lara
6
1.2k
Writing Fast Ruby
sferik
630
63k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Six Lessons from altMBA
skipperchong
29
4.3k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
900
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
3 SFC / CSO
[email protected]
— 3 — 2017-02-17 –
p.1/38
Bitcoin (2014-06-02) http://www.slideshare.net/kenjiurushima/20140602-bitcoin1-201406031222 — 3 — 2017-02-17 – p.2/38
1. 2. 3. — 3 — 2017-02-17 – p.3/38
1. – – — 3 — 2017-02-17 – p.4/38
(1) — 3 — 2017-02-17 – p.5/38
(2) H m H(m) = H(m′) m′ (m′ = m)
H(m) m m′ — 3 — 2017-02-17 – p.6/38
(+ ID) TX ID (+ Merkle ) ( ) —
3 — 2017-02-17 – p.7/38
SHA-256 × SHA-256 SHA-256 × RIPEMD-160 scrypt ( ) Ethash
(Dagger-Hashimoto ) DAG : Directed Acyclic Graph ( ) — 3 — 2017-02-17 – p.8/38
— 3 — 2017-02-17 – p.9/38
(RSA) RSA ECDSA ( DSA : Digital Signature Algorithm) —
3 — 2017-02-17 – p.10/38
: < , > : : < , , >
: OK NG — 3 — 2017-02-17 – p.11/38
( ) — 3 — 2017-02-17 – p.12/38
M A 60BTC — 3 — 2017-02-17 – p.13/38
: y2 = x3 + ax + b 3 X
A + B = D A + A + . . . = nA A B C D — 3 — 2017-02-17 – 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 — 3 — 2017-02-17 – p.15/38
ECDSA secp256k1 Certicom : 256 : 512 160 — 3
— 2017-02-17 – p.16/38
( )
[email protected]
( ) ( )
[email protected]
( )
(SFC) — 3 — 2017-02-17 – 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 — 3 — 2017-02-17 – p.18/38
( ) → (malleability) — 3 — 2017-02-17 – p.19/38
2. – – (malleability) — 3 — 2017-02-17 – 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 — 3 — 2017-02-17 – p.21/38
Script Processing Concatinates scripts: input → output Stack-based processing —
3 — 2017-02-17 – p.22/38
(malleability) ⇒ SegWit . . . ( 2.0 ) —
3 — 2017-02-17 – p.23/38
(1) — 3 — 2017-02-17 – p.24/38
(2) — 3 — 2017-02-17 – p.25/38
— 3 — 2017-02-17 – p.26/38
(= ) — 3 — 2017-02-17 – p.27/38
256 256 ↓ acfedf64beb9d4c1670d1d0890e3231f5effc72fc8e54c3e31035196f86ae1f0 — 3 — 2017-02-17 – 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> < > — 3 — 2017-02-17 – p.29/38
— 3 — 2017-02-17 – p.30/38
50% 253 50% 23 OK n 2n 2 160 80
— 3 — 2017-02-17 – p.31/38
— 3 — 2017-02-17 – p.32/38
3. – – Web of Trust — 3 — 2017-02-17
– p.33/38
( ) . . . — 3 — 2017-02-17 –
p.34/38
( ) — 3 — 2017-02-17 – p.35/38
( ) A B SA SB SA ∩ SB —
3 — 2017-02-17 – p.36/38
Web of Trust ( ) — 3 — 2017-02-17 –
p.37/38
— 3 — 2017-02-17 – p.38/38