GeistHaus
log in · sign up
8 pages link to this URL
RaptorQ (RFC6330) and performance optimization in Rust

I recently decided to learn more about Rust, and wrote a high performance RaptorQ (RFC6330) library. RaptorQ is a fountain code, and the core of the algorithm is a lot of matrix math over GF(256) – which translates into lots of XORs and reads from lookup tables. After getting the initial implementation working, I set about optimizing it. Below is a journal of the steps I took to profile and optimize the implementation.

1 inbound link article en post Blog
AES-GCM and breaking it on nonce reuse

In this post, we will look at how the security of the AES-GCM mode of operation can be completely compromised when a nonce is reused.

2 inbound links article en blog cryptographyalgorithm
How to Become Immortal 101: Shamir's Secret Sharing

Have you ever wondered how to protect your master password from getting lost? Or how to create a perfect democracy where nuke access is shared between most important people in the government equally? Or how to achieve immortality by splitting your soul and putting the pieces into objects? 🪄 If so, then you’ve come to the right place. Join me, my friend, on this discovery of Shamir’s secret sharing.

1 inbound link article en blog Algorithm
High Performance Content Defined Chunking

In Pcompress, I have implemented a variant of the rolling hash based Content Defined Chunking that provides both deduplication accuracy and high performance. This post attempts to explain the chunk…

2 inbound links article en StorageTechnical Content Defined ChunkingData CompressionData deduplicationHash functionMichael O. RabinPcompressRabin fingerprintRolling hash