Ошибка BouncyCastle

Я разрабатываю приложение для Android. В этом приложении я создаю свой собственный закрытый ключ, передавая парольную фразу, идентификатор пользователя и ключи. При создании закрытого ключа пишет "Ошибка: org.bouncycastle.openpgp.PGPException: невозможно создать шифр: CAST5/CFB/NoPadding"

Я проверил logcat, а также раздел предупреждений в Eclipse, но там есть ошибка. Итак, почему я получаю эту ошибку и как ее решить. Любая помощь приветствуется!

Я использую bcpg-jdk15on-150.jar и bcprov-jdk15on-150.jar,

который я скачал с http://www.bouncycastle.org/latest_releases.html.

ИЗМЕНИТЬ

решение переименования одного или обоих файлов jar не работает. Когда я запускаю приложение, оно говорит, что невозможно выполнить dex: несколько файлов dex определяют Lorg/bouncycastle/apache/bzip2/BZip2Constants; и Ошибка преобразования в формат Dalvik: невозможно выполнить dex: несколько файлов dex определяют Lorg/bouncycastle/apache/bzip2/BZip2Constants; Я думаю, что есть проблема с дублированием некоторых файлов в двух файлах jar. Может ли кто-нибудь предложить мне решение по этому поводу?

Спасибо


person Devesh Garg    schedule 23.07.2014    source источник
comment
SpongyCastle   -  person Oleg Estekhin    schedule 23.07.2014
comment
Спасибо. Это сработало! :)   -  person Devesh Garg    schedule 24.07.2014
comment
@ОлегЭстехин Ответь!   -  person Maarten Bodewes    schedule 24.07.2014


Ответы (1)


Используйте последнюю версию BouncyCastle и настройте безопасность в своем коде следующим образом:

    Security.removeProvider(BouncyCastleProvider.PROVIDER_NAME);
    Security.insertProviderAt(new BouncyCastleProvider(), 1);

Он устанавливает библиотеку Bouncy Castle в качестве предпочтительного поставщика услуг безопасности; Конфигурация провайдера Android по умолчанию имеет BC в позиции 3, поэтому этот код удалит его и снова вставит BC в позицию 1. Это решило проблему для меня.

person Tomasz Hadam    schedule 31.08.2016
comment
как @Tomasz Hadam объясняет, например, с помощью BC v1.61, удалите встроенный BC и вставьте свою версию gradle/jar BC в позицию 1 - person kabayaba; 28.03.2019