Расшифровка зашифрованного файла с помощью openssl не работает с момента смены ОС (linux на windows)

1528
Zapp

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

Рабочий процесс выглядит следующим образом:

  1. Мы создали ключ, который мы асимметрично шифруем, используя открытый ключ, который они предоставили
  2. С помощью зашифрованного ключа мы делаем симметричное шифрование файла, который нам нужно отправить
  3. Затем мы сжимаем оба файла (ключ + файл)
  4. После получения они распаковывают файл
  5. Они расшифровывают ключ, используя свой закрытый ключ
  6. Затем они дешифруют файл, используя ключ дешифрования.

Вот используемые команды:

ON LINUX

  • openssl rand -base64 30 > my.key
  • chmod 700 my.key
  • openssl enc -aes-256-cbc -in myfile.zip -out myfile.bin -kfile my.key
  • openssl rsautl -encrypt -pubin -inkey supplier_key.pem -in my.key -out encrypted.key

НА ОКНАХ

  • openssl\bin\openssl.exe rand -base64 30 > my.key
  • openssl\bin\openssl.exe enc -aes-256-cbc -in myfile.zip -out myfile.bin -kfile my.key
  • openssl\bin\openssl.exe rsautl -encrypt -pubin -inkey supplier_key.pem -in my.key -out encrypted.key

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

Для этого я сначала был в среде cygwin, и она работала отлично. Но теперь я должен заставить его работать в полной среде Windows. Я адаптировал скрипт и загрузил программу openssl для Windows.

Но когда наш поставщик получает файл, шаг 6) не работает: /

У них есть эта ошибка:

> bad decrypt 6566:error:06065064:digital envelope > routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:325: 

Я абсолютно ничего не изменил в способе работы, сценарий в основном точно такой же, поэтому я не понимаю, почему не работает дешифрование файла (хотя они могут расшифровать ключ)

1
Какие именно команды вы используете для каждого шага шифрования? Вы пытались расшифровать файлы самостоятельно (если да, какие именно команды?) Какую версию OpenSSL вы используете? Какую версию использует поставщик? `openssl версия` RedGrittyBrick 12 лет назад 0
Вы уверены, что файл одинаков в обоих местах? Передайте контрольную сумму и попросите их проверить. Ignacio Vazquez-Abrams 12 лет назад 0
привет, вот используемая команда: ON LINUX openssl rand -base64 30> my.key chmod 700 my.key openssl enc -aes-256-cbc -in myfile.zip -out myfile.bin -kfile my.key openssl rsautl - encrypt -pubin -inkey supplier_key.pem -in my.key -out encrypted.key ON WINDOWS openssl \ bin \ openssl.exe rand -base64 30> my.key openssl \ bin \ openssl.exe enc -aes-256-cbc - в myfile.zip -out myfile.bin -kfile my.key openssl \ bin \ openssl.exe rsautl -encrypt -pubin -inkey supplier_key.pem -in my.key -out encrypted.key версии openssl отличаются незначительностью, но, как они могут расшифровать ключ, я полагаю, это не проблема. Спасибо. Zapp 12 лет назад 0

0 ответов на вопрос