2025-09-05 12:01:10 +02:00
2025-09-05 00:17:32 +02:00
c
2025-09-04 23:14:40 +02:00
c
2025-09-04 23:14:40 +02:00
c
2025-09-04 23:14:40 +02:00
c
2025-09-05 12:01:10 +02:00
c
2025-09-05 11:59:29 +02:00
c
2025-09-04 23:14:40 +02:00
c
2025-09-05 12:01:10 +02:00
c
2025-09-04 23:14:40 +02:00
c
2025-09-04 23:14:40 +02:00
c
2025-09-04 23:14:40 +02:00

slow-libs single-header libraries

MIT licennced (see ./LICENSE)

Most libraries are not actually slow, but that is just the naming scheme.

Each library is documentated at the top of each header file

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

Cryptography 101

  • TODO: explain asymetric
  • TODO: compare symetrics
  • TODO: compare asymetrics
  • TODO: compare hashes
  • TODO: XOF
  • TODO: rng
  • TODO: length extension
  • TODO: password hashing

  1. the compiler might optimize the zeroing away ↩︎

  2. does not prevent against length-extension, by algorithm design. See Cryptography 101. ↩︎

Description
header-only C and C++ libraries
Readme MIT 251 KiB
Languages
C 67.9%
C++ 28.6%
Shell 3.5%