我想制作一个系统,我可以根据硬盘序列号加密/解密某些内容,以便无法在计算机上共享密钥。
答案 0 :(得分:0)
如何获取每个Unix变体的硬盘序列号。
对于Linux,如果你以root用户身份运行,最直接的方法是使用'hdparm -i / dev / sda'或更正确地使用它所使用的C代码(ioctl)。
序列号在Linux中通常不常用,所以如果你不是以root用户身份运行,你必须查询实际有用的几个子系统之一 - udev。它使用序列号唯一标识设备,并将此信息存储在/ run / udev / data(或/ var / run / udev / data)下,文件名称基于Linux分配的设备编号。
找到的第一个磁盘的数据位于/ var / run / udev / data / b8:0中 第二个是/ var / run / udev / data / b8:16
这是一个文本文件。
顺便说一句:磁盘序列号不是一个好的加密密钥,因为你看它很容易找到,并且没有随意的地方。