2012-02-11 24 views
7

mỗi step 3b of this Jetty guide for using Keytool and OpenSSL, last step, tôi đang làm lệnh:java keytool cho "khối thức không đúng cách đệm"

keytool -importkeystore -srckeystore jetty.pkcs12 -srcstoretype PKCS12 -destkeystore keystore 

Khi tôi chạy lệnh, tôi nhận được: keytool error: java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded

Bạn có biết làm thế nào để giải quyết điều này?

Trả lời

2

Trong trường hợp của mình, tôi đã thực hiện một số bước bằng cách sử dụng Windows openSSL mà tôi đã tải xuống và các bước khác bằng cách sử dụng openSSL đã có sẵn trên hộp CentOs6. Khi tôi thực hiện tất cả các bước trên hộp CentOs/linux, lỗi đã biến mất.

Secondary lẽ helful OpenSSL lưu ý linux và Godaddy, lưu ý khi bạn bắt đầu quá trình "tạo CSR" quá trình, sử dụng 2048 trong việc tạo ra các site.key, cụ thể là:

openssl genrsa -des3 out site.key 2048

----------------- cập nhật ------------------

Tôi nghĩ rằng lỗi này thay vào đó có liên quan đến một vấn đề mật khẩu tôi đã thực hiện trong các bước.

Sau khi một trong những hiện:

openssl pkcs12 -export -inkey jetty.key -in cert-chain.txt -out jetty.pkcs12 

công cụ nhắc nhở, Nhập khẩu Mật khẩu:

mật khẩu này vào, sau đó phải được sử dụng trong bước tiếp theo, là tôi đã làm được:

java -classpath jetty-util-6.1.19.jar:jetty-6.1.19.jar org.mortbay.jetty.security.PKCS12Import jetty.pkcs12 keystore 

tuy nhiên mỗi this documentation bước đó có thể có vẻ như nhau là:

keytool -importkeystore -srckeystore jetty.pkcs12 -srcstoretype PKCS12 -destkeystore keystore 
+1

Bạn cũng có thể tránh chuyển đổi và sử dụng 'PKCS12' làm' keystoreType' trong Jetty. – Bruno

2

Tôi cũng gặp phải một vấn đề tương tự. Cuối cùng tôi cũng nhận ra rằng kho khóa đích có mật khẩu khóa cũng được chỉ định. Vì vậy, tôi đã phải sử dụng một đối số thêm 'destkeypass' để nhập các khóa thành công.

Các vấn đề liên quan