[Cryptography] Uses for novel or unusual kinds of cryptographic primitives

Pierre Abbat phma at bezitopo.org
Fri Jul 11 19:22:20 EDT 2025


A friend of mine is trying to get me a grant for some ideas I have, including 
two ciphers and a hash function. They are a whole-message cipher, a keyed 
hash, and a self-synchronizing byte stream cipher. I'd like to include 
possible uses in the grant application.

A whole-message cipher is like a block cipher, except that the block can be 
arbitrarily long. The one I've invented is Wring, which I've mentioned here 
before. Wring is an iterated product cipher with four steps, but one could 
make a whole-message Feistel cipher with a 4×4 S-box for the odd nybble, or 
other kinds. If you encrypt a 1 MB message with a 16 byte block cipher in CBC 
mode, every bit of plaintext influences every block of ciphertext from there 
on, but the last byte of plaintext has no influence on the first byte of 
ciphertext. In a whole-message cipher, every byte of ciphertext depends on 
every byte of plaintext. It can be used as an all-or-nothing transform. What 
are some other uses of whole-message ciphers (besides, of course, encrypting)?

Twistree, which I've also mentioned here, is a keyed hash function. It's not a 
construction in which the key is concatenated with the message and then 
they're hashed together; rather, the key determines the S-boxes used in the 
compression function. Is there any protocol in which keying like this is 
important?

I've also invented a self-synchronizing byte stream cipher named Daphne. Most 
stream ciphers I've heard of, including pre-computer ones like Enigma, are 
synchronous ciphers: if a byte or letter gets corrupted in transmission, that 
byte or letter, and no other, will be corrupt on decrypting, and if a byte or 
letter is lost, the decryption produces garbage from then on. In a self-
synchronizing cipher, a byte or letter being corrupted or dropped from 
ciphertext results in several or many bytes or letters being corrupted in the 
plaintext, then the cipher recovers and produces correct plaintext. When would 
this property be important?

Pierre
-- 
.i toljundi do .ibabo mi'afra tu'a do
.ibabo damba do .ibabo do jinga
.icu'u la ma'atman.





More information about the cryptography mailing list