2017-10-18 13 views
0

pyjksを使用して信頼できる証明書を含むキーストアを読み込み、信頼できる証明書を追加しようとしましたが、ファイル( 'trust2.pub')から読み込みました。pyjksはkeytoolで開くことができないjksファイルを保存します

import jks 

ks = jks.KeyStore.load('trustore_file.jks', 'trustore_pass') 

new_entry = jks.TrustedCertEntry.new("trust2", open('trust2.pub', 'rb').read()) 

# Since I have not found an explicit way to add a new TrustedCertEntry, 
# I thought this would work (add the 'new_entry' in the ks.entries dict). 

ks.entries['trust2']=new_entry 

# save the file with the new cert. 

ks.save('trustore_file.jks', 'trustore_pass') 

これは実際に私が指定したパスワードを使用してファイルを再ロードしようとした場合、私が見ることができる新しいエントリ、とJKSファイルを保存します。しかし、私はUbuntuの中でのkeytoolでそれを開こうとする、またはWindowsでのキーストアエクスプローラとき、私は次のエラーを取得:だから

java.io.IOException: Short read of DER length

を、多分それは私がJKSファイルに新しいTrustedCertEntryを追加する方法ですが、私は可能性Pyjksはそれをロードするのに問題がないので、分かりません。

誰かがそれを助けることができれば、私は本当にそれを感謝します。

ありがとうございました

答えて

0

私はそれを理解しました。 .pubファイルをインポートするのは間違いでした。インポートするファイルはX.509形式です。他の誰かが同じミスを犯した場合は、ここに残します。

関連する問題