carnage
March 08, 2018
350

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