KR20100138684A - 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법 - Google Patents

인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법 Download PDF

Info

Publication number
KR20100138684A
KR20100138684A KR1020090061837A KR20090061837A KR20100138684A KR 20100138684 A KR20100138684 A KR 20100138684A KR 1020090061837 A KR1020090061837 A KR 1020090061837A KR 20090061837 A KR20090061837 A KR 20090061837A KR 20100138684 A KR20100138684 A KR 20100138684A
Authority
KR
South Korea
Prior art keywords
key
communication
verifying
communication platform
aik
Prior art date
Application number
KR1020090061837A
Other languages
English (en)
Inventor
박영만
구명완
박창식
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Publication of KR20100138684A publication Critical patent/KR20100138684A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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 cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법에 관한 것이다.
이러한 본 발명에 따르면, 인터넷 기반 컴퓨팅 환경에서 개체간의 안전한 통신을 위한 통신 플랫폼 무결성 검증 및 암호 키를 설정하는 방법은, 제1 단말(MS_A)로부터 제2 단말(MS_B)과의 안전한 통신을 요청하는 메시지를 수신하고, 상기 MS_A와 MS_B에 장착된 TPM(Trusted Platform Module)을 이용하여 통신 플랫폼 무결성을 각각 검증한다. 그리고, 상기 검증에 성공하면 상기 MS_A와 MS_B가 트래픽 암호화 통신을 수행하도록 상기 MS_A와 MS_B 간의 암호 키를 설정하여 공유한다.
이로써, 서로 신뢰하지 못하는 개체간의 통신시 검증기를 중개자로 하여 상호간의 플랫폼 검증 및 암호 키를 설정함으로써 안전한 통신을 제공하는 효과가 있다.
TPM, 암호, 인증, key establishment, 신뢰 컴퓨팅

Description

