Encryption 基于GPGME的对称加密
根据文档,gpgme的Encryption 基于GPGME的对称加密,encryption,gnupg,encryption-symmetric,gpgme,Encryption,Gnupg,Encryption Symmetric,Gpgme,根据文档,gpgme的gpgme\u op\u encrypt方法能够执行对称加密任务: gpgme_op_encrypt (gpgme_ctx_t ctx, gpgme_key_t recp[], gpgme_encrypt_flags_t flags, gpgme_data_t plain, gpgme_data_t cipher) 如果recp为NULL,则使用对称加密而不是公钥加密 表演。对称加密的密文可以用 gpgme_op_解密。注意,在这种情况下,加密后端需要 从用户检索密码短语
gpgme\u op\u encrypt
方法能够执行对称加密任务:
gpgme_op_encrypt (gpgme_ctx_t ctx, gpgme_key_t recp[], gpgme_encrypt_flags_t flags, gpgme_data_t plain, gpgme_data_t cipher)
如果recp为NULL,则使用对称加密而不是公钥加密
表演。对称加密的密文可以用
gpgme_op_解密。注意,在这种情况下,加密后端需要
从用户检索密码短语。对称加密目前正在使用中
仅OpenPGP加密后端支持
但用于对称加密的密钥来自哪里?是否有可能获取此密钥并将其传输到另一个设备(我想在其中解密文本)?将通过其中一个pinentry方法从用户处查询。特别强调您已经引用的文本的一部分:
如果recp为NULL,则执行对称加密而不是公钥加密。对称加密的密文可以用gpgme_op_decrypt解密请注意,在这种情况下,加密后端需要从用户检索密码短语。目前只有OpenPGP加密后端支持对称加密
我不知道您可以通过GPGME提取会话密钥,但您实际上并不需要:在另一端,您需要知道的是所使用的密码短语,并且会话密钥可以再次派生。当然,您也可以重新实现