我打算编写一个小应用程序,其基本思想是用户能够彼此共享加密的信息。是的,类似于PGP。因此,我想像GnuPG一样重用现有功能。
情况如下(非常简短):Alice编写了一个待办事项列表。应用程序使用对称密钥对该列表进行加密,对称密钥使用Alice的公共密钥进行加密,然后将该列表保存在应用程序服务器上。现在,爱丽丝想与鲍勃分享此信息。因此,爱丽丝使用该应用程序将鲍勃添加到待办事项列表的读者中。该应用程序还使用Bob的公钥对待办事项列表的对称密钥进行加密,并更新服务器数据。
前面已经说了,我知道这是非常相似,PGP,我想在我的C ++应用程序使用GnuPG(就像一个会与OpenSSL的事,可以看出这里)。但是GnuPG的记录像命令行工具一样。是否有任何API文档,我如何在C ++应用程序中使用此功能?这有可能吗?
如果您想使用一个库来连接GnuPG,那么GPGME就是解析GnuPG输出的麻烦。连接它有几种语言绑定。
如果GPGME与所需的操作不匹配,或者您更喜欢不使用该库(尽管应该建议这样做),则使用--with-colons
和--batch
选项可以使解析输出变得更加容易。与gpg-agent
您一起还可以通过现有的实现使您的应用程序提示输入用户的密码,并为该密码启用GUI提示。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句