【问题标题】:Get the serial ARM CPU information with a C/C++ program使用 C/C++ 程序获取串行 ARM CPU 信息
【发布时间】:2014-08-27 18:40:54
【问题描述】:

我可以使用 C/C++ 程序获取串行 ARM CPU (Raspberry Pi) 信息。 我可以从 /proc/cpuinfo 获得这些信息,但是很容易破解程序。 有谁知道如何通过 C/C++ 获得序列号? 我想使用序列号进行加密操作。

【问题讨论】:

  • 使用序列号进行加密操作是一个更糟糕的想法,而不是使用它来识别身份 - 序列号很容易预测,并且不提供保密性。
  • 文件 /dev/random 努力尝试提供加密类型的种子。在许多系统上它是高度不可预测的。一般使用公私钥或Diffie Hellman进行验证。如果您尝试进行客户端身份验证,某些 CPU 会提供具有硬件篡改保护的可归零内存。对于 ARM,trust-zone 可以提供对客户端密钥的访问。但是,我不相信 raspberry-pi 有这些功能?

标签: c++ c arm raspberry-pi


【解决方案1】:

这个很简单:从fd=fopen("/proc/cpuinfo", "r");开始

我当然的意思是,不信任/proc/cpuinfo 意味着不信任正在运行的内核——在这个前提下,所有的赌注都没有了。

如果您要构建 DRM 系统(即绑定到物理设备的软件),请记住:DRM 的第一条规则是,DRM 不起作用。

【讨论】:

    猜你喜欢
    • 2011-04-06
    • 2019-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-31
    • 1970-01-01
    • 2011-01-24
    相关资源
    最近更新 更多