
توليد زوج مفاتيح RSA بصيغة PEM من JS خالص
أنشئ زوج مفاتيح RSA PEM من JS نقي
var keypair = require('keypair');
var pair = keypair();
console.log(pair);
المخرجات
$ node example.js
{ public: '-----BEGIN RSA PUBLIC KEY-----\r\nMIGJAoGBAM3CosR73CBNcJsLv5E90NsFt6qN1uziQ484gbOoule8leXHFbyIzPQRozgEpSpi\r\nwhr6d2/c0CfZHEJ3m5tV0klxfjfM7oqjRMURnH/rmBjcETQ7qzIISZQ/iptJ3p7Gi78X5ZMh\r\nLNtDkUFU9WaGdiEb+SnC39wjErmJSfmGb7i1AgMBAAE=\r\n-----END RSA PUBLIC KEY-----\n',
private: '-----BEGIN RSA PRIVATE KEY-----\r\nMIICXAIBAAKBgQDNwqLEe9wgTXCbC7+RPdDbBbeqjdbs4kOPOIGzqLpXvJXlxxW8iMz0EaM4\r\nBKUqYsIa+ndv3NAn2RxCd5ubVdJJcX43zO6Ko0TFEZx/65gY3BE0O6syCEmUP4qbSd6exou/\r\nF+WTISzbQ5FBVPVmhnYhG/kpwt/cIxK5iUn5hm+4tQIDAQABAoGBAI+8xiPoOrA+KMnG/T4j\r\nJsG6TsHQcDHvJi7o1IKC/hnIXha0atTX5AUkRRce95qSfvKFweXdJXSQ0JMGJyfuXgU6dI0T\r\ncseFRfewXAa/ssxAC+iUVR6KUMh1PE2wXLitfeI6JLvVtrBYswm2I7CtY0q8n5AGimHWVXJP\r\nLfGV7m0BAkEA+fqFt2LXbLtyg6wZyxMA/cnmt5Nt3U2dAu77MzFJvibANUNHE4HPLZxjGNXN\r\n+a6m0K6TD4kDdh5HfUYLWWRBYQJBANK3carmulBwqzcDBjsJ0YrIONBpCAsXxk8idXb8jL9a\r\nNIg15Wumm2enqqObahDHB5jnGOLmbasizvSVqypfM9UCQCQl8xIqy+YgURXzXCN+kwUgHinr\r\nutZms87Jyi+D8Br8NY0+Nlf+zHvXAomD2W5CsEK7C+8SLBr3k/TsnRWHJuECQHFE9RA2OP8W\r\noaLPuGCyFXaxzICThSRZYluVnWkZtxsBhW2W8z1b8PvWUE7kMy7TnkzeJS2LSnaNHoyxi7Ia\r\nPQUCQCwWU4U+v4lD7uYBw00Ga/xt+7+UqFPlPVdz1yyr4q24Zxaw0LgmuEvgU5dycq8N7Jxj\r\nTubX0MIRR+G9fmDBBl8=\r\n-----END RSA PRIVATE KEY-----\n' }
يعتمد الأداء بشكل كبير على حجم البتات للمفتاح الخاص المُنشأ. مع 1024 بت، تحصل على مفتاح في 0.5s-2s، ومع 2048 بت يستغرق 8s-20s، على نفس الجهاز. نظراً لأن هذا سيعوق حلقة الأحداث أثناء إنشاء المفتاح، تأكد من أن ذلك مقبول أو قم بتفريغ عملية فرعية أو تشغيله داخل webworker.
اكتشف @maxogden كيفية استخدام هذه الوحدة لإنشاء مدخلات لملف authorized_keys:
var keypair = require('keypair');
var forge = require('node-forge');
var pair = keypair();
var publicKey = forge.pki.publicKeyFromPem(pair.public);
var ssh = forge.ssh.publicKeyToOpenSSH(publicKey, '[email protected]');
console.log(ssh);
احصل على زوج مفاتيح RSA PEM.
يمكن أن تكون opts:
bits: حجم المفتاح الخاص بالبت. الافتراضي: 2048.e: الأس العام المستخدم. الافتراضي: 65537.مع npm قم بـ
$ npm install keypair
لـ digitalbazaar على مشروعهم forge، هذه المكتبة هي مجرد غلاف حول بعض وظائف forge.
BSD / GPL