Tôi có chứng chỉ C.pfx đã được giao cho tôi để làm việc với OpenSSL. Chứng chỉ C.pfx có đường dẫn Chứng nhận sau: C-> B-> AOpenSSL: không thể lấy chứng chỉ của tổ chức phát hành địa phương
Tôi đã chuyển đổi C.pfx thành PEM bằng lệnh sau: openssl pkcs12 -in C.pfx -out C.pem -nodes - - HOẠT ĐỘNG OK
Tôi đã mở chứng chỉ C.pem trong trình chỉnh sửa tệp và thấy rằng nó có cả hai phần PRAATE KEY và CERTIFICATE RSA.
Tôi cũng thấy cả chứng chỉ A và B được cài đặt trong kho lưu trữ Chứng nhận hành vi xác thực Roor đáng tin cậy trong Windows XP.
Mục đích là để ký tên, mã hóa, giải mã và xác minh một tập tin thử nghiệm sử dụng OpenSSL cho Windows phiên bản 1.0.1c (nó hiện là phiên bản mới nhất)
tôi sử dụng các lệnh sau:
--Để SIGN--
openssl smime -sign -signer C.pem -in test.txt -out test.tmp -- WORKS OK
--Để ENCRYPT--
openssl smime -encrypt -in test.tmp -out test.enc C.pem -- WORKS OK
--Để giải mã -
openssl smime -decrypt -in test.enc -recip C.pem -inkey C.pem -out test1.tmp -- WORKS OK
--Để VERIFY--
openssl smime -verify -in test1.tmp -CAfile "C.pem" -out notes1.txt -- FAILS
tôi đã sử dụng MMC console để xuất khẩu B và A chứng chỉ CER tập tin và sau đó chuyển đổi chúng để PEM sử dụng OpenSSL. Sau đó tôi đã cố gắng sau 2:
openssl smime -verify -in test1.tmp -CAfile "A.pem" -out notes1.txt -- FAILS
openssl smime -verify -in test1.tmp -CAfile "B.pem" -out notes1.txt -- FAILS
Cả 3 nỗ lực để xác minh thất bại với các lỗi sau:
Verification failure
3672:error:21075075:PKCS7 routines:PKCS7_verify:certificate verify error:.\crypt
o\pkcs7\pk7_smime.c:342:Verify error:unable to get local issuer certificate
Tôi đang làm gì sai?
+1 cho 'openssl smime -verify -noverify' chỉ là những gì tôi cần! – PassKit
@PassKit Mặc dù lệnh có vẻ tự mâu thuẫn nhất. –