我想要向一个 ELF 文件(称为 E)中添加一个新的部分,用来存储 .text 部分的完整性哈希值。假设我将.text 分成 T1,T2..Tn 块,并得到哈希值 H1,H2..Hn,然后将所有哈希值添加到 E 的新的 .my_hash 部分中。
其中一种天真的方法是:
其中一种天真的方法是:
- 扫描文件 E 并计算/存储哈希值到一个单独的二进制文件 B
- 将 B 转换为 B.o 文件
- 使用 objcopy --rename_section 将 .data 部分重命名为 .my_hash 部分
- 最后合并 E.o(假设在生成 E 之前也有该文件)和 B.o