110

# More Secrets of Cryptography

March 08, 2018

## Transcript

7. ### Modern cryptography • Confidentiality • Key exchange • Identity •

Authentication 2

b 3
11. ### Eliptic Curve Equation • y2 = x3 + ax2 +

b • y2 = x3 + 486662x2 + x 3

16. ### Eliptic Curve Key Exchange • Agree a curve, modulus and

generator point (G) 8
17. ### Eliptic Curve Key Exchange • Agree a curve, modulus and

generator point (G) • Select random integer d and compute P = dG 8
18. ### Eliptic Curve Key Exchange • Agree a curve, modulus and

generator point (G) • Select random integer d and compute P = dG • Exchange public keys (PA and PB) 8
19. ### Eliptic Curve Key Exchange • Agree a curve, modulus and

generator point (G) • Select random integer d and compute P = dG • Exchange public keys (PA and PB) • Compute a shared secret dBPA and dAPB 8
20. ### Eliptic Curve Key Exchange • Agree a curve, modulus and

generator point (G) • Select random integer d and compute P = dG • Exchange public keys (PA and PB) • Compute a shared secret dBPA and dAPB • Both parties have now computed dAdBG 8

27. ### Ideal hash function properties • It should be quick and

easy to compute a hash for any given data. 12
28. ### Ideal hash function properties • It should be quick and

easy to compute a hash for any given data. • It should be difficult to compute data that has a given hash. 12
29. ### Ideal hash function properties • It should be quick and

easy to compute a hash for any given data. • It should be difficult to compute data that has a given hash. • It should be unlikely that two different messages will have the same hash. 12

31. ### Setup phase • Append a single ’1’ bit to the

data • Pad the data with ’0’ so that the data + 64 bits is a multiple of 512 • Append the data length as a 64 bit integer 13
32. ### Expansion phase • Split message into 512 bit blocks •

Expand each block to 2048 bits • Expansion is done using shifts and rotates of the original block xor’d together 14

15

39. ### What is a blockchain? • A Merkle tree • No

central authority 18
40. ### What is a blockchain? • A Merkle tree • No

central authority • Multiple ’forks’ may exist 18
41. ### What is a blockchain? • A Merkle tree • No

central authority • Multiple ’forks’ may exist • There exists a consensus algorithm to determine the correct fork 18
42. ### What is a blockchain? • A Merkle tree • No

central authority • Multiple ’forks’ may exist • There exists a consensus algorithm to determine the correct fork • The consensus algorithm only requires data contained on the blockchain to run 18