본문으로 건너뛰기
HWID Checker

Windows, macOS, Linux에서 HWID 확인하는 방법

최신 Windows, macOS, Linux 명령으로 SMBIOS UUID, MachineGuid, 하드웨어 시리얼과 기타 식별자를 확인하고 각 값이 실제로 무엇을 식별하는지 알아봅니다.

HWID Checker · 2026년 8월 10일 · 5 분 분량

게임, 소프트웨어 공급업체 또는 IT 관리자가 HWID(하드웨어 ID)를 요구한다면 먼저 필요한 필드와 형식을 확인하십시오. 모든 컴퓨터에 공통으로 저장되는 단일 HWID는 없습니다. SMBIOS UUID, 물리 디스크 시리얼, Windows 설치 식별자 또는 여러 값을 조합한 제품 고유 핑거프린트를 뜻할 수 있습니다.

따라서 명령이 실제 값을 반환하더라도 상대방이 원하는 식별자와 다를 수 있습니다. 펌웨어나 가상화 플랫폼이 유효한 값을 제공하지 않으면 빈 값, 0으로만 된 값 또는 일반적인 자리표시자가 표시될 수도 있습니다.

개인정보 참고: UUID, 시리얼 번호, 설치 ID는 민감한 정보가 될 수 있습니다. 상대방이 한 필드만 필요하다면 전체 보고서를 공개하지 마십시오.

Windows: PowerShell CIM을 우선 사용

지원되는 Windows 10과 11에서는 펌웨어 및 장치 정보를 제공하는 WMI 클래스를 PowerShell CIM cmdlet으로 조회하는 것이 현재 권장되는 방법입니다. 다음 명령은 읽기 전용이며 일반적으로 관리자 권한이 필요하지 않습니다.

# SMBIOS 시스템 UUID
Get-CimInstance Win32_ComputerSystemProduct | Select-Object -ExpandProperty UUID

# BIOS 시리얼
Get-CimInstance Win32_BIOS | Select-Object -ExpandProperty SerialNumber

# 마더보드 시리얼
Get-CimInstance Win32_BaseBoard | Select-Object -ExpandProperty SerialNumber

# 물리 디스크 모델과 시리얼
Get-CimInstance Win32_DiskDrive | Select-Object Model, SerialNumber

Win32_ComputerSystemProduct의 UUID는 SMBIOS System Information 구조에서 옵니다. 머신 식별을 목적으로 하지만 값의 품질은 제조사나 가상화 플랫폼에 달려 있습니다. 모두 0인 UUID, 반복되는 참조 값, Default string, To Be Filled By O.E.M. 같은 문자열은 신뢰할 수 있는 고유 식별자가 아니라 자리표시자입니다.

WMIC는 어떻게 되었나요?

오래된 문서에는 다음 명령이 자주 나옵니다.

wmic csproduct get uuid

Microsoft는 wmic.exe를 사용 중단했으며 현재 Windows 11 설치에는 없을 수 있습니다. WMI 자체가 사라진 것은 아닙니다. Get-CimInstance는 지원되는 PowerShell 인터페이스를 통해 같은 관리 인프라를 조회합니다. WMIC는 이미 설치된 구형 시스템을 유지보수할 때만 사용하십시오.

MachineGuid는 하드웨어가 아니라 설치를 식별합니다

Windows는 MachineGuid를 다음 위치에 저장합니다.

reg query "HKLM\SOFTWARE\Microsoft\Cryptography" /v MachineGuid

PowerShell에서도 같은 값을 읽을 수 있습니다.

Get-ItemPropertyValue "HKLM:\SOFTWARE\Microsoft\Cryptography" -Name MachineGuid

MachineGuid는 Windows 설치를 식별합니다. 일부 애플리케이션은 라이선스나 장치 인식의 한 입력으로 사용하지만, 전혀 사용하지 않는 제품도 있습니다. 마더보드 시리얼이 아니며 특정 물리 컴퓨터를 증명하지도 않습니다. 재설치, 이미지 배포, 복제 또는 일부 복구 절차로 값이 바뀌거나 중복될 수 있습니다.

