0

私のアプリケーションでは、パスワードを一度暗号化し、ツールが実行される回数だけ復号化する秘密鍵を使用したいと考えています。

アプリケーションは次のように実行されます。

  • ユーザーはツールを使用してパスワードを暗号化します。
  • 次に、ユーザーはそのパスワードをプロパティ ファイルに貼り付けます。
  • 次回ツールが実行されると、そのパスワードが読み取られ、復号化されてログインされます。

ここで、パスワードを暗号化するときに、暗号化のためだけに別のツールを使用して暗号化を行っているなどの問題に直面しています。そのため、復号化しようとすると、キーは生成されたキーとは異なります。これら2つのツール間で秘密鍵を共有するにはどうすればよいですか..

ありがとう..

4

4 に答える 4

0

あなたの主な関心事は、アプリケーション間でキーを共有することだと思います。

私の意見では、これを行う最善の方法は、公開鍵と秘密鍵のペアを使用することです。公開鍵を配布して、秘密鍵を安全に保つことができます。

複数のアプリを使用してパスワードを生成する場合は、公開鍵を使用して暗号化します。1 つのアプリがパスワードを生成し、複数のアプリがそれを使用する場合、秘密鍵で暗号化でき、他のすべてのアプリはバンドルされた公開鍵を使用してパスワードを復号化できます。

ポイントは、キーペアの配布を把握したら、アプリケーションの設計方法に応じて、公開または非公開のいずれかで暗号化または復号化できることです。

キーペアを作成し、データを暗号化/復号化する方法の詳細については、暗号化の例を参照してください。

于 2013-07-24T19:23:09.727 に答える
0

対称暗号化と非対称暗号化を混同していると思います。対称暗号化を行う場合、同じキーを使用できます。非対称暗号化では、2 つの鍵があります。パスワードを暗号化できる公開鍵ですが、この鍵で復号化することはできません。これは秘密鍵でのみ可能です。したがって、これらのツール間でキーを共有する必要はありません。名前が示すように、秘密鍵がシステムから離れることはありません。

于 2013-07-24T11:25:55.650 に答える
0

色々とごちゃ混ぜに…

秘密鍵を使用して何かを暗号化する場合、対応する公開鍵が復号化に必要になります。

本当にこれを行いたい場合は、公開鍵へのパスをプロパティ ファイルに入れることもできます。

あなたが説明したのは、1つのキーのみを使用する対称暗号です。

また、dasblinkenlight が指摘したように、パスワードを解読可能にするとセキュリティ上の問題が発生するため、アプリケーションを別の方法で設計できるかどうかをテストしてください...

于 2013-07-24T11:27:58.943 に答える
0

皆様、ご回答ありがとうございます。

私はデータ暗号化に非常に慣れていません。初めてみたり..

基本的にスクリプトを使用して実行されるツールに取り組んでいます。コードは、アクセスできる人がほとんどいない安全なサーバーに保管されます。唯一の懸念は、ユーザーがパスワードを暗号化せずにプロパティファイルに保持したくないということでした。そのため、他の誰かがプロパティ ファイルを構成しようとしても、パスワードを理解できないはずです。存在するため、3 つの異なるソースに対して 3 つの異なるログ資格情報が存在します。そして、それぞれの管理者が同じファイルからそれらを構成します。

私はそれに対して1つの解決策を見つけました。

http://www.code2learn.com/2011/06/encryption-and-decryption-of-data-using.html

私の問題に最適なソリューションはどれですか...

:)

于 2013-07-24T11:51:38.813 に答える