Не будут ли потеряны данные при отображении 6-битных значений в 4-битные значения в S-блоках DES? Если так, как мы можем повернуть его так, чтобы появился правильный вывод?
12
Не будут ли потеряны данные при отображении 6-битных значений в 4-битные значения в S-блоках DES? Если так, как мы можем повернуть его так, чтобы появился правильный вывод?
Ответы:
В каждом раунде применяется следующая операция:
Расшифровка выполняется следующим образом:
источник
См. Главу 5 учебника «Введение в современную криптографию» Каца и Линделла.
источник
Не вдаваясь во все математические размышления о Фейстеле (что я еще не понимаю на 100%), если вы посмотрите на это изображение из Википедии:
Вы можете видеть, что хотя 8 s-блоков действительно сжимают 48 бит до 32, из открытого текста исходит только 32 бита энтропии , поэтому вы можете получить другие 16 бит из ключа при дешифровании, что является магией, выполняемой ранее упомянутые функции Фейстеля.
источник