장치 관리자는 PnP 하드웨어 ID를 보여 줍니다

장치 관리자에서 장치의 속성을 열고 자세히 탭의 하드웨어 ID를 선택하면 PCI\VEN_8086&DEV_... 같은 값이 표시됩니다. 이는 주로 장치와 드라이버 패키지를 연결하는 Plug and Play 식별 문자열입니다.

보통 모델, 제조사, 서브시스템, 리비전을 설명하며 동일 모델의 장치가 같은 값을 공유할 수 있습니다. PnP 하드웨어 ID를 시리얼 번호, 장치 인스턴스 ID 또는 머신 전체 HWID와 혼동하지 마십시오.

macOS 식별자

가장 명확한 출발점은 전체 하드웨어 보고서입니다.

system_profiler SPHardwareDataType

system_profiler의 표시 언어와 관계없이 플랫폼 UUID와 Mac 시리얼을 읽으려면 다음을 사용합니다.

ioreg -rd1 -c IOPlatformExpertDevice | awk -F'= ' '/IOPlatformUUID/{gsub(/"/,"",$2); print $2}'
ioreg -rd1 -c IOPlatformExpertDevice | awk -F'= ' '/IOPlatformSerialNumber/{gsub(/"/,"",$2); print $2}'

네트워크 포트와 인터페이스 이름을 먼저 확인하십시오.

networksetup -listallhardwareports
ifconfig en0 | awk '/ether/{print $2}'

en0은 확인하려는 인터페이스로 바꾸십시오. 현재 보이는 주소가 출고 시 MAC 주소와 항상 같지는 않습니다. Wi-Fi 개인정보 보호 기능, 가상 어댑터, 하드웨어 교체로 달라질 수 있습니다.

Linux 식별자

Linux는 설치 수준 값과 펌웨어 기반 값을 모두 제공합니다.

# OS 설치 또는 호스트 환경 ID이며 하드웨어 시리얼이 아님
cat /etc/machine-id

# SMBIOS 시스템 UUID. 일반적으로 root 권한 필요
sudo dmidecode -s system-uuid

# 물리 블록 장치와 제공되는 시리얼
lsblk --nodeps -o NAME,MODEL,SERIAL

# 네트워크 인터페이스와 현재 링크 계층 주소
ip link show

/etc/machine-id는 일반적으로 설치 또는 첫 부팅 때 만들어집니다. 하드웨어를 교체해도 반드시 바뀌지 않으며, 이미지를 잘못 복제하면 여러 시스템에서 중복될 수 있습니다. systemd 문서는 원본 값을 기밀로 취급합니다. 애플리케이션은 이를 신뢰할 수 없는 서비스에 직접 보내지 말고 앱별 식별자를 파생해야 합니다.

dmidecode는 펌웨어 테이블을 읽습니다. 컨테이너에서는 사용할 수 없을 수 있고, VM에서는 보통 물리 호스트가 아니라 가상 머신의 UUID를 반환합니다.

가상 머신, 클라우드 데스크톱, 씬 클라이언트

책상 위에 물리적인 본체가 있다고 해서 Windows가 반드시 그 장치에서 직접 실행되는 것은 아닙니다. 학교와 사무실에서는 다른 서버의 VDI나 클라우드 데스크톱에 접속하는 씬 클라이언트 또는 미니 PC를 흔히 사용합니다.

QEMU HARDDISK, Red Hat VirtIO, VMware 장치, Hyper-V 가상 어댑터가 보인다면 운영체제가 가상 하드웨어를 보고 있다는 뜻입니다. 이 경우:

  • SMBIOS UUID는 하이퍼바이저가 할당하거나 템플릿에서 복제했거나 모두 0일 수 있습니다.
  • 디스크 시리얼은 서버의 물리 SSD가 아니라 가상 디스크의 값입니다.
  • MAC 주소는 가상 어댑터에 속하며 VM을 다시 만들면 바뀔 수 있습니다.
  • 마더보드, 섀시, RAM 시리얼은 비어 있거나 일반 값일 수 있습니다.
  • 보고서는 책상 위 단말이 아니라 현재 게스트 환경을 식별할 수 있습니다.

