3 ms·
Gimli: a cross-platform permutation
- alanbernstein 9y agoI'm not a crypto person, I have no idea what this is. To me "permutation" refers to the mathematical concept, an "ordered arrangement of the elements of a set". It's far from obvious to me why anyone would publish such a thing. The disambiguation page doesn't list anything relevant either.
- ghkbrew 9y agoAlso, not a crypto person so someone correct me if I'm wrong, But. The algorithm presented is essentially a way of determining the next 384bit number in a sequence given the last one. If that sequence contains every 384bit number before forming a cycle then it defines a mathematical permutation of the 384bit numbers. This sort of process is used in e.g. pseudo-random number generators. Naively, you can for can keep 384bits internal state then at each step output the lowest 64bits as your pseudo-random number.
- alanbernstein 9y agoFunny, I've implemented such a thing before. I would call it a permutation iterator.