我有两个问题要问。
首先,我需要知道用“ GnuPG”签署Java项目工件的重要性。
我目前的情况是我正在考虑发布我的第一个公共Java项目。我正在使用Maven构建和管理项目,并且遇到了“ Maven-GPG-Plugin”。插件上的文档非常模糊,没有描述为什么要使用“ GnuPG”对工件进行签名。我没有使用GnuPG / Maven-GPG的经验,所以我想知道使用此Maven插件有什么好处?
我的第二个问题是如何在Eclipse的Java项目中使用此插件?
pom.xml
我在构建项目时会为我添加以下内容吗?
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
如果没有,我将如何在Eclipse中使用Maven正确签署项目?
谢谢!
我没有在Maven中实际使用GnuPG的经验(我从未发布过Maven插件),因此,我的回答仅限于您问题的第一部分。
该插件上的文档非常含糊,没有描述为什么要使用“ GnuPG”对工件进行签名。我没有使用GnuPG / Maven-GPG的经验,所以我想知道使用此Maven插件有什么好处?
简单的哈希和只能用于实现意外的传输问题,例如位翻转。不同于那些,GnuPG发行加密签名,该签名也能够识别传输问题,但是还使您能够验证签名数据的作者。
没有密码签名,就无法知道您正在下载并执行的代码/程序实际上是否正是您所期望的代码/程序。丢失或未经验证的加密签名一次又一次导致带有后门的下载,只是最近Linux Mint出现了此类问题。
加密签名并不意味着该代码正确无误,也没有任何(安全性)问题,但是至少知道您使用了与作者发布的代码相同的代码,因此可以大大减少后门程序的发生。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句