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 moduleconst crypto = require( 'crypto' ); // Calling getDiffieHellman method// with its parameter groupNameconst diffiehellmangrp = crypto.getDiffieHellman( 'modp14' ); // Prints DiffieHellmanGroup key exchange objectconsole.log( "Key exchange object : " , diffiehellmangrp); |
Выход:
Объект обмена ключами: DiffieHellmanGroup
{_handle: {verifyError: [Getter]}, verifyError: 0}Пример 2:
// Node.js program to demonstrate the// crypto.getDiffieHellman() method // Including crypto moduleconst crypto = require( 'crypto' ); // Calling two getDiffieHellman method// with its parameter, groupNameconst diffiehellmangrp1 = crypto.getDiffieHellman( 'modp14' );const diffiehellmangrp2 = crypto.getDiffieHellman( 'modp14' ); // Generating keysdiffiehellmangrp1.generateKeys();diffiehellmangrp2.generateKeys(); // Computing secretconst diffiehellmangrp1sc = diffiehellmangrp1.computeSecret(diffiehellmangrp2.getPublicKey(), null , 'hex' ); const diffiehellmangrp2sc = diffiehellmangrp2.computeSecret(diffiehellmangrp1.getPublicKey(), null , 'hex' ); // Checking if both the secrets are same or notconsole.log(diffiehellmangrp1sc === diffiehellmangrp2sc); |
Выход:
правда
Ссылка: https://nodejs.org/api/crypto.html#crypto_crypto_getdiffiehellman_groupname