Как подписать цифровую подпись для комплекта приложений macos и исполняемого файла linux - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть Java-приложение Swing и исполняемый файл сборки для трех платформ Window (exe), macOS (.app) и linux (.sh).У меня также есть файл .p12, и мне нужна подпись для трех исполняемых файлов платформы.

Я подписан для exe-файла в Windows с помощью osslsigncode и могу проверить как вкладку цифровой подписи в свойствах exe-файла.

Теперь я столкнулся с проблемой: я не знаю, как подписать файл .p12 в исполняемый файл macOS (.app) и исполняемый файл linux (.sh).

Я также не понимаю, можем ли мыподписать файл .p12 для macOS и исполняемого файла Linux на сервере сборки linux, например цифровой подписи Windows?

Я использовал сервер сборки linux для сборки исполняемого файла для трех платформ

Я также пытаюсь использовать opensslкоманда как:

openssl rsautl -sign -inkey MyFile.p12 -passin pass:mypass > /path/to/my/sh/file

но появляется ошибка: невозможно загрузить закрытый ключ

Есть ли какие-либо предложения для меня?

Спасибо всем.

Удачного кодирования ..

1 Ответ

0 голосов
/ 27 ноября 2018

вы можете извлечь закрытый ключ из .p12 (pfx) с помощью этой команды

openssl pkcs12 -in file.p12 -nocerts -out key.pem

, затем вы можете подписать свой файл

openssl rsautl -sign -inkey key.pem -in yourfile -out sigfile

и проверить с помощью

openssl pkeyutl -verify -pubin -inkey pubkey.pem -sigfile sigfile -in yourfile

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

sha512sum yourfile | openssl rsautl -sign -inkey yourkey -out sigfile
sha512sum yourfile | openssl pkeyutl -verify -pubin -inkey pubkey.pem -sigfile sigfile
...