2015-12-09 2 views
1

Существует большое шестнадцатеричное значение:Как преобразовать большое шестнадцатеричное значение в целое число в nodejs?

var Hex = "ad6eb61316ff805e9c94667ab04aa45aa3203eef71ba8c12afb353a5c7f11657e43f5ce4483d4e6eca46af6b3bde4981499014730d3b233420bf3ecd3287a2768da8bd401f0abd7a5a137d700f0c9d0574ef7ba91328e9a6b055820d03c98d56943139075d"; 

Как я могу преобразовать его в большом целое число в Node.js? Я попытался найти, но я нашел

var integer = parseInt(Hex, 16); 

Но это не сработает, если я положил большое значение шестнадцатеричного значения. Я думаю. результат,

1.1564501846672726e+243 

Как вернуть нормальное большое число? Я хочу использовать это значение для модуля в RSA-шифровании. На самом деле я не знаю, что мне нужно его преобразовать или нет.

ответ

3

Вам нужны точные целые числа для модульной арифметики для RSA, но largest integer in JavaScript is 9007199254740991 without losing precision. Вы не можете представить большее целое число как число. Вам нужно будет разработать способ модульной арифметики со многими фрагментами большого целого числа или просто использовать одну из доступных, например, арифметику большого числа в JSBN, которая также обеспечивает полную реализацию RSA, включая дополнение PKCS # 1 v1.5.

+0

Спасибо. Я красным отвечу и нашел какой-то документ об этом, но обычный JSBN не смог использовать без браузера. К счастью, я нашел этот github: https: //github.com/eschnou/node-bignumber Но у меня есть ошибка. Вы знаете, что не так? посетите страницу: http: //stackoverflow.com/questions/34180984/rsakey-is-not-defined-in-nodejs. – Juntae

Смежные вопросы