Шифрование и дешифрование с использованием MD5 и 3DES

Я новый разработчик программы шифрования и дешифрования в swift4, поэтому не могли бы вы подсказать мне, как я могу кодировать. Я уже пытаюсь CryptoSwift, но я не могу этого сделать. Я снова пытаюсь кодировать, используя AES Encryption & Decryption, но сталкиваюсь с неверной длиной ключа, потому что моя длина ключа больше 32 бит. Я искал более 32-битного ключа и vi в функции AES Encryption & Decryption, но больше никаких идей, поэтому мне нужны ваши предложения.

1 ответ

потому что моя длина ключа больше 32 бит.

3DES использует 168, 112 или 56-битный ключ, а AES использует 128, 192 или 256-битный ключ. Вам просто нужно выбрать один из этих вариантов.

Если у вас есть нестандартный размер ключа, теоретически вы можете хешировать (sha, md5,..) ключ и брать необходимое количество бит из хеша.

Если вы хотите использовать предоставленный пользователем пароль в качестве ключа, вы скорее получите ключ, используя любую основанную на пароле функцию деривации, такую ​​как PBKDF2 или любой другой медленный хеш.

Другие вопросы по тегам