This directory contains the Crypto Component of the IC, and various smaller crates that offer selected crypto functionality. The following table describes the contents of the subdirectories, and the available crates, where [Wasm] indicates that the corresponding crate can be compiled to WebAssembly (Wasm).
Subdirectory | Crate(s) | Description / Notes |
---|---|---|
The main Crypto Component |
||
|
|
Crypto Component used by a replica. It contains SecretKeyStore, which manages and protects the secret keys owned by a node. |
|
- |
benchmarks of the Crypto Component. |
|
- |
various tests of the Crypto Component. |
Miscellaneous public crates |
||
|
|
validation utils for public keys of a node |
|
|
hashing algorithms, incl. SHA256 and SHA224 |
|
|
interfaces of TLS functionality (used by both |
|
|
computation of hash trees and witnesses |
|
|
utils for basic signatures resp. threshold signatures |
|
|
miscellaneous utils for testing |
Structures/crates for internal use only |
||
|
(many crates) |
the actual implementation of the functionalities offered
via the public crates from other subdirectories
(crates from this directory should not be used directly outside of |