인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법{COMMUNICATION PLATFORM INTEGRITY AND CRYPTOGRAPHY KEY ESTABLISHMENT METHOD IN INTERNET BASED COMPUTING ENVIRONMENT}
본 발명은 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법에 관한 것이다. 특히, 본 발명은 다양한 보안 위협이 증가하고 있는 인터넷 기반 컴퓨팅 환경에서의 안전한 통신을 위한 통신 플랫폼 무결성 검증 및 암호 키 설정 방법에 관한 것이다.
최근의 인터넷 기반 컴퓨팅환경은 클라우드/그리드(Cloud/Grid) 컴퓨팅, P2P 및 M2M(Machine-to-Machine) 등의 새로운 기술과 서비스의 등장으로 인해 컴퓨터 시스템 및 머신의 복잡성이 증가하고 있다. 이러한 새로운 기술과 서비스의 등장은 시스템 보안적인 측면에 있어서 새로운 위협을 수반하며 시스템의 취약성을 증가 시킬 수 있다. 즉, 컴퓨팅 환경에서의 새로운 기술과 서비스가 발전함에 따라 악의적인 공격자에 의한 다양한 보안 위협도 증가할 수 있다.
한편, 시스템 플랫폼의 민감한 개인적인 정보를 처리함에 있어서 바이러스 및 멀웨어(malware)와 같은 악성 소프트웨어로부터의 면역(free)은 필수 불가결한 전제 조건이라 할 수 있다. 특히, 온라인 결제 및 금융거래와 같은 어플리케이션(application)은 해커들의 타켓이 될 가능성이 크고, 많은 공격으로 인해 취약하기 쉽다.
예를 들면, 가상화 기술을 악용한 루트킷(Rootkit) 공격의 경우 일반적인 안티 바이러스 엔진으로는 탐지 및 치료가 쉽지 않은 문제가 있으며, 최근에는 제로 데이 공격(zero day attack)과 같은 보안 취약점에 대한 공격이 많이 증가하고 있다. 예컨대, 시스템에 구축된 보안 장치를 뚫고 들어간 윔이나 스파이웨어를 통해 공격자가 사용자의 키 입력을 직접 얻어 오거나, 암호화된 패스워드나 비밀 키를 가져와서 암호를 해제하고, 악의적으로 사용하는 사례 등이 발생되고 있다.
이러한 보안 위협은 주로 소프트웨어적인 공격으로 소프트웨어적인 보안 업데이트를 통해 극복하고 있었으나, 상기한 것처럼 기존에 안전하다고 인식되었던 소프트웨어적인 보안 방식의 허점이 노출되는 문제점이 발생하여 소프트웨어적인 보안업데이트의 한계를 개선할 수 있는 방안이 절실히 요구되고 있는 실정이다.
따라서 본 발명은 상기 문제점을 해결하기 위한 것으로 인터넷 기반 컴퓨팅 환경에서 하드웨어적인 보안방식을 적용하여 개체간의 안전한 통신을 위한 통신 플랫폼 무결성 검증 및 암호 키 설정 방법을 제공하기 위한 것이다.
전술한 기술 과제를 해결하기 위한, 본 발명의 실시 예에 따른 인터넷 기반 컴퓨팅 환경에서 개체간의 안전한 통신을 위한 통신 플랫폼 무결성 검증 및 암호 키를 설정하는 방법은,
a) 제1 단말(MS_A)로부터 제2 단말(MS_B)과의 안전한 통신을 요청하는 메시지를 수신하는 단계; b) 상기 MS_A와 MS_B에 장착된 TPM(Trusted Platform Module)을 이용하여 통신 플랫폼 무결성을 각각 검증하는 단계; 및 c) 상기 검증에 성공하면 상기 MS_A와 MS_B가 트래픽 암호화 통신을 수행하도록 상기 MS_A와 MS_B 간의 암호 키(KAB)를 설정하여 공유하는 단계를 포함한다.
한편, 본 발명의 실시 예에 따른 인터넷 기반 컴퓨팅 환경에서의 단말이 개체간의 안전한 통신을 위한 통신 플랫폼 무결성 검증 및 암호 키를 설정하는 방법은,
a) 제1 단말(이하, MS_A로 명명함)이 제2 단말(이하, MS_B로 명명함)과의 안전한 통신을 요청하는 메시지를 검증기(Verifier)로 송신하는 단계; b) 상기 검증기로부터 TPM(Trusted Platform Module)을 이용한 통신 플랫폼 무결성을 검증 받는 단계; 및 c) 상기 검증에 성공하면 상기 검증기를 통해 상기 MS_B와의 암호 키(KAB)를 설정하여 트래픽 암호화 통신을 수행하는 단계를 포함한다.
전술한 구성에 의하여 인터넷 기반 컴퓨팅 환경에서 서로 신뢰하지 못하는 개체간의 통신시 TTP(Trust Third Party)인 검증기(Verifier)를 중개자로 하여 상호간의 하드웨어적인 보안방식을 적용한 플랫폼 검증 및 인증을 수행함으로써 통신 파트너의 플랫폼이 서로 신뢰할 수 있는 개체인지를 상대방에게 제공하는 효과가 있다. 그리고, 플랫폼 검증과 동시에 통신 파트너들 간의 안전한 데이터 통신 제공에 필요한 DH 키 일치 기능을 제공하여 대칭키 암호 통신을 가능하게 하는 효과가 있다.
또한, TPM의 원격검증에서 암호화된 ML의 전송으로 인해 플랫폼 플라이버시 보호를 강화하는 효과가 기대된다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
이제 본 발명의 실시 예에 따른 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법에 대하여 도면을 참조로 하여 상세하게 설명한다.
상술한 인터넷 기반 컴퓨팅 환경에서의 소프트웨어적인 보안 방식의 한계점을 보완하기 위하여 하드웨어를 사용한 보안 문제를 해결해 보고자 신뢰 컴퓨팅(Trusted Computing)이라는 개념이 등장하였다.
신뢰 컴퓨팅 기술은 하드웨어 기반의 보안 칩인 TPM(Trusted Platform Module)을 컴퓨터 및 노트북과 같은 기기들에 공통적으로 적용하여 컴퓨팅 플랫폼을 신뢰할 수 있도록 지원하는 일종의 하드웨어적인 보안기술이다.
한편, 도 1을 통하여 일반적인 TPM을 이용한 원격 검증(Remote Attestation) 프로토콜의 흐름을 설명한다.
도 1은 일반적인 TPM의 원격 검증 프로토콜 흐름을 나타낸 개념도이다.
첨부된 도 1을 참조하면, 클라이언트(Client)(10)는 무결성 증명을 위한 TPM이 장착된 컴퓨터 혹은 노트북일 수 있으며, 검증기(Verifier)(20)는 클라이언트(10)의 TPM을 통해 무결성을 검증하며, 서버에 장착되어 서버가 클라이언트(10)의 무결성을 검증하는 검증 서버로서의 기능을 수행하도록 할 수 있다.
Tamper-resist 모듈인 TPM 칩은 키 값이나 패스워드, 디지털 인증서 등을 저장할 수 있는 안전한 저장 공간을 제공하고, RSA(Rivest Shamir Adleman)와 SHA1(Secure Hash Algorithm)과 같은 암호화 엔진을 제공한다. 그리고, TPM은 내부 데이터 보호를 위하여 밀봉(Sealing) 기능을 제공하는데 이것은 TPM 내부에 존재하는 SRK(Storage Root Key)에 의해 유도된 키 값을 사용하여 암호화를 수행한다. 여 기서, 상기 키 값은 밀봉된 TPM 내부에만 존재하기 때문에 해당 데이터가 유출되더라도 다른 사용자가 암호화된 데이터를 복호하는 것은 불가능하다.
또한 TPM은 체인 오프 트러스트(Chain of Trust) 기술을 사용하여 플랫폼의 무결성을 측정(Integrity Measurement)하고 제3자 원격 검증(Remote Attestation) 기능을 제공할 수 있다.
이 기능은 클라이언트/컴퓨터(10)가 시동단계별로 SHA1 해쉬 값을 측정하여 TPM내의 PCR(Platform Configuration Register)에 저장한 뒤, 해당 값을 원격 검증기/검증 서버(20)로 레포팅하여 올바른 값이 생성되었는지 확인(검증) 받는 프로세서이다. 즉, 컴퓨터(10)가 시동된 후 BIOS와 부트로더, 운용체제, 응용프로그램의 해시 값이 정상적으로 생성되었음을 신뢰된 원격 검증 서버(20)로부터 검증을 받음으로써 사용중인 기기가 안전한 플랫폼인지를 확인 받는 방법이다.
도 1을 참조한 검증(Attestation) 프로토콜의 과정을 하나의 실시 예로 설명하면 다음과 같다.
사용자의 컴퓨터(Client)(10)가 통신 플랫폼의 무결성을 검증하기 위하여 검증 서비스를 요청하는 경우, 검증 서버(Verifier)(20)는 논스(nonce) 값과 함께 검증 요구 메시지를 전송한다(S101). 여기서, 논스 값은 검증 서버(20)에서 생성한 160bit의 랜덤넘버(N)를 말한다.
사용자 컴퓨터(10)는 쿼트 리퀘스트(Quote Request) 메시지를 통해 수신한 랜덤넘버(N)를 TPM에 전달한다(S102). TPM은 수신된 랜덤넘버(N)와 ML(measurement log) 및 이에 대한 PCR 값을 AIK(암호키)로 암호화 서명(SIGAIK)을 하고(S103), 응답 메시지를 통해 검증 서버(20)로 전송한다(S104). 여기서, PCR은 SHA1 이란 해시 함수의 무결성 값을 가지고 있으며, SHA1 함수에는 OS 부트로드 값과 다양한 소프트웨어 수행파일 값 및 DLL파일 등의 검증 값이 저장된다.
검증 서버(20)는 공개키 인증서(AIKcert)를 이용하여 암호화 서명을 풀어 PCR 및 랜덤넘버(N)을 획득한다. 이 때, 검증 서버(20)는 자신이 보낸 논스(랜덤넘버 N)를 확인하고 AIK가 신뢰할 수 있는 플랫폼의 키임을 검증한다. 또한, AIK로 서명한 PCR 값의 무결성을 검증하고, 이 PCR 값이 ML에 대한 해시 값임을 검증함으로써 사용자 컴퓨터(10)가 신뢰할 수 있는 플랫폼임을 확인한다(S105).
이와 같이 TPM을 통해 검증 서버(20)와 컴퓨터(10)는 하드웨어적인 무결성을 검증하는 기능을 수행하여 컴퓨팅 플랫폼을 신뢰할 수 있도록 지원하는 역할을 한다.
한편, C2S(client-to-server), M2M 및 P2P와 같은 엔티티(entity)들간의 안전한 통신을 위해서는 통신 파트너(partner)들의 플랫폼이 인증 및 신뢰할 수 있는 엔티티(entity)인지를 서로 검증할 수 있어야 하고 상호간의 대칭키 암호를 위한 비밀키의 설정이 요구된다.
또한, 상기한 TPM의 원격 검증(Remote Attestation) 프로토콜에서의 ML은 플랫폼에 대한 중요한 정보를 가지므로 프라이버시 보호를 위해서는 제3자가 알 수 없도록 ML을 암호화하는 방안이 요구된다.
이러한 요구를 해결하기 위하여 본 발명의 실시 예에 따르면 소프트웨어 기반의 보안 취약점을 해결하는 하드웨어적인 원격 검증 기술과 DH(Diffie-Hellman)키 일치 기법을 응용하여 플랫폼 인증 및 암호 키 설정 기능을 제공하는 스킴(scheme)을 제안한다. 그리하여 더욱 더 향상된 신뢰 컴퓨팅 환경을 제공할 수 있게 될 것이다.
한편, 도 2는 본 발명의 실시 예에 따른 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 시스템을 나타낸다.
첨부된 도 2를 참조하면, 본 발명의 실시 예에 따른 시스템은 C2S, M2M 및 P2P 등의 인터넷 기반 컴퓨팅환경에서의 이동국(Mobile Station, MS)(100)와 기지국(Base Station, BS)(200)을 포함한다.
이동국(100)은 TPM이 탑재된 개체로 안전한 통신을 위해 기지국(200)과 하드웨어적인 무결성을 검증 받고 기지국(200)의 암호 키 설정에 따른 통신 파트너와 안전한 통신을 수행한다. 여기서, TPM은 일반적으로 컴퓨터나 노트북의 마더보드에 탑재되는 보안모듈칩으로, 본 발명의 실시 예에서는 다양한 무선 컴퓨팅 환경을 고려하여 이동국(100)에 모바일 TPM을 탑재하는 것을 가정한다.
본 명세서에서 이동국(100)은 단말(terminal), 이동 단말(Mobile Terminal, MT), 가입자국(Subscriber Station, SS), 휴대 가입자국(Portable Subscriber Station, PSS), 사용자 장치(User Equipment, UE), 접근 단말(Access Terminal, AT) 등을 지칭할 수도 있고, 이동 단말, 가입자국, 휴대 가입자 국, 사용자 장치 등의 전부 또는 일부의 기능을 포함할 수도 있다.
그리고, 이하 설명에 있어서 이동국(100)은 그 역할에 따라 통신 파트너와 안전한 통신을 요구하는 MS_A(110)와 MS_A(110)로부터의 안전한 통신을 수락하는 MS_B(120)로 구분하여 칭한다.
기지국(200)은 컴퓨팅 환경에서의 3자 원격 검증을 지원하는 검증기로 이동국(100)들의 안전한 통신을 위한 무결성 검증을 각각 수행하고, 무결성이 확인된 이동국(100)간의 상호 안전한 통신을 수행할 수 있도록 암호 키(KAB)를 설정하여 분배하는 역할을 한다.
본 명세서에서 기지국(200)은 접근점(Access Point, AP), 무선 접근국(Radio Access Station, RAS), 노드B(Node B), 송수신 기지국(Base Transceiver Station, BTS), MMR(Mobile Multihop Relay)-BS 등을 지칭할 수도 있고, 접근점, 무선 접근국, 노드B, 송수신 기지국, MMR-BS 등의 전부 또는 일부의 기능을 포함할 수도 있다.
한편, 도 3을 통해 본 발명의 실시 예에 따른 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정방법을 설명하되, 설명의 편의상 도 2의 시스템 구성을 가정하여 설명한다.
먼저, 본 발명의 실시 예에서 기술되는 다양한 기호에 대해 다음과 같이 정의한다.
■ 기호 정의
A/B: 통신하고자 하는 MS_A/MS_B의 식별자(identifier, ID)
N1/N2 : 기지국(BS)의 검증기(Verifier)에서 발생하는 랜덤넘버(nonce)
a/v/b : MS_A/Verifier/MS_B의 DH(Diffie-Hellman) 파라미터(DH 비밀키)
Figure 112009041424019-PAT00001
/
Figure 112009041424019-PAT00002
/
Figure 112009041424019-PAT00003
: MS_A/Verifier/MS_B의 DH(Diffie-Hellman) 파라미터(DH 공개키)
KAV/KBV/KAB : 각 개체(entity)들 간의 설정된 암호통신을 위한 대칭키(즉, MS_A와 Verifier/MS_B와 Verifier/MS_A와 MS_B 간에 설정된 암호통신을 위한 대칭키)
PCRA/PCRB : MS_A/MS_BB의 PCR(Platform Configuration Register) 값
E_KAV( )/E_KBV ( ) : KAV/KBV 대칭키로 암호화
SIGAIK_A_S( ): MS_A의 AIK 개인키로 서명화
SIGAIK_B_S( ) : MS_B의 AIK 개인키로 서명화
도 3은 본 발명의 실시 예에 따른 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정방법을 나타낸 흐름도이다.
첨부된 도 3을 참조하면, 무선 인터넷 기반 컴퓨팅 환경에서의 MS_A(110)와 MS_B(120)간의 안전한 통신을 위해 BS_Verifier(200)(이하, 설명의 편의상 BS_V라 칭함)는 MS_A(110)와 MS_B(120)의 무결성을 각각 검증한다. 그리고, MS_A(110)와 MS_B(120)간의 안전한 통신을 중계하기 위한 암호화 키를 설정 및 이를 공유하여 이동국(100)간의 안전한 암호 통신을 보장하는 스킴을 보여준다.
먼저, 본 발명의 실시 예에 따른 MS_A(110)는 MS_B(120)와의 안전한 통신을 위하여 MS_B(120)의 아이덴티티(Identity)가 담긴 리퀘스트(Request) 메시지를 BS_V(200)로 전송한다(S301).
인터넷 컴퓨팅 환경에서 개체(entity)들간의 안전한 통신을 위해서는 통신 파트너(partner)들의 플랫폼이 인증 및 신뢰할 수 있는 엔티티(entity)인지를 서로 검증할 수 있어야 하고, 상호간의 대칭키 암호를 위한 비밀키의 설정이 요구된다.
그러므로, BS_V(200)는 MS_A(110)로부터 리퀘스트 메시지를 수신하면 MS_A(110)R가 MS_B(120)와의 안전한 통신을 요청하는 것을 파악하고, 안전한 통신을 수행하기 위해 먼저 MS_A(110)의 무결성을 검증하는 동작을 수행한다.
BS_V(200)는 제1 랜덤넘버 (nonce N1)을 생성하고, BS_V(200)의 DH(Diffie-Hellman) 파라미터인 v와
Figure 112009041424019-PAT00004
mod p를 계산하여 MS_A(110)로 전송한다(S302). 여기서,
Figure 112009041424019-PAT00005
는 MS_A(110)와 암호통신을 설정하기 위한 BS_V(200)의 DH 공개키이다.
MS_A(110)는 자신의 DH 파라미터인 a와
Figure 112009041424019-PAT00006
mod p 를 계산하고 TPM의 쿼트 응답(Quote Response)을 이용하여 MS_A(110)의 AIK 개인키로 PCRA와 SHA1(
Figure 112009041424019-PAT00007
, N1)=H1 를 서명한다. 여기서, 기존의 서명에는 랜덤넘버(N)만 들어갔으나 본 발명의 실시 예에 따르면 MS_A(110)의 DH 파라미터 값인
Figure 112009041424019-PAT00008
와 제1 랜덤넘버(N1)값을 포함하는 해시함수(H1)값이 들어간다.
그리고, MS_A(110)와 BS_V(200)간의 대칭키 KAV=
Figure 112009041424019-PAT00009
를 계산하여 MS_A(110)의 ML(Measurement Log)을 대칭키 알고리즘으로 암호화 E_KAV(MLA)한다. 여기서, MS_A(110)가 상기 대칭키 값을 계산하는 방법은 자신이 생성한
Figure 112009041424019-PAT00010
값을 알고 있으므로 BS_V(200)로부터 수신된
Figure 112009041424019-PAT00011
값에 a 값을 지수승하여
Figure 112009041424019-PAT00012
를 구한다.
이처럼, MS_A(110)가 ML를 암호화 하는 이유는 ML에는 OS 정보 및 DLL 등의 플라이버시에 관련된 정보들이 들어있기 때문에 이를 암호화 하여 플라이버시 보호 를 강화하는 것이 바람직하기 때문이다.
이 후, MS_A(110)는 자신의 AIK 개인키로 서명한 서명문 SIGAIK_A_S(PCRA, H1)과
Figure 112009041424019-PAT00013
및 E_KAV (MLA)를 BS_V(200)로 전송한다(S303).
BS_V(200)는 MS_A(110)로부터 수신된 대칭키 KAV=
Figure 112009041424019-PAT00014
를 계산하고, 이 키로 대칭키 암호문을 복호화하여 MLA를 구한다. 그리고, MS_A(110)의 AIK 공개키로 서명문을 풀어 검증하고 PCRA, H1을 구하여 각각 체크한다.
BS_V(200)는 수신된 H1(
Figure 112009041424019-PAT00015
, N1) 값과 자신이 보낸 제1 랜덤넘버 N1를 확인하고 AIK가 신뢰할 수 있는 플랫폼의 키임을 검증한다. 또한, AIK로 서명한 PCRA 값의 무결성을 검증하고, 이 PCRA 값이 MLA에 대한 해시 값임을 검증한다.
이어서, MS_A(110)의 무결성 체크가 모두 성공하면 BS_V(200)는 MS_A(110)의 플랫폼이 안전한 것으로 검증한다(S304).
반면, BS_V(200)는 MS_A(110)에서 요청한 MS_B(120)의 무결성 및 암호통신을 설정하기 위하여 새로운(두번째) 제2 랜덤넘버(nonce N2)를 생성하고, MS_B(120)로 A,
Figure 112009041424019-PAT00016
, N2를 전송한다(S305). 이후, MS_B(120)의 검증절차는 앞서 설명한 MS_A(110)의 검증절차와 대상만 다를 뿐 유사하다.
MS_B(120)는 BS_V(200)와의 대칭키인 KVB=
Figure 112009041424019-PAT00017
를 계산하고, MS_B(120)의 AIK 개인키로 PCRB와 SHA1(
Figure 112009041424019-PAT00018
, N2)=H2 를 서명한다. 그리고, MS_B(120)의 ML(Measurement Log)을 대칭키 알고리즘으로 암호화 E_KBV(MLB)한다.
그 후, MS_B(120)는 자신의 AIK 개인키로 서명한 서명값 SIGAIK_B_S(PCRB, H2)와
Figure 112009041424019-PAT00019
및 E_KBV (MLB)를 BS_V(200)로 전송한다(S306).
BS_V(200)는 MS_B(120)로부터 수신된 대칭키 KVB=
Figure 112009041424019-PAT00020
를 계산하고, 이 키로 대칭키 암호문을 복호화하여 MLB를 구한다. 그리고, MS_B(120)의 AIK 공개키로 서명문을 검증하고 PCRB, H2를 구하여 각각 체크한다. 이어서, MS_B(120)의 무결성 체크가 모두 성공하면 BS_V(200)는 MS_B(120)의 플랫폼이 안전한 것으로 검증한다(S307).
이렇게 각 MS(110, 120)에 대한 검증이 완료되면, BS_V(200)는 MS_A(110)와 MS_B(120)의 플랫폼이 신뢰할 수 있는 것으로 판단하여
Figure 112009041424019-PAT00021
를 계산한다. 그리고, MS_A(110)로 상기 계산된
Figure 112009041424019-PAT00022
와 함께
Figure 112009041424019-PAT00023
를 전송하고(S308), MS_B(120)로 상기 계산된
Figure 112009041424019-PAT00024
와 함께
Figure 112009041424019-PAT00025
를 전송한다(S309).
MS_A(110)와 MS_B(120)는 수신된
Figure 112009041424019-PAT00026
를 각각 자신과 BS_V(200)와의 대칭키(KAV/KVB)로 나누어서 MS_A(110)는
Figure 112009041424019-PAT00027
를, 그리고 MS_B는
Figure 112009041424019-PAT00028
를 각각 구한다. 그 후 MS_A(110)와 MS_B(120)는 구해진
Figure 112009041424019-PAT00029
Figure 112009041424019-PAT00030
에 각각 자신의 파라미터 값 a 및 b만큼 지수승하여 서로의 대칭키 KAB=
Figure 112009041424019-PAT00031
를 설정 공유함으로써 안전한 암호 통신을 수행한다(S310). 즉, MS_A(110)와 MS_B(120)는 설정된 대칭키 KAB 를 사용하여 트랙픽 암호화(traffic encryption) 통신을 수행할 수 있다.
이와 같이 본 발명의 실시 예에 따르면, 서로 신뢰하지 못하는 MS_A(110)와 MS_B가 믿을 수 있는 TTP(Trust Third Party)인 BS_V(200)를 중개자로 해서 상호간의 플랫폼 검증 및 인증을 수행함으로써, 통신 파트너의 플랫폼이 서로 신뢰할 수 있는 개체인지를 상대방에게 제공하는 효과가 있다.
그리고, 통신 파트너들 간의 안전한 데이터 통신 제공에 필요한 DH 키 일치 기능도 제공하여 대칭키 암호 통신을 가능하게 하는 효과가 있다. 또한, TPM의 원격검증에서 암호화된 ML의 전송으로 인해 플랫폼 플라이버시 보호를 강화하는 효과가 있다. 따라서, 향상된 신뢰 컴퓨팅 기반의 안전한 통신채널을 제공하는 장점이 있다.
이상에서는 본 발명의 실시 예에 대하여 설명하였으나, 본 발명은 상기한 실시 예에만 한정되는 것은 아니며 그 외의 다양한 변경이 가능하다.
예컨대, 도 3에 도시한 본 발명의 실시 예에서는 무선 인터넷 기반 통신 환경에서 복수의 MS(100)와 BS_V(200)를 예로 설명하였으나 이에 한정되지 않고, 안전한 통신이 요구되는 웹 클라이언트와 서버_V간의 통신, 머신과 머신(Machine-to-Machine)과의 통신, USN 센서간의 통신 등에도 적용할 수 있다. 그래서, 다양한 인터넷 기반 컴퓨팅 환경에 적용함으로써 다양한 개체들간의 안전한 통신을 제공할 수 있는 이점이 있다.
본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
도 1은 일반적인 TPM의 원격 검증 프로토콜 흐름을 나타낸 개념도이다.
도 2는 본 발명의 실시 예에 따른 시스템을 개략적으로 나타낸 네트워크 구성도이다.
도 3은 본 발명의 실시 예에 따른 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정방법을 나타낸 흐름도이다.

