我有一个 truffle 项目,想将编译过程迁移到安全帽(主要是这样我可以获得validations.json
并获得升级以正常工作)。我在两个项目中使用相同的编译器设置,似乎除了最后 43 个字节(86 个十六进制字符)之外,它们都生成相同的字节码。
据我了解,这是对 swarm 散列的一些编码。我看到它们都有字符串"solcC"
,而且它们也恰好有相同的最后 11 个字节(22 个十六进制字符)"64736f6c634300050a0032"
。
我不明白为什么最后 43 个字节在项目之间是不同的,但每个项目似乎在产生相同的 43 个字节方面是一致的。
此外,我可能正在查看错误的字段,但安全帽build-info/<hex>.json
显示的"metadata"
值与该build/contracts/<Contract>.json
"metadata"
值相同。