Java - загрузить пару ключей RSA из шестнадцатеричной строки

Рассмотрим следующую пару ключей:

Private: FC0EB454EAD538D54C36E1FB715D81F02410B832CB5AD9356C99306E3C65D856F7FB43BDBA3129C25758188E0F4751C58DAB9FA607C3ECC9D15A5D587C485265E20A3FF208F5FA5069AAB5C6371BD79507297F873F2B5511DA95D0E142C68CCBB58B7F45023845ACABFE1117FCDD5F99F6F92E9101AAECE0301CF5BA21A3D76B

Public: DE8F12BBEFBB6CBBC182717029E2ADCBC013AF2C078A1D7CCA6F07D6FBF0E2E0C2A04EF819BDD29334D5E3FFA7526271F3E000E4F5732203A6FBC1CEAD1F00958018A7D39FFA99914A938741838832DC15A380BE330561DB290E1F38A4FD997DA923542BB6338A78004B619756A26397B332471E7E8646B6B2F94F6A2ABC4337

Есть ли способ загрузить их как закрытый ключ и открытый ключ соответственно?

Эти ключи были сгенерированы сторонним программным обеспечением, и мне нужно использовать его для шифрования некоторых файлов.

заранее спасибо


person Marcos Supridatta    schedule 14.03.2015    source источник
comment
Как они были сгенерированы, в каком формате они (я не имею в виду шестнадцатеричный)?   -  person Artjom B.    schedule 14.03.2015
comment
Hex.decode() может работать из библиотеки BouncyCastle, чтобы получить его как byte[], но это хороший вопрос, как создать KeyPair с использованием byte[].   -  person EpicPandaForce    schedule 14.03.2015
comment
Не похоже на RSA для меня.   -  person President James K. Polk    schedule 16.03.2015
comment
Я тоже. Он был указан в документации, но не похож на пару ключей RSA.   -  person Marcos Supridatta    schedule 16.03.2015
comment
Открытый ключ имеет смысл как модуль RSA; оно не простое, но также не содержит мелких, легко находимых множителей и имеет размер 1024 бита. Но что такое общественный представитель? И частный компонент имеет правильный размер для показателя расшифровки, но он больше, чем предполагаемый модуль. Математика RSA все еще работает для такого показателя расшифровки, но я не знаю ни одного программного обеспечения, которое выдает показатель расшифровки больше, чем (p-1)*(q-1).   -  person President James K. Polk    schedule 17.03.2015


Ответы (2)


Извини, я виноват.

Я не совсем понял плохую правительственную документацию. На самом деле не было возможности через открытый ключ определить закрытый ключ с таким же количеством символов. Дело было в использовании модуля и общедоступного показателя.

person Marcos Supridatta    schedule 14.04.2015

Вы можете использовать метод parseHexBinary из класса DatatypeConverter, чтобы получить ключи в виде массива байтов.

Затем вам нужно использовать криптографическую архитектуру Java для шифрования.

person dimm    schedule 14.03.2015
comment
Вы упустили самое интересное. - person Artjom B.; 14.03.2015