The building blocks — one-way functions, symmetric ciphers, hash functions, and MACs
Before public keys and zero-knowledge proofs come the primitives they’re built on.