Как сделать IvParameterSpec случайным, но все же расшифровать - PullRequest
6 голосов
/ 02 сентября 2011

Для шифрования в Java ... в статье http://cwe.mitre.org/data/definitions/329.html говорится, что вектор инициализации должен каждый раз отличаться, но если я использую для расшифровки другой IV, чем тот, который я использовал для шифрования, я получаю мусорсимволы вместо данных, которые я ожидал.

Как правильно шифровать на одном сервере и расшифровывать на другом, не передавая IV между и обратно между серверами?

Общая техникапохоже, что он жестко закодирован в байтовом массиве, но предположительно это небезопасно ???

1 Ответ

10 голосов
/ 02 сентября 2011

I считаю, IV похож на соль - это не секрет, он просто используется для введения дополнительного элемента случайности, чтобы одно и то же сообщение, зашифрованное тем же ключом, каждый раз получалось по-разному.

Таким образом, вы можете передать IV, используемый для шифрования, как часть зашифрованного значения, так же, как вы сохранили бы соль вместе с хешем для хэшированного значения.

Конечно, я мог быбыть совершенно неверным ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...