single use seals
play

Single-Use-Seals Peter Todd July 3rd 2018 Building on Bitcoin - PowerPoint PPT Presentation

Single-Use-Seals Peter Todd July 3rd 2018 Building on Bitcoin Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04 What problem are we trying to solve? Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04 What problem are we


  1. Single-Use-Seals Peter Todd July 3rd 2018 Building on Bitcoin Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  2. What problem are we trying to solve? Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  3. What problem are we trying to solve? Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  4. Physical Single-Use-Seal Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  5. Cryptographic Single-Use-Seal Gen( p ) → l Close( l , m , s ) → w l (1) Verify( l , w l , m ) → bool Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  6. Single-Use-Seal Guarantee Secure if ∄ m 1 , w 1 , m 2 , w 2 where m 1 � = m 2 such that Verify( l , w 1 , m 1 ) and Verify( l , w 2 , m 2 ) return true. Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  7. Blockchain Implemented Via Single-Use-Seals Series of blocks B i = ( w i , l i , b i ) such that Verify( l i , w i +1 , H ( l i | b i )) is true for each block. Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  8. Implementation: Seal Structure Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  9. Implementation: Seal Serialization Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  10. Implementation: Witness Structure Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  11. Implementation: Witness Validation Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  12. Implementation: Chain of Seals Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  13. Scaling: Proof-of-Publication Seal Seal defined as l = ( B n , p ) where B n is an initial block and p is a pubkey. Verify takes w l = ( B n .. B m ) and verifies that CheckSig( p , m , B i ) returns false for all n ≤ i < m , and true for i = m . Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  14. Scaling: Indexed Proof-of-Publication Seal If block B n is a merkelized key-value tree, proving B n [ p ] = m takes O (log 2 ( m )) bytes. Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  15. PoP Seal Proof Cost + 32 bytes 3 kB ≈ 1250 bytes level 32 levels + 100 bytes block � �� � � �� � � �� � tx w/ SPV proof sig key-value path 356 days × 12 blocks × 3 kB 13 MB block = ⇒ year day seal · year Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  16. Scaling: Proof-of-Publication Seal Why isn’t this implemented yet? Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

  17. Thank you! Peter Todd 37EC 7D7B 0A21 7CDB 4B4E 007E 7FAB 1142 67E4 FA04

Recommend


More recommend