Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java Card > Инициализация ключей RSA


Автор: romul 29.5.2008, 18:01
Код

byte [] Key_Exp = {};
byte [] Key_Mod = {};
... // Инициализация ключей
Key keyRSAPublic = KeyBuilder.buildKey(KeyBuilder.TYPE_RSA_PUBLIC, KeyBuilder.LENGTH_RSA_1024, false);
((RSAPublicKey) key).setExponent(Key_Exp, (short)0, N_X_Length);
((RSAPublicKey) key).setModulus (Key_Mod, (short)0, N_X_Length);
... // Создание Cipher
Cipher cipher = Cipher.getInstance(algorithm, false);
cipher.init(key, Cipher.MODE_DECRYPT);
... // работа с данными


"Инициализация ключей" - Вот тут происходит то, что мне непонятно.
Обычно Modulus ключа гораздо меньше экспоненты.
Длина экспоненты 1024/8. А модулы, например 3-10.
Но инициализировать модулу Key_Mod с длиной меньше чем 1024/8 не получается - вываливается с ошибкой. А хотелось бы  smile 

Я что-то делаю не правильно?

Автор: Alexandr87 29.5.2008, 18:41
Цитата(romul @  29.5.2008,  21:01 Найти цитируемый пост)
Обычно Modulus ключа гораздо меньше экспоненты.
Длина экспоненты 1024/8. А модулы, например 3-10.

обычно длина modulus равна длине privexp, а pubexp обычно значительно меньше.

Автор: romul 30.5.2008, 12:17
Цитата(Alexandr87 @ 29.5.2008,  18:41)
обычно длина modulus равна длине privexp, а pubexp обычно значительно меньше.

Да, спасибо Вам, я просто ошибся. Сказывается малый  опыт работы с ключами. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)