Node.js | crypto.getDiffieHellman () Метод
Опубликовано: 3 Августа, 2021
Метод crypto.getDiffieHellman () используется для создания предопределенного объекта обмена ключами DiffieHellmanGroup. Здесь предпочтительными группами являются 'modp1', 'modp2', 'modp5', которые определены в RFC 2412 и 'modp14', 'modp15', 'modp16', 'modp17', 'modp18', определенные в RFC 3526.
Синтаксис:
crypto.getDiffieHellman (имя группы)
Параметры: этот метод принимает один параметр groupName, который имеет строковый тип.
Тип возвращаемого значения : возвращает объект обмена ключами DiffieHellmanGroup.
Примеры ниже иллюстрируют использование метода crypto.getDiffieHellman () в Node.js:
Пример 1:
// Node.js program to demonstrate the // crypto.getDiffieHellman() method // Including crypto module const crypto = require( 'crypto' ); // Calling getDiffieHellman method // with its parameter groupName const diffiehellmangrp = crypto.getDiffieHellman( 'modp14' ); // Prints DiffieHellmanGroup key exchange object console.log( "Key exchange object : " , diffiehellmangrp); |
Выход:
Объект обмена ключами: DiffieHellmanGroup {_handle: {verifyError: [Getter]}, verifyError: 0}
Пример 2:
// Node.js program to demonstrate the // crypto.getDiffieHellman() method // Including crypto module const crypto = require( 'crypto' ); // Calling two getDiffieHellman method // with its parameter, groupName const diffiehellmangrp1 = crypto.getDiffieHellman( 'modp14' ); const diffiehellmangrp2 = crypto.getDiffieHellman( 'modp14' ); // Generating keys diffiehellmangrp1.generateKeys(); diffiehellmangrp2.generateKeys(); // Computing secret const diffiehellmangrp1sc = diffiehellmangrp1 .computeSecret(diffiehellmangrp2.getPublicKey(), null , 'hex' ); const diffiehellmangrp2sc = diffiehellmangrp2 .computeSecret(diffiehellmangrp1.getPublicKey(), null , 'hex' ); // Checking if both the secrets are same or not console.log(diffiehellmangrp1sc === diffiehellmangrp2sc); |
Выход:
правда
Ссылка: https://nodejs.org/api/crypto.html#crypto_crypto_getdiffiehellman_groupname