2012-02-24 3 views
0

Я пытаюсь реализовать обмен ключами diffie-hellman-group1-sha1 для моего выполнения node.js протокола SSH.node.js diffie-hellman-group1-sha1 error

Я хочу использовать встроенный крипто-модуль для этого. Мой код:

var hellman = crypto.createDiffieHellman(
"FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1"+ 
"29024E088A67CC74020BBEA63B139B22514A08798E3404DD"+ 
"EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245"+ 
"E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED"+ 
"EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE65381"+ 
"FFFFFFFFFFFFFFFF","hex"); 
hellman.setPrivateKey(crypto.randomBytes(20)); 
hellman.generateKeys(); 

Но node.js не может его выполнить. Он выдает следующую ошибку: «Ошибка: не инициализирована»

Кто-нибудь знает, что происходит не так?

ответ

0

Это кажется ошибка в Node.js: https://github.com/joyent/node/issues/2338

Node версия 7.5 включает решение этой проблемы, где можно получить предварительно заданный diffieHellmans using crypto.getDiffieHellman("modp2");

Он был добавлен в следующем запросе нажимного : https://github.com/joyent/node/pull/2638

Все предопределенные Диффи hellmans можно посмотреть здесь: https://gist.github.com/1899353