Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to generate a small 30 or 32 bit PRP. I am going to use that PRP in an open web service and anyone will be able to get any number of plaintext-cyphertext pairs.

I've found an algorithm called FastPRP and the problem statement fits my requirements perfectly. However the performance seems quite low for 30-32 bit range. I need a high-performant point evaluations for both PRP and an inverse PRP.

Are there any 32-bit PRP algorithms (less secure probably) that allow a faster point evaluations?

share|improve this question
In the recent past I experimented with AES modified to remove the shiftrows operation, and a custom key schedule, that turned it into a 4-way parallel block cipher with hardware acceleration – Richie Frame Sep 23 '15 at 0:17
Related:… – otus Sep 23 '15 at 6:32
up vote 3 down vote accepted

If you need a 32 bit PRP, might I suggest the Speck cipher? It isn't greatly secure (with a 32 bit block size, the only option is a 64 bit key, which isn't great), however it's extremely fast.

share|improve this answer
Thank you. I will use Speck for alfa testing because it's quite fast and simple. 48-bit version is also a nice option in case i need a bigger domain. – voidmaster Sep 23 '15 at 20:54

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.