Вопрос по c++, rsa, encryption, winapi – Библиотека шифрования RSA для C ++ [закрыто]

30

Я занимаюсь разработкой приложения для Win32 и хотел бы использовать библиотеку шифрования RSA.Which library would you recommend?

Ваш Ответ

9   ответов
12

Я думаю, что OpenSSL - хороший выбор. Это в хорошем состоянии, и цена правильная :)

http://www.openssl.org

Он написан на C и сразу же может быть использован в программе на C ++.
Это также не C ++
Помните, что OpenSSL не совместим с GPL.
@ Леон, вы можете использовать OpenSSL с приложением GPL, это явная запись FAQ.openssl.org/support/faq.html#LEGAL2
Запись FAQ довольно ясна, она определенно совместима с системами, в которых OpenSSL поставляется по умолчанию, точно так же, как программа GPL может ссылаться на проприетарный libc, скажем, в AIX. Это может быть более серым в других системах, и нет никакого способа узнать наверняка, пока решение суда не будет принято по этому вопросу.
6

В качестве альтернативы рассмотрим LibTomCrypt (http://libtomcrypt.com/download.html)

Он написан на C и сразу же может быть использован в программе на C ++.
25

Если вы используете Win32, почему бы вам просто не использовать встроенный в Win32 crypto-API?

Вот небольшой пример того, как это работает на практике:

http://www.codeproject.com/KB/security/EncryptionCryptoAPI.aspx

Похоже, что это не C ++ для одного.
Потому что это крайне небезопасно, учитывая тот факт, что никто больше не доверяет Microsoft шифровать файлы. Zombies
Правда. Ответ был дан еще до криптовалюты Snowden / NSA.
Win API находится в C, который сразу же можно использовать в программе C ++.
Ага. Если вы предпочитаете интерфейс C ++, напишите обертку вокруг него. В любом случае, это может быть хорошей идеей на случай, если позже вы захотите изменить API.
18

Crypto ++ - У них есть проверенные DLL NIST FIPS для MSVC 6, 7.1 и 8 поверх обычных пакетов, созданных самим исходным кодом.

для меня это не вопрос, печать одобрения NIST очень много значит. Шифрование - это не та вещь, с которой вы хотите возиться - вы ДОЛЖНЫ быть уверены, что оно реализовано правильно & amp; не имеет дыр в безопасности.
0

Я бы порекомендовал библиотеку Miraclhttps://certivox.com/solutions/miracl-crypto-sdk/ но цена высокая.

4

Другая альтернативаlibbeecrypt, Очень зрелый продукт с реализациями на ассемблере на многих платформах.

1

Я использовал OpenSSL в прошлом и обнаружил, что это отличная библиотека для крипто-API, включая AES, RSA, 3DES.

6

Может бытьБотан это альтернатива? Это библиотека C ++ с лицензией BSD, которая поддерживает алгоритмы RSA.

6

Я использую следующую библиотеку:

http://www.efgh.com/software/rsa.htm

Это общественное достояние, компактное, автономное и хорошо работающее.

Он использует 16-битные целочисленные значения в качестве примитивных элементов. Это, вероятно, довольно медленно на современном оборудовании. Также, если я правильно понимаю, он использует наивную реализацию для работы pow / mod. Существуют более быстрые алгоритмы ...
Эта библиотека не использует отступы. Это значительное упущение.
Правда, я действительно улучшил это, добавив это. Проблема в том, что я потерял код :(. Это было не слишком сложно, хотя добавить ... Zombies

Похожие вопросы