Tôi nhận các tệp bên ngoài .pem
cần được chuyển đổi thành .p12
tệp - Tôi thêm tên người dùng và mật khẩu trong quy trình. (Tôi cần phải làm điều này để sử dụng một API của bên thứ ba.)Chuyển đổi SSL .pem thành .p12 có hoặc không có OpenSSL
Sử dụng openssl
, lệnh là ...
openssl pkcs12 -export -in xxxx.pem -inkey xxxx.pem -out xxx.p12 -passout pas:newpassword -name "newname"
tôi có thể chạy này từ một phiên Terminal và nó hoạt động hoàn hảo.
Tuy nhiên, tôi sẽ cần phải làm điều này thường xuyên và đã viết một lớp Java xử lý việc này và hơn thế nữa (ứng dụng của tôi chủ yếu là .jsp
với Tomcat và Apache). Khi tôi thử chạy lệnh tương tự từ Java sử dụng Runtime.exec
, tôi nhận được lỗi "không thể ghi" trạng thái ngẫu nhiên "đáng sợ" (Using OpenSSL what does "unable to write 'random state'" mean?).
Tôi giả sử rằng sự khác biệt là khi tôi chạy từ Java, người dùng không phải là "gốc".
Vì vậy, có cách nào tốt hơn để chuyển đổi từ pem sang .p12 bằng cách sử dụng thư viện Java thay vì thực thi chương trình dòng lệnh (tức là openssl) không?
Nếu không, tôi đoán tôi cần thực hiện một số cấu hình trên máy chủ của mình. Tôi không thể tìm thấy bất kỳ tập tin .md
ở bất cứ đâu trên máy chủ. Tệp openssl.cnf
chỉ có trong một thư mục lạ (/etc/pki/tls
). Tôi có cần tạo một tệp openssl.cnf
mới ở một nơi khác không?
'SC' là viết tắt của nhà cung cấp SpongyCastle. – EpicPandaForce