Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 强制GPGME中的GPG使用CAST5以外的密码_C++_Encryption_Gnupg_Gpgme - Fatal编程技术网

C++ 强制GPGME中的GPG使用CAST5以外的密码

C++ 强制GPGME中的GPG使用CAST5以外的密码,c++,encryption,gnupg,gpgme,C++,Encryption,Gnupg,Gpgme,我想使用GPGME加密数据(无文件)并将数据保存在数据库中。我了解到,使用OpenPGP作为协议的GPGME将使用GPG和CAST5对数据进行加密。CAST5,如果我用以下命令检查gpg2,我的命令行会告诉我: LANG=C gpg2 --verbose --symmetric gpg: using cipher CAST5 我不知道为什么它不使用。但是我想我没有最新的版本(debian系统中的包管理器也没有) 我真的很想通过在上面提到的GPG.conf文件中设置相应的值,将GPG配置为使用A

我想使用GPGME加密数据(无文件)并将数据保存在数据库中。我了解到,使用OpenPGP作为协议的GPGME将使用GPG和CAST5对数据进行加密。CAST5,如果我用以下命令检查gpg2,我的命令行会告诉我:

LANG=C gpg2 --verbose --symmetric
gpg: using cipher CAST5
我不知道为什么它不使用。但是我想我没有最新的版本(debian系统中的包管理器也没有)

我真的很想通过在上面提到的GPG.conf文件中设置相应的值,将GPG配置为使用AES进行加密。因此,我试图通过使用
gpgme\u get\u engine\u info
并查看
home\u dir
来获取有关文件位置的信息,但此路径似乎为空。
文件名是
usr/bin/gpg2
。但是,没有gpg.conf。严格来说,我的系统中根本没有gpg.conf。 那么,如果这个文件丢失了,我该怎么办?或者有没有一种方法可以通过GPGME编程设置该值?我只发现

gpgme_ctx_set_engine_info (gpgme_ctx_t ctx, gpgme_protocol_t proto, const char *file_name, const char *home_dir)
因此,我可以创建一个新的配置并使用此函数设置路径。但这假设我知道这个文件的样子。遗憾的是,我没有。我找到了一个pgp.conf文件的示例,其中显示了如何设置密码和哈希函数的首选值。这是一段摘录:

# list of personal digest preferences. When multiple digests are supported by
# all recipients, choose the strongest one
personal-cipher-preferences AES256 AES192 AES CAST5

# list of personal digest preferences. When multiple ciphers are supported by
# all recipients, choose the strongest one
personal-digest-preferences SHA512 SHA384 SHA256 SHA224

# message digest algorithm used when signing a key
cert-digest-algo SHA512

# This preference list is used for new keys and becomes the default for
# "setpref" in the edit menu
default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed