-
Notifications
You must be signed in to change notification settings - Fork 0
/
easy.typ
66 lines (53 loc) · 1.56 KB
/
easy.typ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#import "src/preamble.typ":*
#set page(
width: 5.5in,
height: 8.5in,
margin: (inside: 0.6in, outside: 0.6in, top: 0.8in, bottom: 0.5in),
header-ascent: 40%,
)
#let chapter(filename) = {
include filename
}
#show: evan.with(
title: "Four Easy Pieces in Programmable Cryptography",
long-title: [Four Easy Pieces in \ Programmable \ Cryptography],
author: "0xPARC",
date: datetime.today(),
)
#v(4em)
#quote[
I can prove to you that I have a message $M$ such that
$sha(M) = "0xa91af3ac..."$, without revealing $M$.
But not just for the hash function sha.
I can do this for any function you want.
]
#pagebreak()
#toc
#pagebreak()
#set heading(offset: 1)
#authoredpart[Introduction][Brian Gu and Yan X Zhang]
#chapter("src/intro.typ")
#authoredpart[Two-party Computation][Brian Gu and Brian Lawrence]
#chapter("src/mpc.typ")
#chapter("src/ot.typ")
#chapter("src/2pc-takeaways.typ")
#authoredpart[SNARKs Prelude: Elliptic Curves and Polynomial Commitments][Evan Chen]
#chapter("src/ec.typ")
#chapter("src/pair.typ")
#chapter("src/kzg.typ")
#chapter("src/kzg-takeaways.typ")
#authoredpart[SNARKs][Evan Chen]
#chapter("src/zkintro.typ")
#chapter("src/plonk.typ")
#chapter("src/copy-constraints.typ")
#chapter("src/fs.typ")
#chapter("src/snark-takeaways.typ")
#authoredpart[Fully Homomorphic Encryption][Brian Lawrence and Yan X Zhang]
#chapter("src/fhe0.typ")
#chapter("src/lwe.typ")
#chapter("src/fhe2.typ")
#chapter("src/fhe3.typ")
#chapter("src/fhe-takeaways.typ")
#authoredpart[Oblivious RAM][Elaine Shi]
#chapter("src/oram.typ")
#chapter("src/oram-takeaways.typ")