【问题标题】:Signing a file/binary to a specific machine using OpenSSL使用 OpenSSL 将文件/二进制文件签名到特定机器
【发布时间】:2018-03-26 11:07:30
【问题描述】:

正如问题标题中提到的,我有一个我想要的二进制文件 为特定机器(主机 PC)签名。是否可以使用 OpenSSL 命令中的任何选项来执行此操作。 我检查了一些,但这似乎不符合我的目的。 我想将该应用程序二进制文件绑定为仅在一台使用 OpenSSL 签名和验证概念的 PC 上运行。

我可以使用 to Serial_Number 或 -subj 选项

请澄清

【问题讨论】:

  • 1.你想把它绑定到什么?主机 PC 上的特定硬件、硬盘驱动器本身还是其他东西? 2. 你自己编译二进制文件吗?
  • 可能就像将签名文件绑定到硬盘和MAC ID组合一样。是的,我会自己编译。

标签: security binding openssl


【解决方案1】:

以下是其中一种方法:

  1. 将两个 ID 相加并计算结果的哈希值(例如 SHA256)
  2. 使用 OpenSSL(或其他)对哈希值进行签名并将签名存储在文件中
  3. 将第 2 步中的公钥嵌入二进制文件中
  4. 加载二进制文件时,要求系统上存在签名文件并加载它,然后检索驱动器 ID 和 MAC ID 并重新计算哈希,然后使用嵌入的公钥验证加载的签名。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-17
    • 2012-06-02
    • 1970-01-01
    • 1970-01-01
    • 2014-12-13
    • 2011-12-11
    • 1970-01-01
    • 2011-12-11
    相关资源
    最近更新 更多