Я ищу две функции, концептуально похожие на них:
// returns the encrypted text
string encrypt( string public_key, string pass_phrase, string text );
// returns the original text
string decrypt( string private_key, string pass_phrase, string encrypted_text );
где string
может быть char*
, a std::string
или что-то легко конвертируемое в эти два. И где public_key
и private_key
могут быть в основном любыми, от ключей, сгенерированных с помощью некоторых команд (gpg/ssl stuff или любого другого), к ключам, сгенерированным с помощью других простых функций.
Я просмотрел несколько библиотек криптографии (libgcrypt, libgpgme, openssl...), но совсем не просто реализовать такие функции с этими библиотеками: им нужны не поверхностные знания об асимметричном шифровании и много кода.
В любом случае эта задача не кажется необычной. Как реализовать две функции выше?