gpt4 book ai didi

maven-3 - 使用 gpg 签署 Maven 工件的目的

转载 作者:行者123 更新时间:2023-12-02 14:14:44 43 4
gpt4 key购买 nike

我知道这可以在发布时使用 maven-gpg-plugin 来完成。但是,我不是在开发开源软件。我还需要签署我自己的工件吗?这有什么意义呢?我认为一旦我的源代码被编译成 JAR,它们就安全了?谢谢!

最佳答案

如果将源代码编译成 jar 就可以了。但是 jar a 只是 zip 文件,可以通过 unzip/jar 简单地解压,然后您可以修改 jar 的内容,这意味着您可以简单地更改内容并将其重新打包到 jar 中。所以说清楚:它是安全的,这是完全错误的。

如果您通过 Maven 创建工件,您将把工件部署到存储库管理器,并在发布过程中创建 SHA1 总和……可以在使用依赖项(下载)期间检查该总和。如果存储库中的校验和与通过 jar 存档计算的校验和不同,默认配置只会打印出警告。如果您愿意,可以更改配置以中断构建,如果 checksum is wrong 。校验和仅用于识别工件的修改,这也不是 100% 安全的,因为可能会发生中间人攻击,这不仅可能修改 jar 的内容,还修改校验和。另一方面,工件的签名用于识别谁创建了该工件。在某些环境中,在发布过程中对工件进行签名确实有意义。

更新为了防止中间人附加,Maven 中央存储库长期使用 https 而不是 http。

关于maven-3 - 使用 gpg 签署 Maven 工件的目的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9862644/

43 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com