私はidファイルに私設鍵と公開鍵が含まれていることを知っています。公開鍵はIdファイルの証明書の中にあり、秘密鍵はIDファイルの中にありますが、証明書にはありません。 質問は私のJavaコードを通してこれらのキーを取得する方法です。私はメールを暗号化し解読する必要があります。Lotus Dominoのメールの暗号化と復号化のための秘密鍵と公開鍵の取得
親切 サチン
私はidファイルに私設鍵と公開鍵が含まれていることを知っています。公開鍵はIdファイルの証明書の中にあり、秘密鍵はIDファイルの中にありますが、証明書にはありません。 質問は私のJavaコードを通してこれらのキーを取得する方法です。私はメールを暗号化し解読する必要があります。Lotus Dominoのメールの暗号化と復号化のための秘密鍵と公開鍵の取得
親切 サチン
最も簡単な方法は、すべてのユーザー間で共有証明書を作成し、Javaコードにそれを追加することです
感謝を助けます。
次のサンプルは、自己署名証明書を作成する方法を示しています。
公開鍵は、Dominoディレクトリで見つけることができます。電子メールを暗号化するために特別な処理を行う必要はありません。 Notes APIはそれを自動的に行います。
復号化は別の話です。秘密鍵の全体点は、それがプライベートであることです。現在のIDファイルの秘密鍵は、パスワードの入力後に利用できますが、他の秘密鍵にアクセスすることはできません。秘密鍵はパスワード派生鍵を使用して暗号化されており、その暗号化を回避する方法があれば、秘密ではありません。
ユーザーに送信されたメッセージを復号化しようとしている場合、そのユーザーのパスワードを使用して、現在のIDをそのユーザーのIDファイルに切り替える唯一の方法があります。
あなたの迅速な対応に感謝します。 文書 'd'があるとします。私のidファイルは 'sachin.id'です。どうすれば暗号化してjavaで復号化できますか?私はどのように私のJavaコード内のIDを切り替えることができます。 –
AFAIKでは、Javaコード内でIDを直接切り替えることはできません。 C APIコールSECFMSwitchToIDFileはそれを行いますが、Javaから呼び出すための詳細を調べる必要があります。これを行うとNotes Javaクラスが期待どおりに動作するかどうかは100%確信していません。 –
私が聞いた別の方法は、Session.SetEnvironmentVarを使用してnotes.iniのKeyFilenameエントリをIDファイルを指すように変更し、新しいJavaプログラムを起動し、その作業が作業を行うことです。 KeyFilenameを元のものに戻します。 IDファイルにパスワードがある場合は、手動で入力するか、Notes C APIのExtension Manager機能を使用してパスワードを入力する必要があります。 Javaコードがエージェントとして実行されている場合、これがうまくいくかどうかは疑問です。 –