Claims (11)

  1. 인터넷 기반 컴퓨팅 환경에서 개체간의 안전한 통신을 위한 통신 플랫폼 무결성 검증 및 암호 키를 설정하는 방법에 있어서,
    a) 제1 단말(MS_A)로부터 제2 단말(MS_B)과의 안전한 통신을 요청하는 메시지를 수신하는 단계;
    b) 상기 MS_A와 MS_B에 장착된 TPM(Trusted Platform Module)을 이용하여 통신 플랫폼 무결성을 각각 검증하는 단계; 및
    c) 상기 검증에 성공하면 상기 MS_A와 MS_B가 트래픽 암호화 통신을 수행하도록 상기 MS_A와 MS_B 간의 암호 키를 설정하여 공유하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  2. 제 1 항에 있어서,
    상기 b) 단계는,
    상기 MS_A 및 MS_B와의 대칭키를 각각 설정하고 상기 통신 플랫폼 무결성 검증시 ML(measurement log)정보를 암호화하여 각각 통신하는 것을 특징으로 하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 b) 단계에서 상기 MS_A의 무결성 검증은,
    제1 랜덤넘버(N1) 및 DH(Diffie-Hellman) 파라미터 값(
    Figure 112009041424019-PAT00032
    )을 생성하여 상기 MS_A로 전송하는 단계;
    상기 MS_A의 개인키 AIKA로 암호화 서명한 서명문, DH 파라미터 값(
    Figure 112009041424019-PAT00033
    ) 및 암호화된 MLA정보를 수신하는 단계; 및
    상기 암호화된 MLA정보와 상기 서명문을 풀어 상기 MS_A의 무결성을 검증하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  4. 제 3 항에 있어서,
    상기 MS_A의 무결성을 검증하는 단계는,
    상기 MS_A과의 제1 대칭키(KAV=
    Figure 112009041424019-PAT00034
    )를 계산하고, 상기 제1 대칭 키로 암호문을 복호화하여 상기 MLA정보를 구하는 단계;
    상기 MS_A의 AIKA 공개키로 상기 서명문을 풀어 PCRA, H1=(
    Figure 112009041424019-PAT00035
    , N1)을 구하고, 상기 제1 랜덤넘버(N1)를 확인하여 상기 AIKA가 신뢰할 수 있는 플랫폼 키임을 검증하는 단계; 및
    상기 AIKA로 서명한 PCRA 값의 무결성을 검증하고, 상기 PCRA 값이 MLA에 대 한 해시 값임을 검증하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  5. 제 4 항에 있어서,
    상기 b) 단계에서 상기 MS_B의 무결성 검증은,
    MS_A의 식별자와 제2 랜덤넘버(N2) 및 DH(Diffie-Hellman) 파라미터 값(
    Figure 112009041424019-PAT00036
    )을 생성하여 상기 MS_B로 전송하는 단계;
    상기 MS_B의 개인키 AIKB로 서명한 서명문, DH 파라미터 값(
    Figure 112009041424019-PAT00037
    ) 및 암호화된 MLB정보를 수신하는 단계; 및
    상기 암호화된 MLB정보와 상기 서명문을 풀어 상기 MS_B의 무결성을 검증하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  6. 제 5 항에 있어서,
    상기 MS_B의 무결성을 검증하는 단계는,
    상기 MS_B과의 제2 대칭키(KAV=
    Figure 112009041424019-PAT00038
    )를 계산하고, 상기 제2 대칭 키로 암호문을 복호화하여 상기 MLB 정보를 구하는 단계;
    상기 MS_B의 AIKB 공개키로 상기 서명문을 풀어 PCRB, H2=(
    Figure 112009041424019-PAT00039
    , N2)를 구하고, 상기 제2 랜덤넘버(N2)를 인하여 상기 AIKB가 신뢰할 수 있는 플랫폼 키임을 검증하는 단계; 및
    상기 AIKB로 서명한 PCRB 값의 무결성을 검증하고, 상기 PCRB 값이 MLB에 대한 해시 값임을 검증하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  7. 제 1 항에 있어서,
    상기 c) 단계는,
    상기 MS_A와 설정되는 제1 대칭키와 상기 MS_B와 설정되는 제2 대칭키를 곱한 값(
    Figure 112009041424019-PAT00040
    )과 상기 MS_B의 DH 파라미터 값(
    Figure 112009041424019-PAT00041
    )을 상기 MS_A로 전송하는 단계; 및
    상기 1 대칭키와 상기 제2 대칭키를 곱한 값(
    Figure 112009041424019-PAT00042
    )과 상기 MS_A의 DH 파라미터 값(
    Figure 112009041424019-PAT00043
    )을 상기 MS_A로 전송하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  8. 인터넷 기반 컴퓨팅 환경에서의 단말이 개체간의 안전한 통신을 위한 통신 플랫폼 무결성 검증 및 암호 키를 설정하는 방법에 있어서,
    a) 제1 단말(이하, MS_A로 명명함)이 제2 단말(이하, MS_B로 명명함)과의 안전한 통신을 요청하는 메시지를 검증기(Verifier)로 송신하는 단계;
    b) 상기 검증기로부터 TPM(Trusted Platform Module)을 이용한 통신 플랫폼 무결성을 검증 받는 단계; 및
    c) 상기 검증에 성공하면 상기 검증기를 통해 상기 MS_B와의 암호 키를 설정하여 트래픽 암호화 통신을 수행하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  9. 제 8 항에 있어서,
    상기 b) 단계는,
    b-1) 상기 검증기에서 발생되는 제1 랜덤넘버(N1) 및 DH(Diffie-Hellman) 파라미터 값(
    Figure 112009041424019-PAT00044
    )을 수신하는 단계;
    b-2) 상기 MS_A의 DH 파라미터 값
    Figure 112009041424019-PAT00045
    을 생성하고, 상기 TPM을 이용하여 AIKA 개인키로 PCRA와 H1=(
    Figure 112009041424019-PAT00046
    , N1)을 암호화 서명하는 단계;
    b-3) ML(Measurement Log)을 대칭키 알고리즘으로 암호화 하는 단계; 및
    b-4) 상기 DH 파라미터 값
    Figure 112009041424019-PAT00047
    , 개인키 AIKA로 암호화 서명한 서명문 및 암호화된 MLA 정보를 상기 검증기로 전송하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  10. 제 9 항에 있어서,
    상기 b-3) 단계는,
    상기
    Figure 112009041424019-PAT00048
    값에 상기
    Figure 112009041424019-PAT00049
    값의 a만큼 지수승하여 상기 검증기와의 제1 대칭키(KAV=
    Figure 112009041424019-PAT00050
    )를 계산하는 단계를 포함하는 것을 특징으로 하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
  11. 제 10 항에 있어서,
    상기 c) 단계는,
    상기 검증기와 설정되는 제1 대칭키와 상기 검증기와 MS_B간에 설정되는 제2 대칭키를 곱한 값(
    Figure 112009041424019-PAT00051
    )과 상기 MS_B의 DH 파라미터 값(
    Figure 112009041424019-PAT00052
    )을 수신하는 단계; 및
    상기
    Figure 112009041424019-PAT00053
    를 상기 제1 대칭키(KAV)로 나누어서
    Figure 112009041424019-PAT00054
    를 구하고, 상기
    Figure 112009041424019-PAT00055
    에 상기 a만큼 지수승하여 상기 MS_B와의 대칭키(KAB=
    Figure 112009041424019-PAT00056
    )를 설정하는 단계
    를 포함하는 통신 플랫폼 무결성 검증 및 암호 키 설정방법.
