В BouncyCastle FAQ есть некоторые записи, связанные с деталями реализации RSA.
Я лично не нашел ничего о том, что Sun и BC провайдеры несовместимы, и я предлагаю использовать встроенную реализацию RSA Java, если BouncyCastle-зависимость может быть полностью удалена этим. Вы должны добавлять внешние зависимости только в том случае, если от этого есть определенная выгода.
Если вы используете библиотеку BC где-то еще в своем проекте, я думаю, не имеет значения, какой поставщик использовать.
EDIT
J2ME не включает в себя реализацию RSA. Поэтому, если вы планируете иногда переносить свое приложение на J2ME, библиотека BouncyCastle - это правильный путь.
> BC в вашем случае "по совпадению" первый предпочтительный провайдер На самом деле нет. Просто проверенный, первый конструктор работает хорошо, даже если поставщик BC не установлен. У Java есть собственный провайдер для RSA под названием «SunRsaSign». – hudolejev
и совместимость с ними? Могу ли я использовать одного и других клиентов? –
@Tom Я думаю, самое лучшее - попробовать это, но я думаю, что проблем не должно быть. Я лично использовал реализацию BC и OpenSSL и не сталкивался с какими-либо проблемами. – hudolejev