[#] Format preserving encryption или как правильно шифровать номера кредиток
habrabot(difrex,1) — All
2016-09-30 13:00:03


![][1]
Привет, %username%!
Сегодня у нас немного пятничная криптотема
В марте 2016 года вышла интересная публикация от NIST под номером [800-38G][2] (pdf) и с очень интересным называнием **Recommendation for Block Cipher Modes of Operation:Methods for Format-Preserving Encryption**
в которой отписываются два алгоритма, позволяющие не менять формат данных при шифровании. То есть, если это будет номер кредитки
1234-3456-4567-6678, то после шифрования он тоже останется номером, просто другим. Например
6243-1132-0738-9906.
И это не простой xor, там AES и вообще всё серьезно. Давайте немного поговорим о FPE вообще, и об одной из реализаций в частности.
[А так можно вообще?][3]

[1]: https://habrastorage.org/files/989/5ce/1df/9895ce1dfebd42fb84ead32f8c00f5f0
[2]: http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38G.pdf
[3]: https://habrahabr.ru/post/311200/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut