Возведение в степень больших чисел. Алгоритм DH
Хочу сгенерировать на клиенте ключи по алгоритму Диффи — Хеллмана
формула такая A = g^a mod p Для работы с большими числами использую BigNumber Есть такой код пусть будут такие чилса var g = new BigNumber('5377521262291226325198505011805525673063229037935769709693'); var p = new BigNumber('3805108391982600717572440947423858335415441070543209377693'); var a = new BigNumber('3156118255187236272351299799643367174059608931247836642734'); Вычисляю по формуле так: var pow1 = g.pow(a); var publ = pow1.mod(p); Но при выполнении данного кода браузер виснет т.к. слишком долго идет var pow1 = g.pow(a); Как можно это реализовать подругому ? Вот пример где работает данный алгоритм http://www-cs-students.stanford.edu/~tjw/jsbn/ecdh.html но я не пойму по какой формуле происходит возведение в степень. |
Часовой пояс GMT +3, время: 20:23. |