我的Visual Studio DevOps管道最近停止工作。
错误与OpenSSL解密步骤有关:

digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:crypto/evp/evp_enc.c:537:

我的构建管道直到1月10日才起作用(并且我没有更改定义)。该版本使用与今天(1.142.2)相同版本的OpenSSL任务

DevOps的完整输出:

2019-01-28T23:52:54.3117192Z ==============================================================================
2019-01-28T23:52:54.3117249Z Task         : Decrypt File (OpenSSL)
2019-01-28T23:52:54.3117286Z Description  : A thin utility task for file decryption using OpenSSL.
2019-01-28T23:52:54.3117338Z Version      : 1.142.2
2019-01-28T23:52:54.3117375Z Author       : Microsoft Corporation
2019-01-28T23:52:54.3117408Z Help         :
2019-01-28T23:52:54.3117441Z ==============================================================================
2019-01-28T23:52:54.7074315Z [command]C:\Program Files\Git\usr\bin\openssl.exe des3 -d -in D:\a\1\s\signingCertificatesEncrypted\my-release-key.keystore.enc -out D:\a\1\s\signingCertificatesDecrypted\my-release-key.keystore -pass pass:***
2019-01-28T23:52:57.4818326Z *** WARNING : deprecated key derivation used.
2019-01-28T23:52:57.4818778Z Using -iter or -pbkdf2 would be better.
2019-01-28T23:52:57.5070499Z bad decrypt
2019-01-28T23:52:57.5071102Z 25769902144:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:crypto/evp/evp_enc.c:537:

最佳答案

自从今天早上以来,我遇到了同样的问题。
经过大量调试之后,我们发现问题出在“解密文件”任务的默认“ MessageDigest”,并非总是相同。

代替创建“解密文件”任务,而是使用包含以下内容的powershell脚本创建“ PowerShell”任务:

openssl des3 -md md5 -d -in signingCertificatesEncrypted\my-release-key.keystore.enc -out signingCertificatesDecrypted\my-release-key.keystore -pass pass:$Env:CERT_PASS

不要忘记添加CERT_PASS环境变量。

如果它不起作用,请尝试将-md md5切换为-md XXX(使用其他MessageDigest类型)

关于azure-devops - Visual Studio DevOps管道中存在严重的解密错误(用于工作),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54413496/

10-11 01:45