В сети представлены два алгоритма.
В обоих алгоритмах первая часть одинакова ...
1. Pad the last partial plaintext block
with 0.
2. Encrypt the whole padded plaintext
using the standard CBC mode.
3. Swap the last two ciphertext blocks.
4. Truncate the ciphertext to the length of the original plaintext
Однако для расшифровки есть два метода ... Я действительно не знаю, какой из них правильный
Этот был взят из здесь
1. If the ciphertext length is not a multiple of the block size, say it is n bits short, then pad it with the last n bits of the block cipher decryption of the last full ciphertext block.
2. Swap the last two ciphertext blocks.
3. Decrypt the ciphertext using the Cipher Block Chaining mode.
4. Truncate the plaintext to the length of the original ciphertext.
Это правильная процедура расшифровки? Отменит ли это то, что произошло в первой части шифрования?
Я запутался, поскольку Статья Википедии имеет ту же процедуру шифрования, но расшифровка отличается
Может ли специалист по криптографии пролить свет на меня? Большое спасибо заранее:)