Ключ определяет секрет защиты, IV задаёт начальные условия операции. Во многих схемах IV можно хранить рядом с шифротекстом, но нельзя выбирать его произвольно или повторять вопреки правилам режима.
IV применяют в режимах блочного шифрования и других конструкциях с начальными параметрами. Например, CBC требует непредсказуемого IV, а для ряда счётчиковых и AEAD-схем критично неповторение значений с одним ключом. Эти требования не взаимозаменяемы.
Разработчик задаёт одинаковый IV для всех документов «для удобства расшифрования». Команда заменяет решение на документированную схему библиотеки, где параметры формируются по правилам режима и передаются вместе с данными. Проверяет не только успешное расшифрование, но и обработку подменённого сообщения.
Обычно нет. Но это не отменяет требований к его формированию и защите сообщения от подмены.
Случайный IV всегда подходит?Не любой. Нужны правильная длина, источник и выполнение условий конкретного режима.
Можно брать IV из пароля?Такой самодельный подход может нарушить требования режима. Используйте документированную схему и её API.