Bouncy Castle

Перейти к навигацииПерейти к поиску
Bouncy Castle
Типкриптографическое API
Написана наC# и Java
Операционная система Кроссплатформенное программное обеспечение
Аппаратные платформы Java Virtual Machine и .NET Framework
Последняя версия
Репозиторийgit.bouncycastle.org/rep…
ЛицензияMIT License[2]
Сайтbouncycastle.org

Bouncy Castle — программная библиотека, в которой представлена обширная функциональность из области криптографии. Существуют реализации библиотеки на языках программирования Java и C#. Библиотека включает в себя как реализации большого числа криптографических функций, так и поддержку стандартных высокоуровневых криптографических API соответствующих платформ, а также содержит низкоуровневые проприетарные API для более гибкого и эффективного доступа к функционалу.

Bouncy Castle был создан в Австралии и американские ограничения на экспорт криптографических алгоритмов[англ.] на него не распространяются.

История

Разработка Bouncy Castle была начата двумя коллегами, которые устали писать заново библиотеки криптографии каждый раз при смене работы. На дизайн Bouncy Castle сильно повлияло то, что его создатели активно работали с платформой JavaME. В результате чего появились два различных набора библиотек.

Архитектура

В основе архитектуры лежит набор низкоуровневых API, которые реализуют все криптографические алгоритмы. Причина, по которой используется именно низкоуровневое API, заключается в том, что в некоторых устройствах, работающих на платформе JavaME, очень ограничены ресурсы памяти либо когда доступ к библиотеке JCE невозможен (такая ситуация может возникнуть, например, при использовании апплетов).

Криптопровайдер, совместимый с JCE, построен на низкоуровневом API. Таким образом, исходный код криптопровайдера JCE может служить примером того, как решить многие «насущные» проблемы криптографии, используя низкоуровневый API.

См. также

Примечания

  1. https://bouncycastle.org/releasenotes.html
  2. Bouncy Castle - LICENSE. Архивировано из оригинала 3 июля 2012 года.

Ссылки