Кроссплатформенная библиотека OpenPGP

Я хотел бы написать (мобильное) клиентское и серверное приложение, очень похожее на PGP на самом нижнем уровне приложений. Пользователи должны иметь возможность шифровать данные для нескольких получателей. Кроме того, мне нужны функции управления ключами для создания ключей и обмена открытыми ключами пользователей с сервером приложений. Я хотел бы использовать одну библиотеку для ios, android и серверной части (может быть, windows или linux). Клиентская и серверная части будут иметь одно и то же ядро ​​исходного кода C++, которое будет предлагать базовые функции шифрования. Код C++ будет вызываться JNI или другими подходящими интерфейсами. Я уже нашел следующие библиотеки:

  1. GnuPG — полезный, но не совсем простой в использовании. Поэтому искал и нашел:
  2. GPGME — хороший API. Я начал с этого, пока не узнал, что LGPL/GPL несовместимы с условиями использования Apple App Store.
  3. OpenPGP-SDK. Домашняя страница проекта больше недоступна. Страница переместилась? Эта библиотека все еще поддерживается? Более того, я читал , что он может шифровать только файлы длиной не более ~ 8000 бит. Это правда?
  4. Netpgp - Можно ли использовать его в разных операционных системах? Означает ли это, что библиотека будет проверять текущую операционную систему или мне придется использовать порты Netpgp для разных платформ?
  5. UNnetpgp - я думаю, что это, к сожалению, подходит только для iOS

Я пропустил библиотеку? Что проще всего использовать, если я хочу работать с широким спектром платформ? Может быть, нет никакой библиотеки OpenPGP, которая могла бы удовлетворить мои требования...

Моей первой идеей было использовать OpenSSL. Потому что я уже использую его для шифрования TLS. Но в одном из моих последних вопросов я узнал, что должен использовать реализацию OpenPGP. Поскольку в настоящее время я получил отзывы о том, чтобы пойти по тому же пути, что и с OpenSSL, я теперь в замешательстве.

Ответы (1)

Существует наш SecureBlackbox , который реализует полную функциональность OpenPGP и доступен для всех основных платформ. Однако это не бесплатно.

Такое совпадение. Буквально несколько минут назад я прочитал о вашем продукте. Я приму это к сведению. Но поскольку это студенческий проект, наш финансовый бюджет очень ограничен, если вообще отсутствует. Спасибо, в любом случае.
@little_planet у нас есть скидки и даже предлагаются бесплатные лицензии.
@ Eugene Mayevski 'EldoS Corp: поскольку вы, кажется, очень опытны в области openPGP, я могу задать вам вопрос новичка. Можно ли зашифровать текст (нет файла, он будет храниться в базе данных) с помощью вашей библиотеки? И пока я извлекаю вашу HTML-документацию, на каком языке написана ваша библиотека?
@little_planet да, вы можете обрабатывать любые данные в памяти. Основной язык — pascal, который компилируется для разных целей.
Я использовал этот продукт и рекомендую его.