Upgrade to Pro — share decks privately, control downloads, hide ads and more …

暗号技術の基礎知識 / Cryptographic Literacy

Kenji Saito
November 22, 2017

暗号技術の基礎知識 / Cryptographic Literacy

2017年11月22日(水)、ブロックチェーンアカデミー「ブロックチェーン基盤技術 暗号技術の基礎知識」にて使用したスライドです

Kenji Saito

November 22, 2017
Tweet

More Decks by Kenji Saito

Other Decks in Technology

Transcript

  1. ( ) SFC ( ) CSO (Chief Science Officer) 1993

    M.Eng ( ) 2006 ( ) SFC 17 P2P 2011 → ( ) — — 2017-11-22 – p.2/40
  2. (2) H m H(m) = H(m′) m′ (m′ = m)

    H(m) m m′ H(m) = H(m′) ( m′ = m) — — 2017-11-22 – p.7/40
  3. ID (+ ) TX ID (+ Merkle ) ( )

    — — 2017-11-22 – p.9/40
  4. SHA-256 × SHA-256 SHA-256 × RIPEMD-160 (1 ) . .

    . scrypt ( ) Ethash (Dagger-Hashimoto ) DAG : Directed Acyclic Graph ( ) — — 2017-11-22 – p.11/40
  5. (RSA) RSA (RSA : Rivest, Shamir, Adleman; ) ECDSA (

    DSA : Digital Signature Algorithm) — — 2017-11-22 – p.13/40
  6. : < , > : : < , , >

    : OK NG — — 2017-11-22 – p.14/40
  7. – : y2 = x3 + ax + b 3

    X A + B = D A + A + . . . = nA A B C D — — 2017-11-22 – p.17/40
  8. (EC) DSA G(x, y), p, a, b nG G, p,

    a, b n (n ) k(0 ≤ k ≤ n) kG, n k → PlayStation 3 nG — — 2017-11-22 – p.18/40
  9. ECDSA secp256k1 Certicom : 256 : 512 ( ) 160

    — — 2017-11-22 – p.19/40
  10. ( ) [email protected] ( ) ( ) [email protected] ( )

    (SFC) — — 2017-11-22 – p.20/40
  11. 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 l = , I = , O = , 0 = 58 — — 2017-11-22 – p.21/40
  12. 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 — — 2017-11-22 – p.24/40
  13. m n OK : OP_2 <A> <B> <C> OP_3 OP_CHECKMULTISIG

    : OP_DUP OP_HASH160 < > OP_EQUALVERIFY OP_EVAL : < A> < A> < C> < C> < > — — 2017-11-22 – p.31/40
  14. 50% 253 50% 23 OK n 2n 2 160 80

    SHA-1 (160 ) — — 2017-11-22 – p.33/40
  15. ( ) . . . zkSNARKs (zero knowledge Succinct Non-interactive

    ARguments of Knowledge) Zcash Ethereum — — 2017-11-22 – p.37/40
  16. ( ) (homomorphic) : RSA ( ) A B SA

    SB SA ∩ SB RSA — — 2017-11-22 – p.39/40