[Publish AAR To Maven] 使用GPG对文件进行签名加密

本篇文章隶属于 《使用 Gradle 发布 AAR 到 Maven 仓库》由于涉及东西较多,该文件还在起草中…

======================================================== 作者:qiujuer 博客:blog.csdn.net/qiujuer 网站: 开源库:github.com/qiujuer/Genius-Android 转载请注明出处: ——学之开源,用于开源;初学者的心态,与君共勉!

========================================================

在某系场合我们需要对自己的应用或者文件进行签名加密等操作,其中邮件是最典型的例子。签名加密的工具很多,在本篇中我们使用 GPG 来进行操作。

什么是 GPG ?要说这个还得从 PGP 说起,而 PGP 又是使用 RSA 加密算法进行的,所以要细说的话没个几篇文章是说不完滴,所以还是百度PGP吧。或者你只要知道这是一种加密签名的工具就OK。

下载软件

这里需要说明一下,Windows 的 GPG 软件与 Mac 的不相同,另外如果你的电脑安装有 Cygwin 那么也自动了该加密签名软件,只不过是命令行操作而已。由于已经使用 Android-Studio 所以编译 NDK 用不上 Cygwin 了,就删除了;这里就演示一下界面的操作,后面如果有机会把命令行操作的加上;抱歉了~~

Mac:https://gpgtools.org/Windows:

我这里就演示的是:GPG4win 该款软件。

安装

下载完成自然就是安装了,这个安装基本没有啥说的直接下一步就OK。

运行

在这里,我们运行安装程序中的:Kleopatra,我擦,说好的 GPG 呢?

这里其是就是运行的 GPG 管理器而已。Gpg4win 的核心是 GPG,但包括Kleopatra、GPA、GpgOL、GpgEX和Claws Mail 五个相关工具,其中Kleopatra和 GPA 是 GPG 的密钥管理器,用于生成、导入和导出 GPG 密钥(包括公钥和私钥),一般来说我们使用的也就是这么两个。GpgOL是 Outlook 2003 和2007 的 GPG 支持插件,GpgEX是资源管理器的 GPG 支持插件(不支持 Windows 64 位),Claws Mail 则是一个内置 GPG 支持的邮件客户端;当然邮件管理这个在你进行安装的步骤中会询问你是否安装。

点击 【File】 -> 【New Certificate】(创建新证书)一项,运行 Certificate Creation Wizard(证书创建向导)。进入证书类型页面,此时有两个选项可供选择:第一项是OpenPGP密钥对,第二项是 X.509 密 钥对及证书。此处我们选择第一项下一步。

在这里你将设置你的昵称最好使用英文名称,你的邮箱,以及附加信息,其中附加信息可以没有。

点击【Advanced Settings】(高级设置)按钮,可以对密钥算法和强度以及密钥用途进行设置,密钥算法就保持默认的 【RSA】 就OK。为了增强安全性可以在上方的密钥强度中选择4096 bits(4096位),下方的密钥用途设置主要有三个设置:Signing(签名)、Encryption(加密)和Authentication(认证),维持默认设置即可,最后的Valid until选项可以设置密钥到期时间。设置完成点击下一步。

最后确认密钥对的相关设置。

点击Create Key(创建密钥)按钮,输入 Passphrase (密码短语),Passphrase 是使用私钥之前需要输入的密码短语,不过与普通密码相比,Passphrase 长度更长,而且可以包含空格。 输入 Passphrase 之后还可以在主界面文本框中输入帮助计算机创建更为安全的密钥。这里输入内容无关紧要,随便敲击,计算机只是利用击键的间歇时间计算随机数。

当然这里会叫你重复确认一次你的密码短语;然后回到主界面随机敲击,等待一定时间你将会弹到如下界面。

最后Kleopatra将提示创建密钥对完成,三个选项是备份密钥对、通过 Email 发送公钥和将公钥上传到服务器,再有就是 Finish(完成)。

这里我们恰恰需要的是上传公钥到服务器,为什么呢? 当我们发布 AAR 到远程仓库之前是需要使用 私钥 进行签名加密,而后上传到仓库;而仓库管理服务器会根据你的配置进行验证等操作,此时就需要使用到你上传的公钥,如果公钥没有上传将会导致发布 AAR 失败。

第一次点击你将遇到这样的情况,意思就是说你没有设置远程服务器,是否需要设置,如果不设置将会采用默认,这里一般不用设置;如果你托管的仓库有要求的话那就需要了,,当然本次教程中的仓库没有该要求。点击 Continue (继续)。

此时你会看见,意思是说:一旦上传到服务器几乎就不可撤销,所以叫你确认你不会进行撤销操作,请你确认,此时继续就OK,然后会链接服务器进行上传,你需要等待一段时间将会提示你上传成功与失败,失败了无所谓你可以再次上传。当然有可能你将会遇到 需要翻墙 的情况,这个就XXX.

备份还原

创建了一个密钥(公钥+密钥)后自然存在保存以及导入的问题。

回到主界面,在你创建的密钥上右击;可以看见如下目录菜单。

在菜单的最后几项中:

其中的操作相对简单,只需要直接设置目录即可导出,如果没有上传成功到服务器的也可以在这里重新上传。

Return 人,总是很难改正自己的缺点,

[Publish AAR To Maven] 使用GPG对文件进行签名加密

相关文章:

你感兴趣的文章:

标签云: