KR20220107431A - 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치 - Google Patents
하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치 Download PDFInfo
- Publication number
- KR20220107431A KR20220107431A KR1020210010061A KR20210010061A KR20220107431A KR 20220107431 A KR20220107431 A KR 20220107431A KR 1020210010061 A KR1020210010061 A KR 1020210010061A KR 20210010061 A KR20210010061 A KR 20210010061A KR 20220107431 A KR20220107431 A KR 20220107431A
- Authority
- KR
- South Korea
- Prior art keywords
- authentication
- server
- request message
- security module
- hardware security
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치가 개시된다. 본 발명의 일실시예에 따른 인증 서버와 디바이스 간의 상호 인증 방법은 하드웨어 보안 모듈이 구비된 인증 대상 디바이스가 하드웨어 보안 모듈에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버로 전달하고, 인증 서버가 디바이스 인증 요청 메시지를 복호화하여 인증 대상 디바이스가 신뢰할 수 있는 기기인지 여부를 확인하고, 인증 대상 디바이스의 인증이 성공한 경우, 인증 서버가 서버 인증 요청 메시지를 암호화하여 인증 대상 디바이스로 전달하고, 인증 대상 디바이스가 서버 인증 요청 메시지를 복호화하여 인증 서버가 신뢰할 수 있는 서버인지 여부를 확인한다.
Description
본 발명은 하드웨어 보안 모듈을 이용한 서버와 디바이스 간의 상호 인증 기술에 관한 것으로, 특히 IoT(Internet of Things) 환경에서 네트워크에 참여하는 다양한 기기의 안정한 운영을 위하여 해당 기기를 식별하고 진위를 판단함으로써 안전하고 신뢰할 수 있는 기기 인증을 수행할 수 있는 기술에 관한 것이다.
유/무선 네트워크의 대역폭이 꾸준히 증가하고, 디바이스를 통한 다양한 서비스의 사용가능 지역이 확장됨에 따라, 기기가 단순히 사람의 요청만 처리하는 수동적 역할만을 수행하는 것이 아니라, 네트워크를 통해 정보를 주고 받는 또 다른 주체로 등장하고 있다. 이와 같은 기기 역할의 중요성이 대두됨에 따라 기기 해킹 및 복제 등의 보안 위협으로부터 자유롭지 못한 환경이 되었다. 이렇게 악성코드에 감염된 기기는 DDos공격에 악용되거나, 디바이스에 보관된 개인정보가 탈취되는 등의 피해를 입을 수 있다. 또한, 스스로 악성코드를 인지할 수 없는 기기의 경우, 악성코드에 감염된 디바이스에 의해 네트워크 전체에 심각한 피해를 입힐 수도 있다.
따라서, 디바이스를 이용한 서비스를 수행할 경우, 우선적으로 기기인증을 수행함으로써 보안 위협을 감소시킬 수 있다.
일반적으로 기기 인증은 네트워크에 참여하는 다양한 기기의 안전한 운영을 위해, 해당 기기를 식별하고 진위를 판단할 수 있는 신뢰된 인증 방법으로 정의할 수 있다. 이와 같이 기기를 인증하는 기술은 아이디/패스워드 기반 인증 기술, MAC 주소값 인증 기술, 암호 프로토콜을 활용한 인증 기술, Challenge/Response 인증 기술 및 PKI 기반 기기 인증 기술과 같이 다양하게 존재한다.
그러나, 상기에 나열한 기존의 기술들을 종합해서 분석해보면, 인증에서 사용되는 수단들이 쉽게 노출되는 경우에 허가 받지 않은 기기도 쉽게 인증이 허가된다는 단점이 공통적으로 존재한다. 즉, 기기 인증에 사용되는 아이디/패스워드, MAC 주소, 인증서 등이 노출되는 경우에 기기 인증에 문제가 발생할 수 있다.
본 발명의 목적은 디바이스에 하드웨어 보안모듈을 장착하고, 이 하드웨어 보안모듈 내에 기기를 식별할 수 있는 디바이스 식별자 및 암호키를 보관하여 기기 인증에 필요한 연산을 수행함으로써 안전하고 신뢰할 수 있는 기기 인증을 수행할 수 있는 기술을 제공하는 것이다.
또한, 본 발명의 목적은 물리적 해킹방지가 가능한 하드웨어 보안모듈과 같은 보안 칩을 이용하여 인증을 위한 디바이스 정보와 암호키 등의 중요 정보를 보관함으로써 디바이스 인증을 안전하게 수행하는 것이다.
또한, 본 발명의 목적은 디바이스 인증을 담당하는 인증 서버가 신뢰할 수 있는 서버인지를 디바이스에 장착된 하드웨어 보안모듈에서 확인함으로써 보안 기능 수행에 우선적으로 요구되는 디바이스와 인증 서버 간의 상호 인증을 안전하게 수행하는 것이다.
또한, 본 발명의 목적은 IoT 환경의 보안 위협을 방지하기 위하여 기기의 진위성 및 네트워크 접속 권한을 확인하고, 이를 기반으로 신뢰된 인증 체계를 구축하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 인증 서버와 디바이스 간의 상호 인증 방법은 하드웨어 보안 모듈이 구비된 인증 대상 디바이스가, 상기 하드웨어 보안 모듈에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버로 전달하는 단계; 상기 인증 서버가, 상기 디바이스 인증 요청 메시지를 복호화하여 상기 인증 대상 디바이스가 신뢰할 수 있는 기기인지 여부를 확인하는 단계; 상기 인증 대상 디바이스의 인증이 성공한 경우, 상기 인증 서버가, 서버 인증 요청 메시지를 암호화하여 상기 인증 대상 디바이스로 전달하는 단계; 및 상기 인증 대상 디바이스가, 상기 서버 인증 요청 메시지를 복호화하여 상기 인증 서버가 신뢰할 수 있는 서버인지 여부를 확인하는 단계를 포함한다.
이 때, 디바이스 인증 요청 메시지는 상기 인증 대상 디바이스에 상응하는 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 디바이스 암호키로 암호화한 값에 상기 디바이스 식별자가 평문으로 결합된 형태에 상응할 수 있다.
이 때, 디바이스 식별자와 상기 디바이스 암호키는 상기 하드웨어 보안 모듈에 저장될 수 있다.
이 때, 서버 인증 요청 메시지는 상기 인증 서버에 상응하는 인증 서버 임시값(NONCE), 상기 디바이스 임시값 및 서버 정보를 암호화한 형태에 상응할 수 있다.
이 때, 하드웨어 보안 모듈은 물리적으로 해킹이 불가능한 보안칩에 상응할 수 있다.
이 때, 디바이스 식별자와 상기 디바이스 암호키는 상기 인증 대상 디바이스의 발급시 부여되고, 상기 인증 서버에 사전에 등록될 수 있다.
이 때, 디바이스 임시값은 상기 디바이스 요청 메시지가 생성될 때마다 상기 하드웨어 보안 모듈 내에서 새롭게 생성될 수 있다.
이 때, 인증 서버는 상기 디바이스 인증 요청 메시지에 포함된 평문 형식의 디바이스 식별자를 기반으로 상기 인증 대상 디바이스에 상응하는 기기 종류, 서비스 및 상기 디바이스 암호키를 체크하고, 상기 암호키를 기반으로 상기 디바이스 인증 요청 메시지에 포함된 암호화한 값을 복호화할 수 있다.
이 때, 인증 대상 디바이스는 상기 하드웨어 보안 모듈에서 상기 암호키를 기반으로 상기 서버 인증 요청 메시지를 복호화하고, 상기 서버 인증 요청 메시지에 포함된 디바이스 임시값과 상기 디바이스 인증 요청 메시지를 통해 전달했던 디바이스 임시값이 동일한지 여부를 고려하여 상기 인증 서버에 대한 인증을 수행할 수 있다.
이 때, 인증 서버는 상기 암호화한 값을 복호화하여 획득한 디바이스 식별자와 상기 평문 형식의 디바이스 식별자가 일치하는 경우, 상기 인증 대상 디바이스의 인증이 성공한 것으로 판단할 수 있다.
또한, 본 발명의 일실시예에 따른 하드웨어 보안 모듈이 구비된 디바이스는 하드웨어 보안 모듈에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버로 전달하고, 상기 인증 서버로부터 암호화된 서버 인증 요청 메시지가 수신되는 경우에 상기 서버 인증 요청 메시지를 복호화하여 상기 인증 서버가 신뢰할 수 있는 서버인지 여부를 확인하는 프로세서; 및 상기 하드웨어 보안 모듈을 포함하고, 상기 인증 서버는 상기 디바이스 인증 요청 메시지를 복호화하여 신뢰할 수 있는 기기인지 여부를 확인하는 디바이스 인증을 수행하고, 상기 디바이스 인증이 성공한 경우에 상기 서버 인증 요청 메시지를 암호화하여 회신한다.
이 때, 디바이스 인증 요청 메시지는 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 디바이스 암호키로 암호화한 값에 상기 디바이스 식별자가 평문으로 결합된 형태에 상응할 수 있다.
이 때, 디바이스 식별자와 상기 디바이스 암호키는 상기 하드웨어 보안 모듈에 저장될 수 있다.
이 때, 서버 인증 요청 메시지는 상기 인증 서버에 상응하는 인증 서버 임시값(NONCE), 상기 디바이스 임시값 및 서버 정보를 암호화한 형태에 상응할 수 있다.
이 때, 하드웨어 보안 모듈은 물리적으로 해킹이 불가능한 보안칩에 상응할 수 있다.
이 때, 디바이스 식별자와 상기 디바이스 암호키는 디바이스 발급 시 부여되고, 상기 인증 서버에 사전에 등록될 수 있다.
이 때, 디바이스 임시값은 상기 디바이스 요청 메시지가 생성될 때마다 상기 하드웨어 보안 모듈 내에서 새롭게 생성될 수 있다.
이 때, 인증 서버는 상기 디바이스 인증 요청 메시지에 포함된 평문 형식의 디바이스 식별자를 기반으로 상기 인증 대상 디바이스에 상응하는 기기 종류, 서비스 및 상기 디바이스 암호키를 체크하고, 상기 암호키를 기반으로 상기 디바이스 인증 요청 메시지에 포함된 암호화한 값을 복호화할 수 있다.
이 때, 프로세서는 상기 하드웨어 보안 모듈에서 상기 암호키를 기반으로 상기 서버 인증 요청 메시지를 복호화하고, 상기 서버 인증 요청 메시지에 포함된 디바이스 임시값과 상기 디바이스 인증 요청 메시지를 통해 전달했던 디바이스 임시값이 동일한지 여부를 고려하여 상기 인증 서버에 대한 인증을 수행할 수 있다.
이 때, 인증 서버는 상기 암호화한 값을 복호화하여 획득한 디바이스 식별자와 상기 평문 형식의 디바이스 식별자가 일치하는 경우, 상기 인증 대상 디바이스의 인증이 성공한 것으로 판단할 수 있다.
본 발명에 따르면, 디바이스에 하드웨어 보안모듈을 장착하고, 이 하드웨어 보안모듈 내에 기기를 식별할 수 있는 디바이스 식별자 및 암호키를 보관하여 기기 인증에 필요한 연산을 수행함으로써 안전하고 신뢰할 수 있는 기기 인증을 수행할 수 있는 기술을 제공할 수 있다.
또한, 본 발명은 물리적 해킹방지가 가능한 하드웨어 보안모듈과 같은 보안 칩을 이용하여 인증을 위한 디바이스 정보와 암호키 등의 중요 정보를 보관함으로써 디바이스 인증을 안전하게 수행할 수 있다.
또한, 본 발명은 디바이스 인증을 담당하는 인증 서버가 신뢰할 수 있는 서버인지를 디바이스에 장착된 하드웨어 보안모듈에서 확인함으로써 보안 기능 수행에 우선적으로 요구되는 디바이스와 인증 서버 간의 상호 인증을 안전하게 수행할 수 있다.
또한, 본 발명은 IoT 환경의 보안 위협을 방지하기 위하여 기기의 진위성 및 네트워크 접속 권한을 확인하고, 이를 기반으로 신뢰된 인증 체계를 구축할 수 있다.
도 1은 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 시스템을 나타낸 도면이다.
도 2는 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법을 나타낸 동작 흐름도이다.
도 3은 본 발명에 따른 인증 서버와 디바이스 간의 상호 인증 시 전송되는 메시지의 일 예를 나타낸 도면이다.
도 4는 본 발명에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 과정을 상세하게 나타낸 도면이다.
도 5는 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 구비한 디바이스를 나타낸 블록도이다.
도 6은 본 발명의 일실시예에 따른 인증 서버를 나타낸 블록도이다.
도 7는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 도면이다.
도 2는 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법을 나타낸 동작 흐름도이다.
도 3은 본 발명에 따른 인증 서버와 디바이스 간의 상호 인증 시 전송되는 메시지의 일 예를 나타낸 도면이다.
도 4는 본 발명에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 과정을 상세하게 나타낸 도면이다.
도 5는 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 구비한 디바이스를 나타낸 블록도이다.
도 6은 본 발명의 일실시예에 따른 인증 서버를 나타낸 블록도이다.
도 7는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 도면이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
일반적으로 기기 인증은 네트워크에 참여하는 다양한 기기의 안전한 운영을 위해, 해당 기기를 식별하고 진위를 판단할 수 있는 신뢰된 인증 방법으로 정의할 수 있다.
예를 들어, 기기를 인증하는 기술은 다음과 같이 다양하게 존재한다.
먼저, 아이디/패스워드 기반 인증 기술은, 서버/클라이언트 간에 이용되는 일반적인 인증방식으로 클라이언트의 아이디/패스워드를 서버의 데이터베이스와 비교하여 인증하는 방식이다. 따라서, 아이디와 패스워드만 있으면 쉽게 인증이 허가될 수 있다는 장점은 있지만, 아이디와 패스워드 접속을 위한 별도의 어플리케이션이나 프로토콜이 필요하고, 아이디와 패스워드가 노출되었을 경우에 합법적인 기기 이외의 기기 또한 인증이 허가될 수 있는 단점이 있다.
또한, MAC 주소값 인증 기술은, 접속 단말의 MAC 주소값을 인증서버 또는 AP에 등록하여 네트워크 접속 요청 시 아이디 인증 없이 MAC 주소만으로 접속하는 방식이다. 따라서, 접속이 용이하고, 추가적인 어플리케이션이나 프로토콜이 필요하지 않으며, 추가적인 연산이나 지연이 요구되지 않는다는 장점은 있다. 하지만, 새로운 사용자가 추가 또는 탈퇴할 때마다 MAC 주소를 추가하거나 삭제해야 하므로 다수의 사용자를 관리하기 어렵다. 특히, 등록된 MAC 주소가 유출되었을 경우에는 레지스트리에 의한 MAC 주소 변경만으로 쉽게 인증이 허가된다는 단점이 있다.
또한, 암호프로토콜을 활용한 인증 기술은, 다양한 인증 방식 존재하여 각 어플리케이션 환경에 적합한 인증 방식을 선택할 수 있다. 이미 표준화가 진행된 인증 방식을 적용한다면 공식적으로 안정성을 보장받을 수 있다는 장점이 있다. 그러나, 암호 프로토콜의 안정성이 암호 프로토콜이 채용한 암호 및 인증 알고리즘의 안정성에 의존하게 되는 단점이 존재한다. 즉, 암호 프로토콜이 아이디/패스워드를 사용하는지 또는 인증서를 사용하는지에 따라 각 인증 기술이 가지고 있는 장/단점을 그대로 계승하게 된다.
또한, Challenge/Response 인증 기술은, OTP와 유사하게 일회성 해시(HASH) 값을 생성하여 사용자를 인증하는 방법이다. 따라서, 패스워드만으로 어느 기기에서든 쉽게 인증을 수행할 수 있으며, 사용자가 패스워드를 바꾸지 않아도 패스워드가 매번 다른 형태로 네트워크 상으로 이동하기 때문에 종래의 패스워드를 사용하는 기술보다 안전하다는 장점은 있다. 그러나, 패스워드가 노출되었을 경우에는 합법적인 기기 이외의 기기 또한 인증이 허가될 수 있는 단점이 있다.
또한, PKI 기반 기기 인증 기술은, 매우 높은 안정성이 보장되며, 아이디 및 패스워드 노출의 위험성이 적고, 확실한 기기 식별 가능이 가능하다는 장점이 있다. 그러나, 인증서 관리가 필요하고, 많은 계산량에 의한 처리 시간 지연이 있다는 단점이 있다.
상기에 나열한 기존의 기술들을 종합해서 분석해보면, 인증에서 사용되는 수단들이 쉽게 노출되는 경우에 허가 받지 않은 기기도 쉽게 인증이 허가된다는 단점이 공통적으로 존재한다. 즉, 기기 인증에 사용되는 아이디/패스워드, MAC 주소, 인증서 등이 노출되는 경우에 기기 인증에 문제가 발생할 수 있다.
이에 따라 본 발명에서는 종래 기술들의 단점을 해결하기 위한 새로운 기기 인증 기술을 제공하고자 한다.
특히, 본 발명은 물리적 해킹방지가 가능한 하드웨어 보안 모듈을 이용하여 디바이스와 인증 서버간의 상호인증을 안전하게 수행할 수 있는 기술을 제안하고자 한다. 즉, 하드웨어 보안모듈 내에 보유한 키(KEY)를 이용하여 하드웨어 보안 모듈 내에서 암호화 및 복호화를 수행함은 물론이고, 인증에 필요한 디바이스 nonce도 하드웨어 보안모듈 내에서 생성 및 관리함으로써 기존의 기술보다 안전하고 간편하게 디바이스와 인증 서버 간의 상호인증을 수행할 수 있다는 장점을 가질 수 있다.
도 1은 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 시스템을 나타낸 도면이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 시스템은 하드웨어 보안 모듈(111)을 구비한 디바이스(110) 및 인증 서버(120)를 포함한다.
디바이스(110)는 하드웨어 보안 모듈(111)에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버(120)로 전달한다.
이 때, 디바이스 인증 요청 메시지는 디바이스(110)에 상응하는 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 디바이스 암호키로 암호화한 값에 디바이스 식별자가 평문으로 결합된 형태에 상응할 수 있다.
이 때, 하드웨어 보안 모듈(111)은 물리적으로 해킹이 불가능한 보안칩에 상응할 수 있다.
이 때, 디바이스 식별자와 디바이스 암호키는 하드웨어 보안 모듈(111)에 저장될 수 있다.
이 때, 디바이스 식별자와 디바이스 암호키는 디바이스(110)의 발급시 부여되고, 인증 서버(120)에 사전에 등록될 수 있다.
이 때, 디바이스 임시값은 디바이스 요청 메시지가 생성될 때마다 하드웨어 보안 모듈(111) 내에서 새롭게 생성될 수 있다.
인증 서버(120)는 디바이스 인증 요청 메시지를 복호화하여 디바이스(110)가 신뢰할 수 있는 기기인지 여부를 확인한다.
이 때, 인증 서버(120)는 디바이스 인증 요청 메시지에 포함된 평문 형식의 디바이스 식별자를 기반으로 디바이스(110)에 상응하는 기기 종류, 서비스 및 디바이스 암호키를 체크하고, 암호키를 기반으로 디바이스 인증 요청 메시지에 포함된 암호화한 값을 복호화할 수 있다.
이 때, 인증 서버(120)는 암호화한 값을 복호화하여 획득한 디바이스 식별자와 평문 형식의 디바이스 식별자가 일치하는 경우, 디바이스(110)의 인증이 성공한 것으로 판단할 수 있다.
인증 서버(120)에서 디바이스(110)의 인증이 성공한 경우, 서버 인증 요청 메시지를 암호화하여 디바이스(110)로 전달한다.
이 때, 서버 인증 요청 메시지는 인증 서버(120)에 상응하는 인증 서버 임시값(NONCE), 디바이스 임시값 및 서버 정보를 암호화한 형태에 상응할 수 있다.
디바이스(110)는 서버 인증 요청 메시지를 복호화하여 인증 서버(120)가 신뢰할 수 있는 서버인지 여부를 확인한다.
이 때, 디바이스는 하드웨어 보안 모듈(111)에서 암호키를 기반으로 서버 인증 요청 메시지를 복호화하고, 서버 인증 요청 메시지에 포함된 디바이스 임시값과 디바이스 인증 요청 메시지를 통해 전달했던 디바이스 임시값이 동일한지 여부를 고려하여 인증 서버(120)에 대한 인증을 수행할 수 있다.
도 2는 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법을 나타낸 동작 흐름도이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법은, 하드웨어 보안 모듈이 구비된 인증 대상 디바이스가, 하드웨어 보안 모듈에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버로 전달한다(S210).
이 때, 디바이스 인증 요청 메시지는 인증 대상 디바이스에 상응하는 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 디바이스 암호키로 암호화한 값에 디바이스 식별자가 평문으로 결합된 형태에 상응할 수 있다.
이 때, 암호화한 값에 디바이스 식별자(ID)를 평문으로 붙여 보냄으로써 인증 서버가 평문으로 전달된 디바이스 식별자(ID)를 미리 확인하고, 인증 대상 디바이스에 해당하는 기기 종류 및 기기가 적용되는 서비스를 구분하여 이에 따른 암호값을 복호화하기 위한 복호화키를 선택할 수 있도록 할 수 있다.
이 때, 동일한 서비스에 사용되는 디바이스들은 동일한 암호키를 사용하므로 디바이스 식별자(ID)에 따라 복호화키가 정해질 수 있다.
이 때, 디바이스 식별자와 디바이스 암호키는 하드웨어 보안 모듈에 저장될 수 있다.
이 때, 인증 대상 디바이스는 인증 서버로부터 신뢰할 수 있는 기기임을 인증 받기 위하여 디바이스 인증 요청 메시지를 전달하여 기기인증을 요청할 수 있다. 이 기기 인증을 승인받기 위해 필요한 디바이스의 식별자(ID)와 디바이스 암호키는 인증 대상 디바이스에 장착 또는 구비된 하드웨어 보안 모듈 내에 안전하게 저장될 수 있다.
이 때, 하드웨어 보안 모듈은 물리적으로 해킹이 불가능한 보안칩에 상응할 수 있다. 따라서, 하드웨어 보안 모듈 내부에 저장되어 있는 정보는 외부에서 탈취가 불가능하다.
이러한 하드웨어 보안모듈은 인증을 위해 필요한 중요정보를 저장함과 동시에 인증에 필요한 암호화 기능도 제공할 수 있다. 따라서, 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 암호화하는 작업도 하드웨어 보안 모듈 내에서 수행될 수 있다.
이 때, 디바이스 식별자와 디바이스 암호키는 인증 대상 디바이스의 발급시 부여되고, 인증 서버에 사전에 등록될 수 있다.
이 때, 인증 대상 디바이스에서는 명령어를 통해 하드웨어 보안 모듈에 저장되어 있는 디바이스 식별자(ID)의 값을 확인할 수 있지만, 디바이스 암호키는 확인할 수 없다. 또한, 해킹을 통한 유출도 불가능하다.
이 때, 디바이스 임시값은 재생공격을 방지하기 위하여 디바이스 요청 메시지가 생성될 때마다 하드웨어 보안 모듈 내에서 새롭게 생성될 수 있다.
또한, 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법은, 인증 서버가, 디바이스 인증 요청 메시지를 복호화하여 인증 대상 디바이스가 신뢰할 수 있는 기기인지 여부를 확인한다(S220)
이 때, 인증 서버는 디바이스 인증 요청 메시지에 포함된 평문 형식의 디바이스 식별자를 기반으로 인증 대상 디바이스에 상응하는 기기 종류, 서비스 및 상기 디바이스 암호키를 체크하고, 암호키를 기반으로 디바이스 인증 요청 메시지에 포함된 암호화한 값을 복호화할 수 있다.
이 때, 인증 서버는 암호화한 값을 복호화하여 획득한 디바이스 식별자와 평문 형식의 디바이스 식별자가 일치하는 경우, 인증 대상 디바이스의 인증이 성공한 것으로 판단할 수 있다.
또한, 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법은, 인증 대상 디바이스의 인증이 성공한 경우, 인증 서버가, 서버 인증 요청 메시지를 암호화하여 인증 대상 디바이스로 전달한다(S230).
이 때, 서버 인증 요청 메시지는 인증 서버에 상응하는 인증 서버 임시값(NONCE), 디바이스 임시값 및 서버 정보를 암호화한 형태에 상응할 수 있다.
이 때, 인증 서버 임시값(NONCE)는 인증 서버에서 생성한 임시값(NONCE)에 상응할 수 있다.
이 때, 인증 서버 임시값(NONCE)도 재생공격을 방지하기 위하여 서버 인증 요청 메시지가 생성될 대마다 새롭게 인증 서버 내에서 생성될 수 있다.
이 때, 서버 인증 요청 메시지에 포함되는 디바이스 임시값(NONCE)은 가장 최근에 인증 대상 디바이스에서 디바이스 인증 요청 메시지를 통해 전달한 디바이스 임시값에 상응할 수 있다.
또한, 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법은, 인증 대상 디바이스가, 서버 인증 요청 메시지를 복호화하여 인증 서버가 신뢰할 수 있는 서버인지 여부를 확인한다(S240).
이 때, 인증 대상 디바이스는 하드웨어 보안 모듈에서 암호키를 기반으로 서버 인증 요청 메시지를 복호화하고, 서버 인증 요청 메시지에 포함된 디바이스 임시값과 디바이스 인증 요청 메시지를 통해 전달했던 디바이스 임시값이 동일한지 여부를 고려하여 인증 서버에 대한 인증을 수행할 수 있다.
즉, 인증 서버가 전달한 메시지에 포함된 디바이스 임시값과 인증 대상 디바이스가 인증 서버로 전달했던 메시지에 포함된 디바이스 임시값이 동일하면 서버 인증 요청 메시지를 보낸 인증 서버는 인증 대상 디바이스를 관리하는 신뢰할 수 있는 서버임이 증명될 수 있다.
따라서, 인증 서버에 대한 인증이 성공한 경우, 서버 인증 요청 메시지에 포함된 서버 정보를 확인하여 인증 서버에 대한 인증 과정을 마무리할 수 있다.
이 때, 디바이스 암호키는 하드웨어 보안 모듈 내에 저장되어 있으므로, 암호화뿐만 아니라 복호화 또한 하드웨어 보안 모듈 내부에서 수행될 수 있다. 즉, 서버 인증 요청 메시지의 복호화를 통해 추출된 인증 서버 임시값(NONCE)과 디바이스 임시값(NONCE) 및 서버 정보가 모두 하드웨어 보안 모듈 내에서 처리되고, 외부로 유출이 불가능하므로 인증 대상 디바이스와 인증 서버 간에 상호 인증을 보다 안전하게 수행할 수 있다.
즉, 인증 대상 디바이스와 인증 서버는 도 3에 도시된 것처럼 기기 인증 요청 메시지와 서버 인증 요청 메시지를 주고받으면서 상호 간의 인증을 수행할 수 있다.
상기에서 서술한 동작 시나리오는 하나의 일례를 들어 설명한 것으로, 본 발명은 예시한 사례에 국한되지 않는다. 즉, 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증과 관련된 기능 수행은 다양한 동작 시나리오가 가능하다.
이와 같은 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법을 통해 디바이스에 하드웨어 보안모듈을 장착하고, 이 하드웨어 보안모듈 내에 기기를 식별할 수 있는 디바이스 식별자 및 암호키를 보관하여 기기 인증에 필요한 연산을 수행함으로써 안전하고 신뢰할 수 있는 기기 인증을 수행할 수 있는 기술을 제공할 수 있다.
또한, 물리적 해킹방지가 가능한 하드웨어 보안모듈과 같은 보안 칩을 이용하여 인증을 위한 디바이스 정보와 암호키 등의 중요 정보를 보관함으로써 디바이스 인증을 안전하게 수행할 수 있다.
또한, 디바이스 인증을 담당하는 인증 서버가 신뢰할 수 있는 서버인지를 디바이스에 장착된 하드웨어 보안모듈에서 확인함으로써 보안 기능 수행에 우선적으로 요구되는 디바이스와 인증 서버 간의 상호 인증을 안전하게 수행할 수 있다.
또한, IoT 환경의 보안 위협을 방지하기 위하여 기기의 진위성 및 네트워크 접속 권한을 확인하고, 이를 기반으로 신뢰된 인증 체계를 구축할 수 있다.
도 4는 본 발명에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 과정을 상세하게 나타낸 도면이다.
도 4를 참조하면, 본 발명에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 과정은 먼저 하드웨어 보안 모듈을 구비한 디바이스(410)가 하드웨어 보안 모듈 내에서 기기 인증 요청 메시지를 생성 및 암호화하여(S402) 인증 서버로 전달할 수 있다(S404).
이 후, 인증 서버(420)는 수신된 기기 인증 요청 메시지를 복호화하고(S406), 복호화된 값을 기반으로 디바이스(410)에 대한 인증을 수행할 수 있다.
이 후, 디바이스(410)에 대한 인증이 성공하였는지 여부를 판단하고(S408), 인증에 실패하였으면 디바이스(410)에게 기기 인증 실패 메시지를 전달할 수 있다(S410).
또한, 단계(S408)의 판단결과 인증이 성공하였으면, 서버 인증 요청 메시지를 생성 및 암호화하여(S412), 디바이스(410)로 전달할 수 있다(S414).
이 후, 디바이스(410)는 하드웨어 보안 모듈 내에서 서버 인증 요청 메시지를 복호화하여(S416) 인증 서버(420)에 대한 인증을 수행할 수 있다.
이 후, 인증 서버(420)에 대한 인증이 성공하였는지 여부를 판단하고(S418), 인증에 실패하였으면 인증 서버(420)에게 서버 인증 실패 메시지를 전달할 수 있다(S420).
또한, 단계(S418)의 판단결과 인증이 성공하였으면, 디바이스(410)와 인증 서버(420) 간에 상호 인증 절차가 완료될 수 있다(S422).
도 5는 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 구비한 디바이스를 나타낸 블록도이다.
도 5를 참조하면, 본 발명의 일실시예에 따른 하드웨어 보안 모듈을 구비한 디바이스는 통신부(510), 프로세서(520), 하드웨어 보안 모듈(530) 및 메모리(540)를 포함한다.
통신부(510)는 네트워크와 같은 통신망을 통해 디바이스와 인증 서버 간의 상호 인증을 위해 필요한 정보를 송수신하는 역할을 할 수 있다. 이 때, 네트워크는 장치들간에 데이터를 전달하는 통로를 제공하는 것으로서, 기존에 이용되는 네트워크 및 향후 개발 가능한 네트워크를 모두 포괄하는 개념이다.
예를 들면, 네트워크는 인터넷 프로토콜(IP)을 통하여 대용량 데이터의 송수신 서비스 및 끊기는 현상이 없는 데이터 서비스를 제공하는 아이피망, 아이피를 기반으로 서로 다른 망을 통합한 아이피망 구조인 올 아이피(All IP)망 등일 수 있으며, 유선망, Wibro(Wireless Broadband)망, WCDMA를 포함하는 3세대 이동통신망, HSDPA(High Speed Downlink Packet Access)망 및 LTE 망을 포함하는 3.5세대 이동통신망, LTE advanced를 포함하는 4세대 이동통신망, 위성통신망 및 와이파이(Wi-Fi)망 중에서 하나 이상을 결합하여 이루어질 수 있다.
또한, 네트워크는 한정된 지역 내에서 각종 정보장치들의 통신을 제공하는 유무선근거리 통신망, 이동체 상호 간 및 이동체와 이동체 외부와의 통신을 제공하는 이동통신망, 위성을 이용해 지구국과 지구국간 통신을 제공하는 위성통신망이거나 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이루어질 수 있다. 한편, 네트워크의 전송 방식 표준은, 기존의 전송 방식 표준에 한정되는 것은 아니며, 향후 개발될 모든 전송 방식 표준을 포함할 수 있다.
프로세서(520)는 하드웨어 보안 모듈(530)에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버로 전달한다.
이 때, 디바이스 인증 요청 메시지는 디바이스에 상응하는 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 디바이스 암호키로 암호화한 값에 디바이스 식별자가 평문으로 결합된 형태에 상응할 수 있다.
이 때, 암호화한 값에 디바이스 식별자(ID)를 평문으로 붙여 보냄으로써 인증 서버가 평문으로 전달된 디바이스 식별자(ID)를 미리 확인하고, 디바이스에 해당하는 기기 종류 및 기기가 적용되는 서비스를 구분하여 이에 따른 암호값을 복호화하기 위한 복호화키를 선택할 수 있도록 할 수 있다.
이 때, 동일한 서비스에 사용되는 디바이스들은 동일한 암호키를 사용하므로 디바이스 식별자(ID)에 따라 복호화키가 정해질 수 있다.
이 때, 디바이스 식별자와 디바이스 암호키는 하드웨어 보안 모듈(530)에 저장될 수 있다.
이 때, 프로세서는 인증 서버로부터 신뢰할 수 있는 기기임을 인증 받기 위하여 디바이스 인증 요청 메시지를 전달하여 기기인증을 요청할 수 있다. 이 기기 인증을 승인받기 위해 필요한 디바이스의 식별자(ID)와 디바이스 암호키는 디바이스에 장착 또는 구비된 하드웨어 보안 모듈(530) 내에 안전하게 저장될 수 있다.
이 때, 하드웨어 보안 모듈(530)은 물리적으로 해킹이 불가능한 보안칩에 상응할 수 있다. 따라서, 하드웨어 보안 모듈(530) 내부에 저장되어 있는 정보는 외부에서 탈취가 불가능하다.
이러한 하드웨어 보안 모듈(530)은 인증을 위해 필요한 중요정보를 저장함과 동시에 인증에 필요한 암호화 기능도 제공할 수 있다. 따라서, 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 암호화하는 작업도 하드웨어 보안 모듈(530) 내에서 수행될 수 있다.
이 때, 디바이스 식별자와 디바이스 암호키는 디바이스의 발급시 부여되고, 인증 서버에 사전에 등록될 수 있다.
이 때, 디바이스에서는 명령어를 통해 하드웨어 보안 모듈(530)에 저장되어 있는 디바이스 식별자(ID)의 값을 확인할 수 있지만, 디바이스 암호키는 확인할 수 없다. 또한, 해킹을 통한 유출도 불가능하다.
이 때, 디바이스 임시값은 재생공격을 방지하기 위하여 디바이스 요청 메시지가 생성될 때마다 하드웨어 보안 모듈(530) 내에서 새롭게 생성될 수 있다.
또한, 프로세서(520)는 서버 인증 요청 메시지를 복호화하여 인증 서버가 신뢰할 수 있는 서버인지 여부를 확인한다.
이 때, 하드웨어 보안 모듈(530)에서 암호키를 기반으로 서버 인증 요청 메시지를 복호화하고, 서버 인증 요청 메시지에 포함된 디바이스 임시값과 디바이스 인증 요청 메시지를 통해 전달했던 디바이스 임시값이 동일한지 여부를 고려하여 인증 서버에 대한 인증을 수행할 수 있다.
즉, 인증 서버가 전달한 메시지에 포함된 디바이스 임시값과 인증 대상 디바이스가 인증 서버로 전달했던 메시지에 포함된 디바이스 임시값이 동일하면 서버 인증 요청 메시지를 보낸 인증 서버는 인증 대상 디바이스를 관리하는 신뢰할 수 있는 서버임이 증명될 수 있다.
따라서, 인증 서버에 대한 인증이 성공한 경우, 서버 인증 요청 메시지에 포함된 서버 정보를 확인하여 인증 서버에 대한 인증 과정을 마무리할 수 있다.
이 때, 디바이스 암호키는 하드웨어 보안 모듈(530) 내에 저장되어 있으므로, 암호화뿐만 아니라 복호화 또한 하드웨어 보안 모듈 내부에서 수행될 수 있다. 즉, 서버 인증 요청 메시지의 복호화를 통해 추출된 인증 서버 임시값(NONCE)과 디바이스 임시값(NONCE) 및 서버 정보가 모두 하드웨어 보안 모듈 내에서 처리되고, 외부로 유출이 불가능하므로 디바이스와 인증 서버 간에 상호 인증을 보다 안전하게 수행할 수 있다.
즉, 디바이스와 인증 서버는 도 3에 도시된 것처럼 기기 인증 요청 메시지와 서버 인증 요청 메시지를 주고받으면서 상호 간의 인증을 수행할 수 있다.
메모리(540)는 상술한 바와 같이 본 발명의 일실시예에 따른 하드웨어 보안 모듈이 구비된 디바이스에서 발생하는 다양한 정보를 저장한다.
실시예에 따라, 메모리(540)는 하드웨어 보안 모듈이 구비된 디바이스와 독립적으로 구성되어 디바이스와 인증 서버 간의 상호 인증을 위한 기능을 지원할 수 있다. 이 때, 메모리(540)는 별도의 대용량 스토리지로 동작할 수 있고, 동작 수행을 위한 제어 기능을 포함할 수도 있다.
한편, 하드웨어 보안 모듈이 구비된 디바이스는 메모리가 탑재되어 그 장치 내에서 정보를 저장할 수 있다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.
이와 같은 하드웨어 보안 모듈을 구비한 디바이스를 이용함으로써 디바이스에 하드웨어 보안모듈을 장착하고, 이 하드웨어 보안모듈 내에 기기를 식별할 수 있는 디바이스 식별자 및 암호키를 보관하여 기기 인증에 필요한 연산을 수행함으로써 안전하고 신뢰할 수 있는 기기 인증을 수행할 수 있는 기술을 제공할 수 있다.
또한, 물리적 해킹방지가 가능한 하드웨어 보안모듈과 같은 보안 칩을 이용하여 인증을 위한 디바이스 정보와 암호키 등의 중요 정보를 보관함으로써 디바이스 인증을 안전하게 수행할 수 있다.
또한, 디바이스 인증을 담당하는 인증 서버가 신뢰할 수 있는 서버인지를 디바이스에 장착된 하드웨어 보안모듈에서 확인함으로써 보안 기능 수행에 우선적으로 요구되는 디바이스와 인증 서버 간의 상호 인증을 안전하게 수행할 수 있다.
또한, IoT 환경의 보안 위협을 방지하기 위하여 기기의 진위성 및 네트워크 접속 권한을 확인하고, 이를 기반으로 신뢰된 인증 체계를 구축할 수 있다.
도 6은 본 발명의 일실시예에 따른 인증 서버를 나타낸 블록도이다.
도 6을 참조하면, 본 발명의 일실시예에 따른 인증 서버는 통신부(610), 프로세서(620) 및 메모리(630)를 포함한다.
통신부(610)는 네트워크와 같은 통신망을 통해 디바이스와 인증 서버 간의 상호 인증을 위해 필요한 정보를 송수신하는 역할을 할 수 있다. 이 때, 네트워크는 장치들간에 데이터를 전달하는 통로를 제공하는 것으로서, 기존에 이용되는 네트워크 및 향후 개발 가능한 네트워크를 모두 포괄하는 개념이다.
예를 들면, 네트워크는 인터넷 프로토콜(IP)을 통하여 대용량 데이터의 송수신 서비스 및 끊기는 현상이 없는 데이터 서비스를 제공하는 아이피망, 아이피를 기반으로 서로 다른 망을 통합한 아이피망 구조인 올 아이피(All IP)망 등일 수 있으며, 유선망, Wibro(Wireless Broadband)망, WCDMA를 포함하는 3세대 이동통신망, HSDPA(High Speed Downlink Packet Access)망 및 LTE 망을 포함하는 3.5세대 이동통신망, LTE advanced를 포함하는 4세대 이동통신망, 위성통신망 및 와이파이(Wi-Fi)망 중에서 하나 이상을 결합하여 이루어질 수 있다.
또한, 네트워크는 한정된 지역 내에서 각종 정보장치들의 통신을 제공하는 유무선근거리 통신망, 이동체 상호 간 및 이동체와 이동체 외부와의 통신을 제공하는 이동통신망, 위성을 이용해 지구국과 지구국간 통신을 제공하는 위성통신망이거나 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이루어질 수 있다. 한편, 네트워크의 전송 방식 표준은, 기존의 전송 방식 표준에 한정되는 것은 아니며, 향후 개발될 모든 전송 방식 표준을 포함할 수 있다.
프로세서(620)는 인증 대상 디바이스로부터 디바이스 인증 요청 메시지를 수신하고, 디바이스 인증 요청 메시지를 복호화하여 인증 대상 디바이스가 신뢰할 수 있는 기기인지 여부를 확인한다.
이 때, 디바이스 인증 요청 메시지에 포함된 평문 형식의 디바이스 식별자를 기반으로 인증 대상 디바이스에 상응하는 기기 종류, 서비스 및 상기 디바이스 암호키를 체크하고, 암호키를 기반으로 디바이스 인증 요청 메시지에 포함된 암호화한 값을 복호화할 수 있다.
이 때, 암호화한 값을 복호화하여 획득한 디바이스 식별자와 평문 형식의 디바이스 식별자가 일치하는 경우, 인증 대상 디바이스의 인증이 성공한 것으로 판단할 수 있다.
또한, 프로세서(620)는 인증 대상 디바이스의 인증이 성공한 경우, 서버 인증 요청 메시지를 암호화하여 인증 대상 디바이스로 전달한다.
이 때, 서버 인증 요청 메시지는 인증 서버에 상응하는 인증 서버 임시값(NONCE), 디바이스 임시값 및 서버 정보를 암호화한 형태에 상응할 수 있다.
이 때, 인증 서버 임시값(NONCE)는 인증 서버에서 생성한 임시값(NONCE)에 상응할 수 있다.
이 때, 인증 서버 임시값(NONCE)도 재생공격을 방지하기 위하여 서버 인증 요청 메시지가 생성될 때마다 새롭게 인증 서버 내에서 생성될 수 있다.
이 때, 서버 인증 요청 메시지에 포함되는 디바이스 임시값(NONCE)은 가장 최근에 인증 대상 디바이스에서 디바이스 인증 요청 메시지를 통해 전달한 디바이스 임시값에 상응할 수 있다.
메모리(630)는 등록된 디바이스의 기기 종류, 서비스 및 디바이스 암호키를 저장한다.
또한, 메모리(630)는 상술한 바와 같이 본 발명의 일실시예에 따른 인증 서버에서 발생하는 다양한 정보를 저장한다.
실시예에 따라, 메모리(630)는 인증 서버와 독립적으로 구성되어 디바이스와 인증 서버 간의 상호 인증을 위한 기능을 지원할 수 있다. 이 때, 메모리(630)는 별도의 대용량 스토리지로 동작할 수 있고, 동작 수행을 위한 제어 기능을 포함할 수도 있다.
한편, 인증 서버는 메모리가 탑재되어 그 장치 내에서 정보를 저장할 수 있다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.
도 7는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 도면이다.
도 7을 참조하면, 본 발명의 실시예는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템에서 구현될 수 있다. 도 7에 도시된 바와 같이, 컴퓨터 시스템(700)은 버스(720)를 통하여 서로 통신하는 하나 이상의 프로세서(710), 메모리(730), 사용자 입력 장치(740), 사용자 출력 장치(750) 및 스토리지(760)를 포함할 수 있다. 또한, 컴퓨터 시스템(700)은 네트워크(780)에 연결되는 네트워크 인터페이스(770)를 더 포함할 수 있다. 프로세서(710)는 중앙 처리 장치 또는 메모리(730)나 스토리지(760)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(730) 및 스토리지(760)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(731)이나 RAM(732)을 포함할 수 있다.
따라서, 본 발명의 실시예는 컴퓨터로 구현된 방법이나 컴퓨터에서 실행 가능한 명령어들이 기록된 비일시적인 컴퓨터에서 읽을 수 있는 매체로 구현될 수 있다. 컴퓨터에서 읽을 수 있는 명령어들이 프로세서에 의해서 수행될 때, 컴퓨터에서 읽을 수 있는 명령어들은 본 발명의 적어도 한 가지 측면에 따른 방법을 수행할 수 있다.
이상에서와 같이 본 발명에 따른 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
110, 410: 디바이스
111: 하드웨어 보안 모듈
120, 420: 인증 서버 510, 610: 통신부
520, 620, 710: 프로세서 530: 하드웨어 보안 모듈
540, 630, 730: 메모리 700: 컴퓨터 시스템
720: 버스
731: 롬 732: 램
740: 사용자 입력 장치 750: 사용자 출력 장치
760: 스토리지 770: 네트워크 인터페이스
780: 네트워크
120, 420: 인증 서버 510, 610: 통신부
520, 620, 710: 프로세서 530: 하드웨어 보안 모듈
540, 630, 730: 메모리 700: 컴퓨터 시스템
720: 버스
731: 롬 732: 램
740: 사용자 입력 장치 750: 사용자 출력 장치
760: 스토리지 770: 네트워크 인터페이스
780: 네트워크
Claims (20)
- 하드웨어 보안 모듈이 구비된 인증 대상 디바이스가, 상기 하드웨어 보안 모듈에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버로 전달하는 단계;
상기 인증 서버가, 상기 디바이스 인증 요청 메시지를 복호화하여 상기 인증 대상 디바이스가 신뢰할 수 있는 기기인지 여부를 확인하는 단계;
상기 인증 대상 디바이스의 인증이 성공한 경우, 상기 인증 서버가, 서버 인증 요청 메시지를 암호화하여 상기 인증 대상 디바이스로 전달하는 단계; 및
상기 인증 대상 디바이스가, 상기 서버 인증 요청 메시지를 복호화하여 상기 인증 서버가 신뢰할 수 있는 서버인지 여부를 확인하는 단계
를 포함하는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 1에 있어서,
상기 디바이스 인증 요청 메시지는
상기 인증 대상 디바이스에 상응하는 디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 디바이스 암호키로 암호화한 값에 상기 디바이스 식별자가 평문으로 결합된 형태에 상응하는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 2에 있어서,
상기 디바이스 식별자와 상기 디바이스 암호키는 상기 하드웨어 보안 모듈에 저장되는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 2에 있어서,
상기 서버 인증 요청 메시지는
상기 인증 서버에 상응하는 인증 서버 임시값(NONCE), 상기 디바이스 임시값 및 서버 정보를 암호화한 형태에 상응하는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 1에 있어서,
상기 하드웨어 보안 모듈은
물리적으로 해킹이 불가능한 보안칩에 상응하는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 2에 있어서,
상기 디바이스 식별자와 상기 디바이스 암호키는 상기 인증 대상 디바이스의 발급시 부여되고, 상기 인증 서버에 사전에 등록되는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 2에 있어서,
상기 디바이스 임시값은
상기 디바이스 요청 메시지가 생성될 때마다 상기 하드웨어 보안 모듈 내에서 새롭게 생성되는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 2에 있어서,
상기 인증 서버는
상기 디바이스 인증 요청 메시지에 포함된 평문 형식의 디바이스 식별자를 기반으로 상기 인증 대상 디바이스에 상응하는 기기 종류, 서비스 및 상기 디바이스 암호키를 체크하고, 상기 암호키를 기반으로 상기 디바이스 인증 요청 메시지에 포함된 암호화한 값을 복호화하는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 4에 있어서,
상기 인증 대상 디바이스는
상기 하드웨어 보안 모듈에서 상기 암호키를 기반으로 상기 서버 인증 요청 메시지를 복호화하고, 상기 서버 인증 요청 메시지에 포함된 디바이스 임시값과 상기 디바이스 인증 요청 메시지를 통해 전달했던 디바이스 임시값이 동일한지 여부를 고려하여 상기 인증 서버에 대한 인증을 수행하는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 청구항 2에 있어서,
상기 인증 서버는
상기 암호화한 값을 복호화하여 획득한 디바이스 식별자와 상기 평문 형식의 디바이스 식별자가 일치하는 경우, 상기 인증 대상 디바이스의 인증이 성공한 것으로 판단하는 것을 특징으로 하는 인증 서버와 디바이스 간의 상호 인증 방법. - 하드웨어 보안 모듈에서 생성한 디바이스 인증 요청 메시지를 암호화하여 인증 서버로 전달하고, 상기 인증 서버로부터 암호화된 서버 인증 요청 메시지가 수신되는 경우에 상기 서버 인증 요청 메시지를 복호화하여 상기 인증 서버가 신뢰할 수 있는 서버인지 여부를 확인하는 프로세서; 및
상기 하드웨어 보안 모듈을 포함하고,
상기 인증 서버는
상기 디바이스 인증 요청 메시지를 복호화하여 신뢰할 수 있는 기기인지 여부를 확인하는 디바이스 인증을 수행하고, 상기 디바이스 인증이 성공한 경우에 상기 서버 인증 요청 메시지를 암호화하여 회신하는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 11에 있어서,
상기 디바이스 인증 요청 메시지는
디바이스 식별자(ID)와 디바이스 임시값(NONCE)을 디바이스 암호키로 암호화한 값에 상기 디바이스 식별자가 평문으로 결합된 형태에 상응하는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 12에 있어서,
상기 디바이스 식별자와 상기 디바이스 암호키는 상기 하드웨어 보안 모듈에 저장되는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 12에 있어서,
상기 서버 인증 요청 메시지는
상기 인증 서버에 상응하는 인증 서버 임시값(NONCE), 상기 디바이스 임시값 및 서버 정보를 암호화한 형태에 상응하는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 11에 있어서,
상기 하드웨어 보안 모듈은
물리적으로 해킹이 불가능한 보안칩에 상응하는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 12에 있어서,
상기 디바이스 식별자와 상기 디바이스 암호키는 디바이스 발급 시 부여되고, 상기 인증 서버에 사전에 등록되는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 12에 있어서,
상기 디바이스 임시값은
상기 디바이스 요청 메시지가 생성될 때마다 상기 하드웨어 보안 모듈 내에서 새롭게 생성되는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 12에 있어서,
상기 인증 서버는
상기 디바이스 인증 요청 메시지에 포함된 평문 형식의 디바이스 식별자를 기반으로 상기 인증 대상 디바이스에 상응하는 기기 종류, 서비스 및 상기 디바이스 암호키를 체크하고, 상기 암호키를 기반으로 상기 디바이스 인증 요청 메시지에 포함된 암호화한 값을 복호화하는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 14에 있어서,
상기 프로세서는
상기 하드웨어 보안 모듈에서 상기 암호키를 기반으로 상기 서버 인증 요청 메시지를 복호화하고, 상기 서버 인증 요청 메시지에 포함된 디바이스 임시값과 상기 디바이스 인증 요청 메시지를 통해 전달했던 디바이스 임시값이 동일한지 여부를 고려하여 상기 인증 서버에 대한 인증을 수행하는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스. - 청구항 12에 있어서,
상기 인증 서버는
상기 암호화한 값을 복호화하여 획득한 디바이스 식별자와 상기 평문 형식의 디바이스 식별자가 일치하는 경우, 상기 인증 대상 디바이스의 인증이 성공한 것으로 판단하는 것을 특징으로 하는 하드웨어 보안 모듈이 구비된 디바이스.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210010061A KR20220107431A (ko) | 2021-01-25 | 2021-01-25 | 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210010061A KR20220107431A (ko) | 2021-01-25 | 2021-01-25 | 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220107431A true KR20220107431A (ko) | 2022-08-02 |
Family
ID=82845760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210010061A KR20220107431A (ko) | 2021-01-25 | 2021-01-25 | 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220107431A (ko) |
-
2021
- 2021-01-25 KR KR1020210010061A patent/KR20220107431A/ko unknown
Non-Patent Citations (1)
Title |
---|
한국 공개 특허 제10-2015-0114089호, 2015년 10월 12일 공개(명칭: HSM(Hardware Security Module) 디바이스 인증과 에스크로 코드 기반 전자상거래 시스템 및 그 방법) |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9847882B2 (en) | Multiple factor authentication in an identity certificate service | |
KR100704675B1 (ko) | 무선 휴대 인터넷 시스템의 인증 방법 및 관련 키 생성방법 | |
US8327143B2 (en) | Techniques to provide access point authentication for wireless network | |
CN111416807B (zh) | 数据获取方法、装置及存储介质 | |
US8104073B2 (en) | Exchange of network access control information using tightly-constrained network access control protocols | |
US8539559B2 (en) | System for using an authorization token to separate authentication and authorization services | |
US7774594B2 (en) | Method and system for providing strong security in insecure networks | |
KR100729105B1 (ko) | 비 유에스아이엠 단말기에서의 이에이피-에이케이에이 인증처리 장치 및 방법 | |
US20060212928A1 (en) | Method and apparatus to secure AAA protocol messages | |
US8380980B2 (en) | System and method for providing security in mobile WiMAX network system | |
CN107396350B (zh) | 基于sdn-5g网络架构的sdn组件间安全保护方法 | |
EP4231680A1 (en) | Identity authentication system, method and apparatus, device, and computer readable storage medium | |
US10277576B1 (en) | Diameter end-to-end security with a multiway handshake | |
EP3231151B1 (en) | Commissioning of devices in a network | |
KR101531662B1 (ko) | 사용자 단말과 서버간 상호 인증 방법 및 시스템 | |
Noh et al. | Secure authentication and four-way handshake scheme for protected individual communication in public wi-fi networks | |
KR102591826B1 (ko) | Puf를 이용한 인증서 기반 디바이스 인증 장치 및 방법 | |
KR101802588B1 (ko) | 세션 키 및 인증 토큰에 기반한 상호 인증 장치들 간의 상호 인증 방법 및 상호 인증 장치들 | |
WO2022135391A1 (zh) | 身份鉴别方法、装置、存储介质、程序、及程序产品 | |
EP4224792B1 (en) | System for dispersing access rights for routing devices in network | |
KR20220107431A (ko) | 하드웨어 보안 모듈을 이용한 인증 서버와 디바이스 간의 상호 인증 방법 및 이를 이용한 장치 | |
CN115314278B (zh) | 可信网络连接身份认证方法、电子设备及存储介质 | |
KR102345093B1 (ko) | 무선 인터넷의 보안 세션 제어 시스템 및 보안 세션 제어 방법 | |
WO2024149029A1 (zh) | 一种认证方法及认证装置 | |
WO2016091574A1 (en) | Secure message exchange in a network |