c
This commit is contained in:
24
README.md
24
README.md
@@ -3,19 +3,43 @@ MIT / Public Domain (see ./LICENSE)
|
||||
|
||||
Most libraries are not actually slow, but that is just the naming scheme.
|
||||
|
||||
|
||||
## Features of all libraries
|
||||
- C89 (or later) compatible
|
||||
- intuitive to use
|
||||
- don't pollude namespace
|
||||
- configurable with pre-processor macros
|
||||
|
||||
|
||||
## Libraries
|
||||
- `./chacha20.h`
|
||||
- `./slowarr.h`: C templated dynamic array
|
||||
- `./slowgraph.h`: WIP graph library (this is the only library that is actually slow)
|
||||
|
||||
|
||||
## CLI Tools
|
||||
CLI utils built with slow-libs.
|
||||
|
||||
- `./slowgraph/sgraph-adj.c`: dgtxt graphs <-> adjacency matrix
|
||||
|
||||
|
||||
## Cryptography Security Considerations
|
||||
All cryptography libraries list possible side channel attacks in their documentation
|
||||
|
||||
| Library | Zeroing memory | Timing attacks | Notes |
|
||||
| ------------ | -------------- | -------------- | ----- |
|
||||
| `chacha20.h` | manual [^1] | impossible | [^2] |
|
||||
|
||||
[^1]: the compiler might optimize the zeroing away
|
||||
[^2]: does not prevent against length-extension, by algorithm design. See Cryptography 101.
|
||||
|
||||
|
||||
## Cryptography 101
|
||||
- TODO: explain asymetric
|
||||
- TODO: compare symetrics
|
||||
- TODO: compare asymetrics
|
||||
- TODO: compare hashes
|
||||
- TODO: XOF
|
||||
- TODO: rng
|
||||
- TODO: length extension
|
||||
- TODO: password hashing
|
||||
|
Reference in New Issue
Block a user