aboutsummaryrefslogtreecommitdiff
path: root/documentation/research/cryptography.md
blob: 7eaf9cc9f75d2f9ac8ba70f1f0a5662496e0a4ef (plain)
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
# Constant-time programming

1. [Constant-Time WebAssembly](https://github.com/PLSysSec/ct-wasm)
1. [Verifying Constant-Time Implementations](https://michael-emmi.github.io/papers/conf-uss-AlmeidaBBDE16.pdf)
1. https://www.bearssl.org/ctmul.html
1. [FaCT: A Flexible, Constant-Time Programming Language](https://cseweb.ucsd.edu/~dstefan/pubs/cauligi:2017:fact.pdf)
1. [FaCT: A DSL for Timing-Sensitive Computation](https://ranjitjhala.github.io/static/fact_dsl.pdf)
1. ["FaCT: A New Language for Constant-Time Programming" by Sunjay Cauligi](https://www.youtube.com/watch?v=kbn9UCRK2Qg)

# Zero-knowledge proof

1. ["Rhapsody in Zero Knowledge: Proving Without Revealing" by Tony Arcieri](https://www.youtube.com/watch?v=jKSz7W5dTgY)
1. [Zero-Knowledge Proofs: What are they, how do they work, and are they fast yet?](https://zkp.science/)

# Hash

1. [On future-proof cryptographic hashes](https://pascalprecht.github.io/posts/future-proofed-hashes-with-multihash/)

# Library

1. [zinc: Introduce minimal cryptography library](https://git.kernel.org/pub/scm/linux/kernel/git/zx2c4/linux.git/commit/?h=zinc)
1. https://joshlf.com/post/2018/11/06/introducing-mundane/
1. https://github.com/akhawaja/ecc-crypto-helper
1. [Introducing CIRCL: An Advanced Cryptographic Library](https://blog.cloudflare.com/introducing-circl/)

# Criticism

1. [Fuck RSA](https://blog.trailofbits.com/2019/07/08/fuck-rsa/)

# Reference

1. [Sunjay Cauligi - Constant-time crypto programming with FaCT](https://www.youtube.com/watch?v=SSEHF_u79e4)
1. https://blog.acolyer.org/2018/07/06/oblix-an-efficient-oblivious-search-index/
1. https://cryptography.pizza/
1. [HACL∗: A Verified Modern Cryptographic Library](https://eprint.iacr.org/2017/536.pdf)
1. [How to Use Java Cryptography API Securely](https://www.youtube.com/watch?v=3HIdaSgxMlo)
1. [A Graduate Course in Applied Cryptography](http://toc.cryptotextbook.net/home)
1. https://github.com/InstantWebP2P/tweetnacl-java
1. https://github.com/kevinburke/nacl
1. https://github.com/miracl/MIRACL
1. https://github.com/open-quantum-safe/liboqs
1. https://www.bearssl.org/bigint.html
1. https://timtaubert.de/blog/2018/08/bitslicing-an-introduction/
1. [CT-Wasm: Type-Driven Secure Cryptography for the Web Ecosystem](https://arxiv.org/abs/1808.01348)
1. https://arstechnica.com/information-technology/2013/10/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/
1. https://medium.com/@dbkats/a-gentle-introduction-to-attribute-based-encryption-edca31744ac6
1. https://cryptoswift.io/

# Language

1. https://cryptol.net/
1. [Formally Verified Cryptographic Web Applicationsin WebAssembly](https://eprint.iacr.org/2019/542.pdf)

# Randomness extractor

1. [An introduction to randomness extractors](https://cs.haifa.ac.il/~ronen/online_papers/ICALPinvited.pdf)

# Homomorphic Encryption

1. [Practical Homomorphic Encryption Over the Integers](https://arxiv.org/abs/1702.07588)