'use strict'; const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); const assert = require('assert'); const { generateKeyPairSync, } = require('crypto'); // Test sync key generation with key objects. { const { publicKey, privateKey } = generateKeyPairSync('rsa', { modulusLength: 512 }); assert.strictEqual(typeof publicKey, 'object'); assert.strictEqual(publicKey.type, 'public'); assert.strictEqual(publicKey.asymmetricKeyType, 'rsa'); assert.deepStrictEqual(publicKey.asymmetricKeyDetails, { modulusLength: 512, publicExponent: 65537n }); assert.strictEqual(typeof privateKey, 'object'); assert.strictEqual(privateKey.type, 'private'); assert.strictEqual(privateKey.asymmetricKeyType, 'rsa'); assert.deepStrictEqual(privateKey.asymmetricKeyDetails, { modulusLength: 512, publicExponent: 65537n }); }