이는 조회 실패가 아니라 운영체제에 공개된 정보의 한계입니다.

휴대용 Windows 보고서와 프로젝트 고유 해시

사용 가능한 Windows 값을 하나의 로컬 보고서로 모으려면 Windows용 HWID Checker를 이용하십시오. 설치가 필요 없는 휴대용 x64 도구이며 다음 옵션을 지원합니다.

hwid-checker.exe -save
hwid-checker.exe -json
hwid-checker.exe -no-hash

도구는 로컬에 노출된 값만 읽고 -save를 사용할 때만 파일을 씁니다. 빈 결과는 생략하지만 현재 버전은 일반 펌웨어 자리표시자나 모두 0인 UUID를 표시할 수 있습니다. hashed hwid sha256은 이 프로젝트가 수집한 비어 있지 않은 필드로 만든 다이제스트입니다. EXE 파일의 SHA-256 체크섬이나 보편적 HWID가 아니며 게임, 안티치트 또는 라이선스 공급업체의 식별자와 일치한다고 보장되지 않습니다.

변화를 조사할 때는 최종 해시만 보지 말고 원본 필드를 비교하십시오. 설치 ID, 네트워크 어댑터, 가상 장치, 조회 결과의 순서는 바뀔 수 있습니다.

실제로 필요한 값은 무엇인가요?

요청된 값식별 대상주요 한계
SMBIOS UUID펌웨어 또는 VM의 시스템 레코드비어 있거나 일반 값, 중복 값, 하이퍼바이저 할당 값일 수 있음
BIOS/마더보드 시리얼OEM 펌웨어 레코드소매용 보드와 VM은 자리표시자를 자주 반환함
물리 디스크 시리얼OS에 보이는 저장 장치가상 디스크와 USB 브리지는 합성 값이나 빈 값을 반환할 수 있음
MachineGuidWindows 설치재설치나 이미지 복제로 변경 또는 중복될 수 있음
/etc/machine-idLinux 설치 또는 호스트 환경원본 값은 기밀이며 물리 하드웨어 시리얼이 아님
MAC 주소현재 제공되는 네트워크 인터페이스개인정보 설정, 가상화, 어댑터 교체로 바뀔 수 있음
PnP 하드웨어 ID드라이버 매칭용 장치 계열동일 모델 장치가 흔히 공유함
공급업체 HWID제품이 정의한 핑거프린트입력과 변경 정책은 해당 공급업체만 정의함

HWID를 요청받으면 예시 형식이나 해당 제품의 공식 명령을 확인하십시오. 다른 값이 고유해 보인다는 이유만으로 호환되는 것은 아닙니다.

소프트웨어 개발자를 위한 지침

실서비스 라이선스 시스템은 몇 개의 시리얼을 연결한 값을 영구적인 신원으로 가정해서는 안 됩니다. 결정적인 정렬과 정규화, 알려진 자리표시자 제거, 누락 필드 처리, 정상적인 하드웨어 변경, 복제 이미지, 개인정보 제어, VM에 대한 정책이 필요합니다.

SHA-256은 일반 출력에서 원본 문자열을 감추지만 불안정하거나 중복된 입력을 안정적이고 고유하게 만들지는 않습니다. 앱별 등록 ID와 서버 측 계정 상태를 중심으로 설계하고 하드웨어 정보는 하나의 위험 신호로만 사용하십시오. 자세한 내용은 소프트웨어 라이선스가 HWID를 사용하는 방식을 참고하십시오.

결과를 과장하지 않고 값 확인하기

온라인 HWID Checker는 일반적인 형식을 인식하고, 모두 0인 자리표시자를 경고하며, 사용자가 제공한 목록과 값을 비교합니다. 브라우저 안에서 실행되며 입력 데이터는 업로드하지 않습니다.

형식 검사를 통과했다는 것은 문자열 구조가 그럴듯하다는 뜻일 뿐입니다. 실제 하드웨어에서 왔는지, 특정 컴퓨터에 속하는지, 외부 서비스가 인정하는지는 증명하지 못합니다.

주요 기술 자료