2012-02-28 19 views
2

私はidファイルに私設鍵と公開鍵が含まれていることを知っています。公開鍵はIdファイルの証明書の中にあり、秘密鍵はIDファイルの中にありますが、証明書にはありません。 質問は私のJavaコードを通してこれらのキーを取得する方法です。私はメールを暗号化し解読する必要があります。Lotus Dominoのメールの暗号化と復号化のための秘密鍵と公開鍵の取得

親切 サチン

答えて

0

公開鍵は、Dominoディレクトリで見つけることができます。電子メールを暗号化するために特別な処理を行う必要はありません。 Notes APIはそれを自動的に行います。

復号化は別の話です。秘密鍵の全体点は、それがプライベートであることです。現在のIDファイルの秘密鍵は、パスワードの入力後に利用できますが、他の秘密鍵にアクセスすることはできません。秘密鍵はパスワード派生鍵を使用して暗号化されており、その暗号化を回避する方法があれば、秘密ではありません。

ユーザーに送信されたメッセージを復号化しようとしている場合、そのユーザーのパスワードを使用して、現在のIDをそのユーザーのIDファイルに切り替える唯一の方法があります。

+0

あなたの迅速な対応に感謝します。 文書 'd'があるとします。私のidファイルは 'sachin.id'です。どうすれば暗号化してjavaで復号化できますか?私はどのように私のJavaコード内のIDを切り替えることができます。 –

+0

AFAIKでは、Javaコード内でIDを直接切り替えることはできません。 C APIコールSECFMSwitchToIDFileはそれを行いますが、Javaから呼び出すための詳細を調べる必要があります。これを行うとNotes Javaクラスが期待どおりに動作するかどうかは100%確信していません。 –

+0

私が聞いた別の方法は、Session.SetEnvironmentVarを使用してnotes.iniのKeyFilenameエントリをIDファイルを指すように変更し、新しいJavaプログラムを起動し、その作業が作業を行うことです。 KeyFilenameを元のものに戻します。 IDファイルにパスワードがある場合は、手動で入力するか、Notes C APIのExtension Manager機能を使用してパスワードを入力する必要があります。 Javaコードがエージェントとして実行されている場合、これがうまくいくかどうかは疑問です。 –

関連する問題