暗号化は、第三者による干渉から通信を保護するためのさまざまな技術の研究と実践です。ネットワークセキュリティに使用されます。私たちは、機密データを保護するための方法と慣行の開発に努めます。暗号化の唯一の目的は、攻撃者からデータを保護することです。非対称暗号化は、公開/秘密キー暗号化とも呼ばれます。名前が示すように、秘密キーは秘密のままですが、公開キーは配布できます。暗号化は、2 つのキー間の数学的関係であり、1 つは暗号化用、もう 1 つは復号化用です。たとえば、2 つのキー「A1」と「A2」がある場合、キー「A1」が暗号化に使用されると、「A2」が復号化に使用され、その逆も同様です。
非対称暗号化には RSA アルゴリズムを使用し、最初にキーのペア (公開キー、秘密キー) を生成します。
Java における非対称暗号化の暗号化
非対称キーを生成するには、次の手順に従うことができます −
まず、SecureRandom クラスを使用して公開キーと秘密キーを生成します。乱数を生成するために使用されます。
RSA アルゴリズムを使用してキーを生成します。このクラスは、キー生成アルゴリズムを示す文字列変数を渡すために使用される getInstance() メソッドを提供し、キー ジェネレーター オブジェクトに戻ります。
乱数を渡して、2048 ビットのキー サイズでキー ジェネレーター オブジェクトを初期化します。 -
上記のメソッドを実装します −
###構文### リーリー ###出力###// Java program to create a // asymmetric key package java_cryptography; import java.security.KeyPair; import java.security .KeyPairGenerator; import java.security .SecureRandom; import javax.xml.bind .DatatypeConverter; // Class to create an asymmetric key public class Asymmetric { private static final String RSA = "RSA"; // Generating public and private keys // using RSA algorithm. public static KeyPair generateRSAKkeyPair() throws Exception { SecureRandom secureRandom = new SecureRandom(); KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(RSA); keyPairGenerator.initialize( 2048, secureRandom); return keyPairGenerator .generateKeyPair(); } // Driver code public static void main(String args[]) throws Exception { KeyPair keypair = generateRSAKkeyPair(); System.out.println( "Public Key is: " + DatatypeConverter.printHexBinary( keypair.getPublic().getEncoded())); System.out.println( "Private Key is: " + DatatypeConverter.printHexBinary( keypair.getPrivate().getEncoded())); } }
次の手順を実行してプログラム コードを作成できます −
暗号クラスを使用して、暗号化と復号化という 2 つの異なるモードを作成します。暗号化キーは秘密キー、復号化キーは公開キーです。
暗号に対して doFinal() メソッドを呼び出します。これにより、データに対して単一部分の操作を実行して暗号化/復号化することも、複数部分の操作を完了してバイト配列を返すこともできます。
最後に、暗号化に ENCRYPT_MODE を使用した後、暗号文を取得しました。
-
以上がJava の非対称暗号化暗号の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境
