Нет, нельзя гарантировать, что он будет уникальным, поскольку процессор может даже не поддерживать инструкцию CPUID, и в этом случае вызов не может быть гарантированно успешным.
Кроме того, вы пренебрегаете тем, что на машине может быть несколько процессоров, поэтому получение идентификатора одного процессора не помогает.
Как указали другие, если вы хотите получить уникальный идентификатор для системы, вам лучше всего создать идентификатор, который представляет собой смесь различных идентификаторов компонентов в системе.
Хэш (и не просто любой, а тот, который имеет очень несколько коллизий) различных значений аппаратного обеспечения может быть достаточным. Возможно, вы захотите использовать вещи, которые достаточно встроены в систему, такие как процессор, информация о материнской плате, но не такие вещи, которые легко отсоединяются / изменяются, такие как USB-накопители / концентраторы / и т. Д.