1'use strict'; 2 3const common = require('../common'); 4if (!common.hasCrypto) 5 common.skip('missing crypto'); 6 7const assert = require('assert'); 8const { 9 generateKeyPairSync, 10} = require('crypto'); 11 12// Test sync key generation with key objects. 13{ 14 const { publicKey, privateKey } = generateKeyPairSync('rsa', { 15 modulusLength: 512 16 }); 17 18 assert.strictEqual(typeof publicKey, 'object'); 19 assert.strictEqual(publicKey.type, 'public'); 20 assert.strictEqual(publicKey.asymmetricKeyType, 'rsa'); 21 assert.deepStrictEqual(publicKey.asymmetricKeyDetails, { 22 modulusLength: 512, 23 publicExponent: 65537n 24 }); 25 26 assert.strictEqual(typeof privateKey, 'object'); 27 assert.strictEqual(privateKey.type, 'private'); 28 assert.strictEqual(privateKey.asymmetricKeyType, 'rsa'); 29 assert.deepStrictEqual(privateKey.asymmetricKeyDetails, { 30 modulusLength: 512, 31 publicExponent: 65537n 32 }); 33} 34