2012-03-05 3 views
2

의 직렬 키 생성 및 유효성 검사 나는 자바로 작성된 응용 프로그램 키를 보호해야합니다. 키는 지정된 PC에서만 작동하므로 예를 들어 컴퓨터 ID 일련 번호가 생성되어야합니다 고유 한 식별자 (예 : 하드 디스크 직렬, MainBoard 직렬 등)를 기반으로하는 응용 프로그램에서. 이 고유 한 식별자를 기반으로 다른 프로그램이 유효성 검사 키를 생성합니다.자바 (기계 고유 식별자)

WMI에서 하드웨어 일련 번호를 가져 오는 컴퓨터 식별자를 생성하는 .NET 응용 프로그램에서 유사한 정품 인증 시스템을 이미 구현했습니다. Java에서이 값을 어떻게 얻을 수 있습니까? 이 솔루션은 Windows, Linux 및 Mac OS X에서 독립적으로 작동해야합니다.

Java에서 기계의 고유 식별자를 검색하려면 어떻게해야합니까? 밖에있는 도서관이 있나요?

+0

가능한 중복 : http://stackoverflow.com/questions/1986732/how-to-get-a-unique-computer-identifier-in-java- like-disk-id-or-motherboard-id – TPete

답변

2

기계 MAC 주소 (또는 기계 MAC 주소 중 하나는) 좋은 후보입니다. 그것은 고유하고 아마 다른 하드웨어 식별자보다 덜 자주 변경됩니다. 여기에 코드 조각입니다 :

0

플랫폼별로 뭔가를 호출해야합니다. 예를 들어 Windows에서이 정보를 얻기 위해 WMI를 호출하는 VB 스크립트를 호출 할 수 있습니다.

참고 : 사용하는 방식에 접근하면 무엇을하고 있는지 알면 바보짓을하기 쉽습니다.

1

순수한 자바에서 CPU ID 또는 하드 디스크/마더 보드 ID를 얻을 수 있다고 생각하지 않습니다. 당신이 가장 가까운 network mac address입니다 :

NetworkInterface.getNetworkInterfaces().nextElement().getHardwareAddress();