
poseidon: a new hash function for zkp systems, by grassi et al. (2019) poseidon2: a faster version of the poseidon, by grassi et al. (2023) survey of attacks on poseidon and poseidon2, by grassi et al. (2024)
2.5 KiB
2.5 KiB
cryptographic primitives
bls signatures
- used in the beacon chain to verify large numbers of signtures.
- invented by dan boneh, ben lynn, and hovav shacham.
- in optimistic rollups such as arbitrum and optimism, each tx must be accompanied by its own signature. these signatures are stored on l1 calldata, a read-only format that's commited as a part of a transaction rather than to (expensive) contract storage.
- storing txs and signatures as calldata is the cheapst method available for rollups to keep data on l1.
- the key property of bls signatures is that multiple signatures can be combined into one - so only one aggregate signature needs to be verified and stored on-chain (meaning less gas fees).
shamir's secret sharing
- secret sharing algorithm to distribute private information among a group, and the secret cannot be revealed unless a quorum of the groups acts together to pool their knowledge.
- the secret is matematically divided into parts. if an attacker steals some shares, it's impossible for the attacker to reconstrcut the secret unless they have stolen a quorum number of shares.
- uses cases: password managers, encrypted emails, and crypto wallets.
cool resources
cool courses
cool papers
- bls multi-signatures with pub-key aggregation (2018)
- ring confidential transactions (2015)
- intro to differential power analysis (2011)
- pairing-friendly elliptic curves of prime order (2005)
cool talks
- an introduction to cryptography, new and old, by atheartengineer et al. (2024)
- programmable cryptography devcon panel, by barry and gang (2024)