As3 BigInteger возвращает неверный ответ

Я пытаюсь реализовать программу шифрования RSA во флэш-памяти. Я изучил работу с большими числами и нашел тип var BigInteger в пакете Crypto. Я начал играть с BigIntegers, но мои результаты никогда не были правильным ответом. Например, приведенный ниже код выведет 5911, когда ответ должен быть 9409. Любые данные об этой ошибке были бы замечательными.

var temp:BigInteger = new BigInteger(String(97));
temp = temp.pow(2);
trace(temp.toString());

Output = 5911

person user1182378    schedule 06.05.2012    source источник


Ответы (1)


Я не уверен, какой криптопакет вы имеете в виду, хотя это был as3crypto, но я не помню, чтобы в его реализациях был метод pow с такой подписью. Но в любом случае всегда надо помнить, с какой базой имеешь дело и для чего предназначена библиотека.

(9716)2 = 591116

Вы имеете дело с шестнадцатеричными, а не десятичными числами.

Подумайте об этой шикарной футболке с надписью «Есть 10 типов людей. Те, которые понимают бинарность, и те, кто не понимает». В этом случае предполагается, что "10" равно 102. Что равно 210. Неквалифицированные базы почти всегда портят всем настроение.

person J. Holmes    schedule 06.05.2012
comment
Большое спасибо, вы исправили проблему! - person user1182378; 06.05.2012