我可以configurationWndows NDES服务器使用三重DES(3DES)algorithm进行PKCS#7答案encryption吗?

我正在运行SCEP客户端来在NDES服务器上注册证书。 如果OpenSSL不在FIPS模式 – 一切工作正常。

在FIPS模式下,我得到以下错误:

pkcs7_unwrap():pkcs7.c:708] error decrypting inner PKCS#7 139968442623728:error:060A60A3:digital envelope routines:FIPS_CIPHERINIT:disabled for fips:fips_enc.c:142: 139968442623728:error:21072077:PKCS7 routines:PKCS7_decrypt:decrypt error:pk7_smime.c:557: 

这是因为NDES服务器使用DESalgorithm来encryption返回的PKCS#7数据包。 我使用了下面的debugging代码:

 /* Copy enveloped data from PKCS#7 */ bytes = BIO_read(pkcs7bio, buffer, sizeof(buffer)); BIO_write(outbio, buffer, bytes); p7enc = d2i_PKCS7_bio(outbio, NULL); /* Get encryption PKCS#7 algorithm */ enc_alg=p7enc->d.enveloped->enc_data->algorithm; evp_cipher=EVP_get_cipherbyobj(enc_alg->algorithm); printf("evp_cipher->nid = %d\n", evp_cipher->nid); 

最后一个string总是打印:

evp_cipher-> nid = 31

在openssl-1.0.1c / include / openssl / objects.h中定义

 #define SN_des_cbc "DES-CBC" #define LN_des_cbc "des-cbc" #define NID_des_cbc 31 

我在我的代码中使用3DESalgorithm进行PKCS7请求encryption(pscep.enc_alg =(EVP_CIPHER *)EVP_des_ede3_cbc()),NDES服务器接受这些请求,但总是返回使用DESencryption的答案。

我可以configurationWndows NDES服务器使用三重DES(3DES)algorithm进行PKCS#7答案encryption吗?

我得到了微软支持(Diana Zhang)的回答,他说这是不可能的: http : //social.technet.microsoft.com/Forums/en-US/winserversecurity/thread/83a6680c-6610-4cf7-a4fa-1bc63f32a8be

 After in-depth research, want to let you know: The content encryption algorithm for P7 in hardcoded to DES(in CBC mode). Regards, Diana