KR1020090061837A 2009-06-23 2009-07-07 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법 KR20100138684A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20090056122 2009-06-23
KR1020090056122 2009-06-23

Publications (1)

Publication Number Publication Date
KR20100138684A true KR20100138684A (ko) 2010-12-31

Family

ID=43512123

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090061837A KR20100138684A (ko) 2009-06-23 2009-07-07 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법

Country Status (1)

Country Link
KR (1) KR20100138684A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016013846A1 (ko) * 2014-07-21 2016-01-28 엘지전자 주식회사 무선 통신 시스템에서 요청 메시지를 처리하기 위한 방법 및 이를 위한 장치
KR20230007595A (ko) 2021-07-05 2023-01-13 (주)이더블유비엠 키서버, 이를 이용한 키 수령방법, 및 데이터 암호화 전송방법, 장치 및 프로그램

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016013846A1 (ko) * 2014-07-21 2016-01-28 엘지전자 주식회사 무선 통신 시스템에서 요청 메시지를 처리하기 위한 방법 및 이를 위한 장치
US9883320B2 (en) 2014-07-21 2018-01-30 Lg Electronics Inc. Method for processing request message in wireless communication system and apparatus therefor
KR20230007595A (ko) 2021-07-05 2023-01-13 (주)이더블유비엠 키서버, 이를 이용한 키 수령방법, 및 데이터 암호화 전송방법, 장치 및 프로그램

