Как генерировать уникальный аппаратный хеш?

Я хочу знать, что это существует путь, которым мы можем генерировать уникальный аппаратный хеш конкретной машины? Хеш должен быть уникален для машины, и хеш должен отличаться, даже две машины имеют ту же конфигурацию. Действительно ли это возможно?

6
задан 24 July 2011 в 04:52

2 ответа

Вы могли использовать MAC-адрес eth0 (принимающий это существует на каждой машине). Можно получить это самостоятельно (может быть более простой путь) с этим:

ifconfig eth0 | grep HWaddr | awk '{ print $NF}' | sed 's/://g'

Это даст Вам что-то как 6cf04954aaaa.

Они, как предполагается, уникальны, но они не всегда. Если все Ваше сетевое оборудование прибывает из того же производителя, Вы могли бы найти некоторое перекрестное соединение, так осторожны с ним.


Приводя это к сбою, Вы могли генерировать свою собственную уникальную строку и сохранить ее в /etc/computer-id (или другой путь Вашего выбора).

uuidgen -r

Генерирует что-то максимально случайное, например: 52a85807-35fe-409e-8983-87eb58c02ece

uuidgen -t

Время использования и eth0MAC для создания чего-то как: eb8280dc-b5ec-11e0-90dd-6cf04954aaaa

Оба довольно уникальны, но, как с чем-либо случайным, всегда существует возможность столкновения. Сохраните центральный список для предотвращения проблем как это.

4
ответ дан 23 November 2019 в 07:47

Простое решение, о котором я мог думать:

sudo dmidecode -s system-uuid

Согласно странице руководства dmidecode, эти данные получены от Интерфейса управления настольными системами, который имеет некоторое отношение к BIOS. Это не может быть изменено.

Я протестировал эту команду на двух машинах с теми же аппаратными средствами, и результат отличается как ожидалось от имени system-uuid, таким образом, это может на самом деле использоваться в качестве уникального аппаратного хеша.

3
ответ дан 23 November 2019 в 07:47

Другие вопросы по тегам:

Похожие вопросы: