问题描述
我有一个 .net core 5.0 解决方案。我想确保在源代码检出和构建机器上的编译步骤之间没有修改文件。我不想重新发明轮子,但找不到现有的解决方案。建议使用 sha256 here(请参阅最后两段)。我想到了这样的事情:
MSBuild compilation task
Compiling solution
Generating source code sha256 signatures
# The output may look like this
sources.sha256
/src/app1/foo.cs sha1
/src/app2/bar.cs sha1
然后我可以在 sources.sha256
上运行最终的 sha1。最后也是非常重要的一点,我可以在不同的独立维护机器上重复相同的过程,以确保相同的输出并使供应链攻击更难以执行。
我已经研究过 checksumalgorithm 编译器选项,但不确定我是否可以使用它,因为它会将 sha256 嵌入到 PDB 文件中,而且我不确定生成的 PDB 文件在构建之间是否相同将发生在不同的机器和平台上。
在构建 C# .net 核心解决方案期间运行源代码完整性检查的最佳方法是什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)