Similar Documents

Publication Publication Date Title
US11757662B2 (en) Confidential authentication and provisioning
US10484185B2 (en) Method and system for distributing attestation key and certificate in trusted computing
He et al. A strong user authentication scheme with smart cards for wireless communications
US9949115B2 (en) Common modulus RSA key pairs for signature generation and encryption/decryption
US20220103369A1 (en) Security system and related methods
US20200186358A1 (en) Persistent network device authentication
US10601590B1 (en) Secure secrets in hardware security module for use by protected function in trusted execution environment
KR20200013764A (ko) 제1 애플리케이션과 제2 애플리케이션 사이의 상호 대칭 인증을 위한 방법
Singla et al. Look before you leap: Secure connection bootstrapping for 5g networks to defend against fake base-stations
Meng et al. Low-latency authentication against satellite compromising for space information network
Gupta et al. Onboarding and software update architecture for IoT devices
Obert et al. Recommendations for trust and encryption in DER interoperability standards
Gupta et al. An improved authentication scheme for BLE devices with no I/O capabilities
EP3720042B1 (en) Method and device for determining trust state of tpm, and storage medium
US9800410B1 (en) Data encryption system and method
Khashan et al. Innovative energy-efficient proxy Re-encryption for secure data exchange in Wireless sensor networks
Chalkiadakis et al. The million dollar handshake: secure and attested communications in the cloud
Ashraf et al. Lightweight and authentic symmetric session key cryptosystem for client–server mobile communication
Vinh et al. Property‐based token attestation in mobile computing
Galal et al. Blindfold: Keeping private keys in PKIs and CDNs out of sight
KR20100138684A (ko) 인터넷 기반 컴퓨팅 환경에서 통신 플랫폼 무결성 검증 및 암호 키 설정 방법
Shojaie et al. Enhancing EAP-TLS authentication protocol for IEEE 802.11 i
Huang et al. A secure wireless communication system integrating RSA, Diffie–Hellman PKDS, intelligent protection-key chains and a Data Connection Core in a 4G environment
Zhang et al. Authentication and Key Agreement Protocol in Hybrid Edge–Fog–Cloud Computing Enhanced by 5G Networks
Park et al. Security enhanced IEEE 802.1 x authentication method for WLAN mobile router

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid