Существует ли простой алгоритм шифрования целых чисел? То есть, функция E (i, k), которая принимает n-разрядное целое и ключ (любого типа) и создает другое, несвязанное n-битное целое число, которое при подаче во вторую функцию D (E (i)) k) (вместе с ключом) производит исходное целое число?Простое целочисленное шифрование
Очевидно, что есть несколько простых операций, которые вы можете выполнять, но все они, похоже, создают четко связанные выходы (например, последовательные входы приводят к последовательным выходам). Кроме того, конечно, существуют криптографически сильные стандартные алгоритмы, но они не дают достаточно малых выходов (например, 32-разрядных). Я знаю, что любая 32-разрядная криптография может быть грубой, но я не ищу что-то криптографически сильное, просто что-то, что выглядит случайным. Теоретически это должно быть возможно; в конце концов, я мог бы просто создать словарь, случайно соединяя все целые числа. Но я надеялся на что-то меньшее, чем память.
Редактировать: Спасибо за ответы. Простые решения XOR не будут работать, поскольку аналогичные входы будут давать аналогичные результаты.
Да, но я не знаю никаких блок-шифров, которые работают с такими небольшими размерами блоков. – tloflin
Ах, что Skip32 - это то, что я ищу. Является ли это обобщением для n-битовых блоков? – tloflin
FPE - именно то, что я искал, спасибо! – tloflin