Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

Node.jsのcrypto.privateEncrypt()メソッド


crypto.privateEncrypt()は、関数で渡された特定の秘密鍵パラメーターを使用して、特定のデータコンテンツを暗号化するために使用されます。

構文

 crypto.privateEncrypt(privateKey、buffer)

パラメータ

上記のパラメータは以下のように記述されます-

  • privateKey –次のデータ型を含めることができます– Object、String、BufferまたはKeyObject。

    • キー –この鍵は、「PEM」でエンコードされた秘密鍵です。キーのタイプは、string、buffer、またはKeyObjectです。

    • パスフレーズ –これは秘密鍵のオプションのパスフレーズ値です。

    • パディング –これはcrypto.constantsで定義されたオプションの値です。

  • バッファ –このフィールドには、復号化するデータコンテンツが含まれます。可能なバッファタイプは、string、TypedArray、Buffer、ArrayBuffer、DataViewです。

privateEncrypt.jsという名前のファイルを作成し、以下のコードスニペットをコピーします。ファイルを作成したら、次のコマンドを使用して、以下の例に示すようにこのコードを実行します-

 node privateEncrypt.js 

privateEncrypt.js

 // crypto.privateEncrypt()メソッドのフローを示すNode.jsプログラム//暗号とfsモジュールのインポートconst crypto =require('crypto'); const fs =require( "fs");//キーの生成generateKeyPairSync()メソッドを使用するファイルgenerateKeyFiles(){const keyPair =crypto.generateKeyPairSync('rsa'、{modulusLength:530、publicKeyEncoding:{type:'spki'、format:'pem'}、privateKeyEncoding:{type:'pkcs8' 、形式:'pem'、暗号:'aes-256-cbc'、パスフレーズ:''}}); //次のファイルにキーを書き込みますfs.writeFileSync( "private_key"、keyPair.privateKey);} //生成キーの呼び出しmethodgenerateKeyFiles();//一時停止された文字列の暗号化functionencryptString(plaintext、publicKeyFile){const publicKey=fs。 readFileSync(publicKeyFile、 "utf8"); // privateEncrypt()メソッドと公開鍵を使用してデータを暗号化するconst Encryption =crypto.privateEncrypt(publicKey、Buffer.from(plaintext)); return encode.toString( "base64");}//次のデータは暗号化および復号化されますconstplainText ="TutorialsPoint!";//以下のメソッドを呼び出してstringconstencrypted =encodeString(plainText、 "./private_key"); / /プレーンtextconsole.log( "Plaintext:"、plainText); //暗号化されたtextconsole.log( "暗号化されたテキスト:"、encrypted); console.log();
を印刷します

出力

 C:\ home \ node>> node privateEncrypt.jsPlaintext:TutorialsPoint!Encrypted Text:AhphoL + l / e739LkdfCAm2XuiddgTG7jjdGlLviiRqD4LyTtxJmpkgq5bSkyI7Og4XlBtszBB9HLQRHT5j850ZAxGYA 

もう1つの例を見てみましょう。

 // crypto.privateEncrypt()メソッドのフローを示すNode.jsプログラム//暗号とfsモジュールのインポートconst crypto =require('crypto'); const fs =require( "fs");//キーの生成generateKeyPairSync()メソッドを使用するファイルgenerateKeyFiles(){const keyPair =crypto.generateKeyPairSync('rsa'、{modulusLength:530、publicKeyEncoding:{type:'spki'、format:'pem'}、privateKeyEncoding:{type:'pkcs8' 、形式:'pem'、暗号:'aes-256-cbc'、パスフレーズ:''}}); //次のファイルにキーを書き込みますfs.writeFileSync( "private_key"、keyPair.privateKey);} //生成キーの呼び出しmethodgenerateKeyFiles();//一時停止された文字列の暗号化functionencryptString(plaintext、publicKeyFile){const publicKey=fs。 readFileSync(publicKeyFile、 "utf8"); // privateEncrypt()メソッドと公開鍵を使用してデータを暗号化するconst Encryption =crypto.privateEncrypt(publicKey、Buffer.from(plaintext));暗号化を返す;}//次のデータは暗号化および復号化されますconstplainText="TutorialsPoint!";//以下のメソッドを呼び出してstringconstを暗号化しますencrypted=encodeString(plainText、 "./private_key");//プレーンtextconsole.logを印刷します("Plaintext:"、plainText); //暗号化されたtextconsole.log( "Encrypted Buffer:"、encrypted); console.log();
を印刷します

出力

 C:\ home \ node>> node privateEncrypt.jsPlaintext:TutorialsPoint!Encrypted Buffer: 

  1. Node.jsのcrypto.privateDecrypt()メソッド

    crypto.privateDecrypt()は、crypto.publicEncrypt()メソッドで対応する公開鍵を使用して以前に暗号化されたパラメーターで渡された秘密鍵を使用して、指定されたデータコンテンツを復号化するために使用されます。 構文 crypto.privateDecrypt(privateKey、buffer) パラメータ 上記のパラメータは以下のように記述されます- キー –オブジェクト、文字列、バッファ、またはKeyObjectの5種類のデータを含めることができます。 oaepHash –このフィールドには、OAEPパディングとMGF1に使用されるハ

  2. Node.jsのcrypto.getHashes()メソッド

    crypto.getHashes()メソッドは、サポートされているすべてのハッシュアルゴリズムの名前を含む配列を返します。暗号パッケージには、使用できるハッシュアルゴリズムの膨大なリストがあります。ただし、最も使用されている暗号化アルゴリズムは「MD5 –メッセージダイジェストアルゴリズム5」です。 構文 crypto.getHashes() パラメータ すべてのハッシュアルゴリズムのリストを返すためです。入力する必要はありません。 例 getHashes.jsという名前のファイルを作成し、以下のコードスニペットをコピーします。ファイルを作成したら、次のコマンドを使用して、以下の例に示すよ