- C8F357066CE1ADC92DB307976B98E772BAC91197E586EAA83C17DE5A570C8A866DC48FE15F3F0C1AA5BA939E90CAEFFF205D69ADBAEE2E33105035EB238E413D
+ 58434F3169E7DC52AB23B943337E56C60077D22E300B519DD63784A7EDE38F9F97299B24F16E304895C15691ECB384D7F5D7C2C13662156FFF9CEC17F58DBDFA
esthlos-v/src/keccak/README
(1 . 1)(1 . 22)
36 To contain a Keccak implementation.
37 Q: What is this?
38 A: This is an implementation of the Keccak hash function.
39
40 Q: What is a hash function?
41 A: A deterministic procedure which seems difficult to invert.
42
43 Q: What do you mean "seems difficult"?
44 A: Broadly speaking, there is no proof that common hash functions *are*
45 difficult to invert. Rather, we don't know efficient ways to invert them.
46
47 Q: What is Keccak?
48 A: https://keccak.team/keccak.html
49
50 Q: What are the advantages of Keccak over other hash functions?
51 A: Keccak has a few nice features (list not exhaustive):
52 - Keccak can take in arbitrarily large input, and return arbitrarily
53 large output.
54 - It's possible to trade security for speed, and vice versa.
55
56 Q: How does Keccak work?
57 A: Basically, Keccak loads bits into a large Rubik's cube, permutes those bits
58 in convoluted ways, and reads back bits from the Rubik's cube.