Blog

ChaCha20 Variants in the Wild

Written by Dominik Pantůček on 2026-10-08

researchcryptography

You use ChaCha20 as your symmetric stream cipher of choice for encrypted containers and then you try to map those containers on a simple TLS connection. If you really tried, you've already noticed the issue. ChaCha20 is NOT a single cipher anymore.

...
...

Define Deforestable in Qi

Written by Dominik Pantůček on 2026-09-10

racket

Having dealt with equality allowed us to add the missing link between a year of stream fusion development and a new rolling Qi release. Let us have a quick look at what is finally out in the fields and which operations are now optimized!

...

Equality Considered Harmful

Written by Dominik Pantůček on 2026-08-27

racket

Implementing optimized versions of certain operations is typically both useful and fun. However, once the implementations have to replicate a particular equality predicate, verifying - or at least testing - becomes a nightmarish experience. Let us dive knee-deep in the behavioral predicates of different equality definitions.

...

Validating OpenAPI Schemas

Written by Dominik Pantůček on 2026-08-13

python

As a part of a larger effort to design a complex authentication system, the developers asked for an OpenAPI (formerly Swagger) specification for one RESTful API of the system in question. Although it is pretty straightforward to write both in YAML and JSON, we needed validation and it turned out that there is a validation tool that is both easy to install and use!

...