KR20110024003A - 네트워크상에서의 디바이스 인증 시스템 및 인증 방법 - Google Patents

네트워크상에서의 디바이스 인증 시스템 및 인증 방법 Download PDF

Info

Publication number
KR20110024003A
KR20110024003A KR1020090081835A KR20090081835A KR20110024003A KR 20110024003 A KR20110024003 A KR 20110024003A KR 1020090081835 A KR1020090081835 A KR 1020090081835A KR 20090081835 A KR20090081835 A KR 20090081835A KR 20110024003 A KR20110024003 A KR 20110024003A
Authority
KR
South Korea
Prior art keywords
server
message
authentication
time information
information
Prior art date
Application number
KR1020090081835A
Other languages
English (en)
Other versions
KR101676305B1 (ko
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 엘지전자 주식회사
Priority to KR1020090081835A priority Critical patent/KR101676305B1/ko
Publication of KR20110024003A publication Critical patent/KR20110024003A/ko
Application granted granted Critical
Publication of KR101676305B1 publication Critical patent/KR101676305B1/ko

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 네트워크상에서의 디바이스 인증 시스템 및 인증 방법에 관한 것으로, 서버로 디바이스 인증을 요청하는 단계; 상기 서버로부터 인증 요구 메시지를 수신하는 단계; 상기 수신된 인증 요구 메시지에 포함된 상기 서버 정보를 이용하여 메시지를 추출하는 단계;및 상기 추출된 메시지를 포함하는 인증 결과 메시지를 상기 서버로 전송하는 단계를 포함하고,상기 추출된 메시지가 상기 서버의 메시지와 일치하는 경우 상기 디바이스의 인증이 이루어지는 것을 특징으로 한다.
따라서, 본 발명은 시간 정보를 이용하여 이를 암호화하고 비밀 공유를 기반으로 하는 새로운 메시지 전송 구조를 설명하고 있는데, 상기 구조에서는 각각의 새로운 메시지가 새로운 키(Mod N)를 이용하여 인증되게 함으로서, 키 또는 메시지 공격에 대한 시스템의 내성을 강화하는 효과가 있다.
DTV, 임베디드, 인증

Description

네트워크상에서의 디바이스 인증 시스템 및 인증 방법{System and method of networking device certification}
본 발명은 네트워크상에서의 디바이스 인증 시스템 및 인증 방법에 관한 것으로, 더욱 상세하게는 네트워크를 통해 연결된 디바이스와 서버의 신뢰성을 갖는 데이터 송수신이 이루어지도록 서로 간의 식별을 위한 인증 방법에 관한 것이다.
정보 보안의 4가지 가장 중요한 목표 중의 하나가 인증이다. 다른 목표는 신뢰성(confidentiality),데이터 무결성(data-integrity)및 거부성(non-repudiation) 이다. 통신 네트워크에서, 이러한 목표의 일부 또는 전부가 만족 될 필요가 있다.
전자식 분배 네트워크에서 메시지 인증은 메시지를 수신하는 서버에서 디바이스의 아이덴티티(identity)를 보증함으로써 정보 보안의 목표를 만족한다. 하지만, 2진 시퀀스로 표시된 메시지에 대해서 밀봉된 봉투와 같은 물리적인 보호가 불가능하기 때문에, 암호화 기법을 이용하는 디지털 수단이 개발되어 왔다. 일반적으로 ID/패스워드 입력방식의 인증 방법이나 블록 암호를 사용한 MAC이나 해쉬 함수를 사용한 MAC이 많이 소개되어 왔으나, TCP/IP 프로토콜의 특성상 보안성에 취약점을 가지고 있어, 악의적 크래커 등에 의해 크래킹 될 수 있는 문제점을 갖는 다.
본 발명은 네트워킹 기능을 갖는 임베디드 기기와 서버와의 통신을 위해서 요구되는 상호 인증을 신뢰성을 해치지 않고 경량화할 수 있는 인증 방법을 제공하기 위한 것이다.
본 발명이 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기의 목적을 달성하기 위한 본 발명의 네트워크상에서의 디바이스 인증 시스템은 서버 정보를 포함하는 인증 메시지를 송신하고 응답 메시지에 포함된 디바이스 정보로부터 메시지를 검증하는 서버; 및 상기 서버로 인증을 요청하고 상기 서버의 인증 메시지에 포함된 상기 서버 정보를 이용하여 추출된 메시지를 검증하고, 디바이스 정보를 포함하는 응답 메시지를 상기 서버로 전송하는 디바이스를 포함하고, 상기 서버 정보 혹은 디바이스 정보를 이용하여 추출된 메시지가 상기 서버와 디바이스에서 일치하는 경우, 상기 디바이스의 인증이 이루어지는 것을 특징으로 한다.
상기 서버 정보와 디바이스 정보는 현재 시간 정보와 나머지(Mod) 연산에 수행될 난수(N)을 포함한다.
상기 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 한다.
상기 서버와 상기 디바이스는 동일한 내용의 메시지 박스를 한다.
상기 서버는,
임베디드 애플리케이션을 제 1 알고리즘을 이용하여 암호화하는 제 1 암호화부와; 상기 서버의 현재 시간 정보와 상기 시간 정보를 이용하여 나머지(Mod N) 연산을 수행하여 결과값에 해당하는 추출된 메시지를 포함하는 상기 인증 메시지를 제 2 알고리즘을 이용하여 암호화하는 제 2 암호화부; 및 상기 암호화된 임베디드 애플리케이션과 인증 메시지를 상기 디바이스로 전송하는 애플리케이션 처리부를 포함한다.
상기 제 1 알고리즘은 AES(Advanced Encryption Standard) 알고리즘인 것을 특징으로 한다.
상기 제 2 알고리즘은 SHA(secure hash algorithm)-1 알고리즘인 것을 특징으로 한다.
상기 서버 정보에 포함된 서버의 시간 정보를 초 단위 값으로 변환하여, 변환된 값에 대해 난수(N)을 이용하여 나머지(Mod)연산을 수행한 후 결과 값에 해당하는 메시지를 메시지 박스에서 추출한다.
상기 디바이스의 응답 메시지는 상기 디바이스의 현재 시간 정보와 나머지(Mod) 연산에 수행될 난수(N)을 포함한다.
상기 디바이스 장치는,
상기 서버로 디바이스 인증 혹은 임베디드 애플리케이션 다운로드를 요청하는 임베디드 호스트; 상기 서버로부터 다운로드된 임베디드 애플리케이션을 제 1 알고리즘으로 복호화하는 제 1 암호화부; 상기 서버의 암호화된 인증 메시지를 제 2 알고리즘으로 복호화하고 상기 인증 메시지에 포함된 서버의 현재 시간 정보를 이용하여 나머지(Mod N) 연산을 수행한 후 메시지 박스로부터 추출한 결과값에 해당하는 메시지를 검증하는 제 2 복호화부; 상기 서버와의 인증 이상 유무를 판단하고 상기 다운로드된 임베디드 애플리케이션을 모니터링 하는 시큐리티 체크 라이브러리; 상기 임베디드 애플리케이션 목록을 상기 서버로 요청하고 상기 시큐리티 체크 라이브러리에서 상기 서버와의 인증을 확인하여 상기 서버로부터 암호화된 임베디드 애플리케이션 목록을 다운로드 하는 다운로드 매니저; 및 상기 다운로드된 임베디드 애플리케이션 목록을 브라우징하여 선택하는 애플리케이션 브라우저를 포함한다.
상기 디바이스는 확장성 있는 임베디드 애플리케이션을 추가 및 실행하는 디지털 방송 수신기인 것을 특징으로 한다.
상기 제 1 알고리즘은 AES(Advanced Encryption Standard) 알고리즘, 상기 제 2 알고리즘은 SHA(secure hash algorithm)-1 알고리즘인 것을 특징으로 한다.
상기 인증 메시지와 응답 메시지는 나머지 연산에 수행될 난수(N)에 의해 갱신된다.
또한, 본 발명은 네트워크상에서의 디바이스 인증 방법에 있어서, 서버로 디바이스 인증을 요청하는 단계; 상기 서버로부터 인증 요구 메시지를 수신하는 단 계; 상기 수신된 인증 요구 메시지에 포함된 상기 서버 정보를 이용하여 메시지를 추출하는 단계;및 상기 추출된 메시지를 포함하는 인증 결과 메시지를 상기 서버로 전송하는 단계를 포함하고, 상기 추출된 메시지가 상기 서버의 메시지와 일치하는 경우 상기 디바이스의 인증이 이루어지는 것을 특징으로 한다.
상기 서버 정보는 상기 서버의 현재 시간 정보와 나머지(Mod) 연산에 수행될 난수(N)을 포함한다.
상기 서버의 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 한다.
상기 서버 정보를 이용하여 메시지를 추출하는 단계는,
상기 서버 정보에 포함된 서버의 시간 정보를 초 단위 값으로 변환하는 단계와, 상기 변환된 값에 대해서 난수(N)을 이용하여 나머지(Mod)연산을 수행하는 단계와, 상기 나머지(Mod)연산의 결과 값에 해당하는 메시지를 메시지 박스에서 추출하는 단계를 포함한다.
상기 난수(N)는 서버 혹은 디바이스에서 임의로 선택되는 값인 것을 특징으로 한다.
상기 난수(N)는 상기 초 단위로 변환된 값과 상기 메시지 박스의 전체 개수보다 작은 것을 특징으로 한다.
상기 디바이스는 상호 인증을 위해 상기 서버로 인증 요구 메시지를 송신하는 단계를 더 포함한다.
상기 인증 요구 메시지는 상기 디바이스의 현재 시간 정보와 나머지(Mod) 연 산에 수행될 난수(N)을 포함한다.
상기 디바이스의 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 한다.
상기 디바이스는 상기 서버로 디바이스 인증을 요청할 때 기기 정보(Model_ID)와 요청 타입(Req_type)을 전송하는 것을 특징으로 한다.
상기 서버와 상기 디바이스는 동일한 내용의 메시지 박스를 구비한다.
상기 인증 요구 메시지에 포함된 상기 서버 정보는 변경되는 구조를 갖는 것을 특징으로 한다.
또 다른 관점에서 본 발명은 확장성 있는 임베디드 애플리케이션을 추가 및 실행하는 디바이스에서 상기 임베디드 애필리케이션을 제공하는 서버로 인증하는 방법에 있어서, 상기 디바이스의 현재 시간 정보와 상기 시간 정보를 이용하여 추출된 제 1메시지를 포함하는 인증 메시지를 상기 서버로 전송하는 단계; 및 상기 서버에서 상기 전송된 디바이스의 시간 정보에 따른 상기 제 1 메시지를 확인하여 인증하고, 상기 서버의 현재 시간 정보와 상기 시간 정보를 이용하여 추출된 제 2 메시지를 포함하는 응답 메시지를 상기 디바이스로 전송하는 단계를 포함하고, 상기 제 1 및 제 2 메시지가 상기 서버와 상기 디바이스에서 일치하는 경우, 상기 디바이스의 인증이 이루어지는 것을 특징으로 한다.
상기 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 한다.
상기 제 1 메시지는 상기 디바이스의 현재 시간 정보를 초 단위의 값으로 변 환시켜, 상기 변환된 값에 대해 난수(N)을 이용하여 나머지(Mod)연산을 수행한 후 메시지 박스로부터 그 결과값에 해당하는 메시지를 추출한다.
상기 난수(N)는 서버 혹은 디바이스에서 임의로 선택되는 값인 것을 특징으로 한다.
상기 난수(N)는 상기 초 단위로 변환된 값과 상기 메시지 박스의 전체 개수보다 작은 것을 특징으로 한다.
상기 서버와 상기 디바이스는 동일한 내용의 메시지 박스를 구비하는 것을 특징으로 한다.
상기 인증 메시지와 응답 메시지는 나머지 연산에 수행될 난수(N)에 의해 갱신되는 것을 특징으로 한다.
상기 임베디드 애플리케이션 다운로드 선택에 따라 상기 디바이스의 인증 메시지를 상기 서버로 전송하는 단계와; 상기 서버에서 상기 디바이스의 인증 메시지를 검증하고 상기 임베디드 애플리케이션 목록을 응답 메시지를 함께 상기 디바이스로 전송하는 단계와; 상기 디바이스에서 상기 전송된 임베디드 애플리케이션 목록 중 임베디드 애플리케이션 다운로드를 선택하는 단계와;및 상기 디바이스에서 상기 인증된 서버로부터 상기 선택된 임베디드 애플리케이션의 다운로드를 하여 설치하고 결과 리포트를 서버로 전송하는 단계를 더 포함한다.
상기 서버로부터 상기 다운로드 된 임베디드 애플리케이션의 업데이트 정보수신하는 단계를 더 포함한다.
상기 인증 메시지와 응답 메시지는 해시(Hash) 알고리즘으로 암호화되는 것 을 특징으로 한다.
본 발명은 시간 정보를 이용하여 이를 암호화하고 비밀 공유를 기반으로 하는 새로운 메시지 전송 구조를 설명하고 있는데, 상기 구조에서는 각각의 새로운 메시지가 새로운 키(Mod N)를 이용하여 인증되게 함으로서, 키 또는 메시지 공격에 대한 시스템의 내성을 강화하는 효과가 있다.
또한 본 발명은 임베디드 시스템인 디바이스와 임베디드 애플리케이션을 제공하는 서버 간의 인증 방법을 제공하여 경량화, 저전력 지원 및 자원의 효율적 관리 등의 하드웨어에 최적화되는 기술을 지원한다.
또한, 본 발명에 따른 암호화 기법은 시간 정보와 나머지 연산자를 이용하여 데이터를 알 수 없는 포맷으로 변환함으로써 신뢰성을 제공하며, 역 처리가 가능하고 정확한 메시지를 가지는 디바이스는 네트워크상에 능동적인 참여를 보증한다.
그리고, 본 발명은 공인되지 않은 방식으로 정보가 변경되지 않았다는 것을 간략한 데이터 표시를 생성하는 해싱 함수(Hshing function)을 이용하여 공통적으로 데이터 무결성을 제공한다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '..부', '..모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 시스템 도이다.
클라이언트 디바이스(1100)는 네트워크 기능이 탑재된 DTV 등의 임베디드(embedded) 기기이다. 클라이언트 디바이스(1100)는 네트워크 통신이 가능하고 기본적으로 연산 능력을 포함하는 기기로서, 가정 내의 가전 기기뿐 아니라, 이동 가능한 단말 장치를 포함한다. 예를 들어, 클라이언트 디바이스(1100)는 네트워크 연결가능한 전자 레인지, 냉장고, TV, 세탁기와 같은 가전 기기를 포함하여, PDA, 노트북, UMPC, PMP, 휴대폰과 같은 이동 가능한 기기를 포함한다.
클라이언트 디바이스(1100)는 서버(1200)와 네트워킹 되어 서버(1200)로부터 펌웨어(firmware), 애플리케이션(application), 콘텐츠(contents) 등을 다운로드하거나 임베디드(embedded) 시스템에 사용되는 데이터를 서버(1200)로부터 수신한다. 여기서, 네트워크상에 클라이언트 디바이스(1100)와 서버(1200) 사이에 전자 서명된 파일을 내려받거나, 암호화된 파일을 받아서 복호화하여 설치하는 등 일련의 작 업을 수행하는데 있어서 선행되어야 할 과정은 클라이언트 디바이스(1100)와 서버(1200) 간의 인증이다.
클라이언트 디바이스(1100)는 네트워크상에 보안을 위해 디바이스 인증을 요청하고 서버(1200)는 인증 결과를 전송하여 서로 간의 식별을 위한 인증을 수행한다.
도 2는 본 발명의 일 실시 예에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 방법을 설명하는 신호 흐름도이다.
클라이언트 디바이스(1100)는 서버(1200)에 서비스를 요구하거나 접속을 원할 경우 서버(1200)로 디바이스 인증을 요청한다(S1). 클라이언트 디바이스(1100)는 인증 요청 시에 기기 정보(Mode_ID)와 요청 타입(Req_type) 등의 정보를 송신한다.
서버(1200)는 클라이언트 디바이스(1100)로부터 인증 요청을 수신하여 현재 시간 정보(Server time, yy:dd:hh:mm:ss)와 나머지(Mod) 연산자에 수행될 난수(random) N1 값을 인증 요구 메시지에 포함시켜 클라이언트 디바이스(1100)로 송신한다(S2).
클라이언트 디바이스(1100)는 인증 요구 메시지를 수신하여 서버(1200)의 시간 정보(Server time, yy:dd:hh:mm:ss)를 초 단위로 변환한다. 그리고 변환된 시간 값에 대해서 Mod 연산을 수행한다. 여기서, Mod(나머지) 연산자는 두 숫자를 나누어 그 나머지를 반환하는 것으로, 본 발명에 의해 Mod 연산 구문은 수학식 1과 같 이 구성되며, A는 결과값, S는 수신된 시간 정보를 초 단위로 변환한 값, 그리고 N는 임의의 특정 숫자이며, 서버(1200)로부터 전송되거나 디바이스(1100)에서 선택할 수 있다.
A = S Mod N
클라이언트 디바이스(1100)는 본 발명에 따라 서버 인증을 위해 수신된 시간 정보를 초 단위로 변환한 값(S)을 임의의 특정 숫자(N)로 나누어 Mod(나머지) 연산을 수행하여 그 나머지를 결과 값에 해당하는 메시지를 메시지 박스(M-box)에서 추출하여 서버(1200)로 인증 요구 결과 메시지에 포함시켜 송신한다(S3). 동시에, 클라이언트 디바이스(1100)는 현재 시간 정보(Device time, yy:dd:hh:mm:ss)와 나머지(Mod) 연산자에 수행될 난수(random) N2 값을 인증 요구 메시지에 포함시켜 서버(1200)로 송신한다(S3).
서버(1200)는 클라이언트 디바이스(1100)로부터 서버의 시간 정보를 이용하여 연산된 결과값에 해당하는 메시지를 확인하여 서버(1200)에서 추출한 메시지와 일치하는 경우, 클라이언트 디바이스(1100)를 등록한다. 그리고, 서버는 수신된 클라이언트 디바이스(1100)의 시간 정보를 초 단위로 변환한 시킨 후 난수(N2)로 나누어 Mod(나머지) 연산을 수행하여 그 나머지 값에 해당하는 메시지를 메시지 박스(M-box)에서 추출하여 클라이언트 디바이스(1100)로 송신한다(S4). 이때, 클라이언트 디바이스(1100)의 시간 정보에 해당하는 메시지와 인증 ID를 포함시켜 제공한 다.
도 3은 본 발명에 의한 클라이언트 디바이스에 확장성 있는 애플리케이션의 추가 및 실행을 위한 임베디드(embedded) 시스템의 계층 구조를 나타낸 도면이다.
본 발명에 따른 클라이언트 디바이스는 디지털 텔레비전(DTV)의 임베디드 시스템으로 디바이스 드라이버(103), 미들웨어(104)의 시스템 소프트웨어 레이어를 탑재하며 미들웨어(104) 레이어는 ACAP, 웹브라우저, 보안 모듈 등으로 구성된다.
또한, 상기 시스템 소프트웨어 레이어를 기반으로 호스트 소프트웨어인 DTV 애플리케이션(200A)은 일반적으로 DTV에서 실행되는 소프트에어 혹은 애플리케이션이며, 본 발명의 디지털 텔레비전(DTV)의 임베디드 시스템은 호스트 소프트웨어의 실행과 별도의 프로세스로 컨텐츠를 다운로드하여 실행 및 확장하는 애드 온(Add-on) 애플리케이션(300A)을 구비한다. 그리고 호스트 소프트웨어와 애드 온 애플리케이션은 서로 다른 실행 파일로 구성된다. OS의 주요 컴포넌트들은 .EXE 파일로 구현되었지만 통합 커널(United Kernel)을 지원하는 윈도우 임베디드 CE 6.0부터 이들 주요 컴포넌트들은 대부분 .DLL(Dynamic Linked Library)로 구현된다.
이때, 호스트 소프트웨어의 실행과 독립적으로 추가되는 컨텐츠는 브로드밴드 서비스 컨텐츠, IPTV 컨텐츠 등이 될 수 있으며, 디바이스 드라이버(103)와 미들웨어(104)는 호스트 소프트웨어(200A)와 애드 온 애플리케이션(300A)이 같은 기반으로 사용할 수 있다.
디지털 텔레비전(DTV)의 임베디드 시스템에 애드 온 애플리케이션 기능이 구현할 경우, 호스트 소프트웨어와는 별도의 프로세서로 추가되는 컨텐츠(예를 들어, 애드온 애플리케이션)이 구동되므로, DTV에서 복수의 컨텐츠를 동시 실행하는 것이 가능하고, 호스트 소프트웨어와는 다른 오페레이팅 시스템(예를 들어, 리눅스) 기반의 애플리케이션의 추가 및 확장성을 제공한다.
도 4는 본 발명의 일 실시 예에 따른 임베디드(embedded) 시스템을 포함하는 디지털 방송 수신기의 구성을 도시한 블럭도이다.
클라이언트 디바이스인 디지털 방송 수신기(1100)는 지상파 방송, 케이블 방송, 위성 방송 등을 수신할 수 있는 튜너(210)와, 상기 튜너(210)를 통해 수신된 방송 신호를 복조하는 디모듈레이터(211)를 포함한다. 또한, 디지털 방송 수신기(1100)는 네트워크 망으로부터 수신되는 패킷(packet)들을 수신하고, 네트워크 망으로 패킷을 전송하는 네트워크 인터페이스(220) 즉, 네트워크 망을 통해 서비스 제공자로부터 컨텐츠 및 업데이트 메시지를 수신하는 네트워크 인터페이스(220)와, 상기 네트워크 인터페이스(220)를 통해 수신되는 패킷과 전송할 패킷에 대하여 소스로부터 목적지까지 패킷 전달에 관여하는 TCP/IP 매니저(221)를 포함한다.
서비스 전달 매니저(212)는 튜너(210)와 네트워크 인터페이스(220)를 통해 수신되는 서비스 데이터의 제어를 담당한다. 예를 들어, 실시간 스트림(real-timing streaming) 데이터를 제어하는 경우 RTP/RTCP(Real-Time Transport Protocol/RTP Control Protocol)를 사용할 수 있다. 실시간 스트리밍 데이터를 RTP를 사용하여 전송하는 경우, 서비스 전달 매니저(212)는 상기 수신된 서비스 데이터 패킷을 RTP에 따라 파싱(parsing)하여 디멀티플렉서(214)에 전송하거나 서비스 매니저(201)의 제어에 따라 수신된 서비스 데이터 패킷을 PVR 매니저(213)에서 녹 화하여 콘텐츠 데이터베이스(217)에 저장한다. 그리고, 서비스 전달 매니저(212)는 RTCP를 이용하여 상기 네트워크 수신 정보를 제공하는 서버 측에 피드백(feedback)한다.
디멀티플렉서(214)는 수신된 패킷을 오디오, 비디오, PSI(Program Specific Information) 데이터 등으로 역다중화하여 각각 오디오/비디오 디코더(215)와 PSI/PSIP 디코더(225)로 전송한다.
PSI/PSIP 디코더(225)는 PSI(Program Specific Information) 같은 서비스 정보를 디코딩 한다. 즉, 디멀티플렉서(214)에서 역다중화된 PSI 섹션, PSIP(Program Specific Information Protocol) 섹션 또는 DVB-SI(Service Information) 섹션 등을 수신하여 디코딩한다.
오디오/비디오 디코더(215)는 디멀티플렉서(214)에서 역다중화된 비디오 데이터와 오디오 데이터를 각각 디코딩한다. 오디오 디코더(215a)는 디코딩된 오디오 데이터를 스피커(미도시)를 통하여 외부로 출력하고, 비디오 디코더(215b)는 디코딩된 비디오 데이터를 디스플레이부(216)를 통해 화면에 제공한다.
본 발명에 따른 디지털 방송 수신기(1100)는 일반적으로 DTV에서 실행되는 소프트에어를 운용하는 호스트 애플리케이션 매니저(200)와 호스트 소프트웨어의 실행과 별도의 프로세스로 컨텐츠를 다운로드하여 실행 및 확장하는 애드 온 시스템 매니저(300)를 포함한다.
호스트 애플리케이션 매니저(200)는 디지털 방송 수신기(1100)의 전반적인 상태를 관리하고 유저 인터페이스를 제공하며, 애드 온 시스템 매니저(300)와 연동 한다. 이를 위해 호스트 애플리케이션 매니저(200)는 서비스 매니저(201), 유저 인터페이스 매니저(202) 및 애드 온(Add-on) 호스트(203)를 포함한다.
서비스 매니저(201)는 사용자 요청에 따라 수신되는 서비스 제공을 위해 서비스 제어 매니저(204), 서비스 전달 매니저(212), PVR 매니저(213)를 제어한다.
서비스 제어 매니저(204)는 서비스의 선택과 제어를 담당한다. 예를 들어, 사용자가 기존의 방송 방식과 같은 라이브 브로트캐스팅(Live braocasting) 서비스를 선택하는 경우, IGMP 또는 RTSP 등을 사용하고, VOD(Video On Demand)와 같은 서비스를 선택하는 경우에는 RTSP를 사용하여 서비스의 선택 및 제어를 수행한다. 상기 RTSP 프로토콜은 실시간 스트리밍에 대해 트릭 모드(trick mode)를 제공할 수 있다. 또한 서비스 제어 매니저(204)는 IMP(IP Multimedia subsystem), SIP (Session Initiation Protocol)를 사용하여 IMC 게이트웨이를 통하는 세션을 초기화하고 관리할 수 있다. 상기 프로토콜은 일 실시 예이며 다른 프로토콜을 사용할 수 있다.
또한 서비스 매니저(201)는 채널 맵(Channel Map)을 생성하여 유저 인터페이스 매니저(202)로부터 수신한 키 입력에 따라 상기 채널 맵을 이용하여 채널 선택 신호를 서비스 제어 매니저(204)로 출력한다. 이때, 서비스 제어 매니저(204)는 채널 선택 신호에 따라 튜너(210)와 디모듈레이터(211)를 제어한다.
그리고 서비스 매니저(201)는 서비스 정보 데이터베이스(224)로부터 저장된 채널의 서비스 정보를 검출하여 선택된 채널의 오디오/비디오 PID(Packet Identifier)를 디멀티플렉서(214)에 설정한다.
유저 인터페이스(UI) 매니저(202)는 사용자를 위한 GUI(Graphic User Interface)를 OSD(On Screen Display) 등을 이용하여 제공하며, 리모컨이나 터치 패널 등으로부터 사용자의 키 입력을 받아 상기 입력에 따른 애플리케이션 동작을 수행한다. 예를 들어, 사용자로부터 채널 선택에 관한 키 입력을 받으면 상기 키 입력 신호를 서비스 매니저(201)에 전송한다.
애드 온(Add-on) 호스트(203)는 애드 온 시스템 매니저(300)의 구동을 지원하기 위해 호스트 애플리케이션 매니저(200)에 추가되는 구성으로, 애드 온 시스템 매니저(300)에서의 컨텐츠의 수신 및 실행을 제어한다. 애드 온(Add-on) 호스트(203)는 디지털 방송 수신기의 다른 기능들 예를 들어, 방송 신호의 출력 수행과는 별도로 애드 온 시스템 매니저(300)에서의 컨텐츠 실행 및 다운로드를 제어하는 오페레이팅 시스템이다.
애드 온(Add-on) 호스트(203)는 도 5에 도시된 바와 같이, 호스트 에이전트(203a)와 오픈 API 호스트(203b)를 포함하며, 호스트 에이전트(203a)는 DTV의 호스트 소프트웨어의 상태 정보 및 UI 매니저(202)로부터 수신되는 키 입력을 수신한다. 그리고 오픈 API 호스트(203b)는 애드 온 애플리케이션의 오픈 API (Application Programming Interface)를 호출하여 실행하고 그 결과를 수신한다. 또한, 애드 온(Add-on) 호스트(203)는 UI 매니저(202)로부터 수신한 키 입력에 따라 애플리케이션 다운로더(304)에 다운로드 제어 명령을 전송한다.
애드 온 시스템 매니저(300)는 애드 온 애플리케이션의 설치, 실행, 관리, 삭제 등의 전반적인 애드 온 애플리케이션을 관리하는 시스템이며, 애드 온 애플리 케이션의 실행/종료 및 실행 테이블을 관리, 비정상 종료시 복구 기능 및 리모컨 키 전달 등 전반적인 제어를 위한 애플리케이션 제어부(301), 애드 온 애플리케이션의 브라우징 및 선택 기능을 갖는 애플리케이션 브라우저(302), 애드 온 애플리케이션의 설치, 실행, 관리 및 삭제 시의 보안을 위한 시큐리티 체커(303) 및 애드 온 애플리케이션 설치를 위한 애플리케이션 다운로더(304)를 포함한다.
본 발명에 따라 애드 온(Add-on) 호스트(203)는 네트워크 인터페이스(220)를 통해 인터넷 망과 연결되어 애드 온 애플리케이션을 제공하는 서버와 인증을 수행한다. 이때, 애드 온(Add-on) 호스트(203)는 서버로부터 전송된 서버 시간 정보를 이용하여 Mod 연산을 수행하고 나머지 값에 해당하는 메시지를 시큐리티 체커(303)로부터 검출한다.
또한, 애드 온(Add-on) 호스트(203)는 서버로 Mod 연산 값에 해당하는 메시지를 포함하는 결과 메시지를 송부할 때 상호 인증을 위하여 서버로 같은 방식으로 수신기의 시간 정보와 Mod N을 생성하여 전송한다.
애드 온(Add-on) 호스트(203)와 서버의 인증이 이루어진 후, 애플리케이션 다운로더(304)는 애드 온(Add-on) 호스트(203)의 명령에 따라 구동되고, 컨텐츠 목록을 서버로 전송하여 서버로부터 컨텐츠 목록을 다운로드 한다. 이때, 콘텐츠 목록은 압축되어 수신되고 애플리케이션 다운로더(304)는 수신된 컨텐츠 목록을 압축 해제한 후, 서비스 정보 데이터베이스(224)에 저장한다. 여기서 컨텐츠 목록은 XML 형태로 저장된다.
또한, 애플리케이션 다운로더(304)는 컨텐츠 목록의 다운로드가 완료되면, 서버로 디지털 방송 수신기의 다바이스 아이디 정보, 수신한 컨텐츠 목록의 버전 정보를 전송한다.
애플리케이션 브라우저(302)는 저장된 컨텐츠 목록을 디스플레이부(216)로 출력하며, UI 매니저(202)로부터 다운로드된 컨텐츠 중 하나 이상의 실행 명령을 선택받아, 상기 선택받은 컨텐츠를 실행한다.
서비스 디스커버리 매니저(222)는 양방향 IP 네트워크상에 제공되는 서비스에 대해 TCP/IP 매니저(221)에 의해 제공되는 패킷들로부터 선택된 서비스를 검색한다. 메타 데이터 매니저(223)는 TCP/IP 매니저(221)에 의해 제공되는 패킷들로부터 서비스와 관련된 메타 데이터를 검출한다.
서비스 정보 데이터 베이스(224)는 PSI/PSIP 디코더(225)로부터 디코딩된 섹션들의 서비스 정보(SI)와, 서비스 디스커버리 매니저(222)로부터 검색된 서비스 관련 정보와 메타 데이터 매니저(223)로부터 검출된 메타 데이터를 저장한다. 또한, 서비스 정보 데이터베이스(224)는 시스템에 대한 셋업 데이터 등을 저장한다.
서비스 정보 데이터베이스(224)는 비휘발성 메모리(NonVolatile RAM) 또는 플래쉬 메모리 등을 사용하여 구현될 수 있으며, 동일한 저장 영역 상에 논리적으로 분리된 적어도 하나 이상의 영역으로 구현될 수 있다.
도 5는 본 발명의 일 실시 예에 따른 클라이언트 디바이스에서 애드 온(Add on) 애플리케이션 시스템을 나타낸 구성 블럭도이다.
도 5를 참조하면, 디지털 방송 수신기에서 애드 온 기능을 구현하기 위해 애드온 시스템 매니저(300)와 애드 온 호스트(203) 및 애드온 애플리케이션(330)을 구비한다.
애드온 시스템 매니저(300)는 애드 온 애플리케이션(330)의 브라우징 및 선택 기능을 제공하는 애플리케이션 브라우저(302)와, 애플리케이션 제어부(301), 애드온 애플리케이션(330)의 이상 동작 감시 및 실행 파일 체크 함수를 제공하는 시큐리티 체크(303)와, 서버로부터 애드 온 애플리케이션(330)을 다운로드하고 설치 및 제거(304a)하는 애플리케이션 다운로더(304)를 포함한다. 여기서, 애플리케이션 제어부(301)는 애드 온 애플리케이션(330)의 실행/종료 및 실행 테이블을 관리하고 비정상 종료 시 복구하는 프로세스 컨트롤러(301a)와 리모컨 키를 전달하는 키 이벤트 포워드(301b)를 포함한다.
애드 온 호스트(203)는 호스트 소프트웨어와 연동하며, 미들웨어 및 드라이버의 시스템 소프트웨어 레이어를 기반으로 구동한다. 애드 온 호스트(203)는 애드온 시스템 매니저(300)로 호스트 소프트웨어의 상태 및 리모컨 키 이벤트를 송신하는 호스트 에이전트(203a)와 애드 온 애플리케이션(330)의 오픈 API(335) 호출을 직접 실행하고 결과를 리턴하는 오픈 API 호스트(203b)를 포함한다.
발명에 따라 애드온 애플리케이션(330)은 오픈 API(Application Programming Interface) 라이브러리를 제공하며 애드온 시스템 매니저(300)로 애드 온 애플리케이션의 상태를 송신하고 리모컨 키-이벤트 신호를 수신하는 애드 온 에이전트(333)와 애드 온 애플리케이션 개발에 필요한 API 함수를 제공하는 오픈 API(335)를 포함한다. 여기서,오픈 API(335)를 통하여 애드온 시스템 매니저(300)에 애드온 애플리케이션(330)을 등록하고 호스트 소프트웨어에서 제공하는 기능을 사용할 수 있 다. 구체적으로, 오픈 API(335)를 통해 호스트에서 제공하는 디지털 방송 수신기의 하드웨어 기능 및 미들웨어에서 제공하는 API 및 미디어 재생 기능을 지원하며 또한, 애드 온 애플리케이션(330)을 관리하기 위한 다양한 API를 제공한다.
도 6은 본 발명의 다른 실시 예에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 방법을 설명하는 신호 흐름도이다.
본 발명에 따라 확장성 있는 애드 온 애플리케이션의 추가 및 실행을 위한 임베디드(embedded) 시스템을 포함하는 클라이언트 디바이스(1100)는 애드 온 애플리케이션을 제공하는 서버(1200)로 인증 메시지를 전송한다(S1). 여기서, 클라이언트 디바이스(1100)는 수신기의 시간 정보와 이를 이용하여 Mod N1 연산을 수행한 후 나머지 값에 해당하는 메시지(M)를 인증 메시지(auth message)로 포함시켜 서버(1200)에 전송한다.
서버(1200)는 클라이언트 디바이스(1100)로부터 인증 메시지를 수신하여 확인하고, 서버의 시간 정보와 이를 이용하여 Mod N2 연산을 수행한 후 나머지 값에 해당하는 메시지(M)를 인증 메시지에 포함시켜 응답 메시지로 클라이언트 디바이스(1100)에 전송한다(S2).
여기서, 인증 수행 시 Mod N의 난수(N) 값이 계속 변하는 구조이기 때문에 이중의 보안 강도를 높일 수 있다.
본 발명의 실시 예에 따라, 인증은 클라이언트 디바이스(1100)가 서버(1200)에 접속 시뿐만 아니라 서버(1200)에 애드 온 애플리케이션의 서비스를 요청할 경우에도 이루어진다.
클라이언트 디바이스(1100)는 수신기의 시간 정보와 이를 이용하여 Mod N3 연산을 수행한 후 나머지 값에 해당하는 메시지(M)를 인증 메시지(auth message)로 포함시켜 서버(1200)에 전송한다(S3). 이때, 애드 온 애플리케이션 목록 정보도 요청한다.
서버(1200)는 클라이언트 디바이스(1100)로부터 인증 메시지를 수신하여 확인하고, 서버의 시간 정보와 이를 이용하여 Mod N4 연산을 수행한 후 나머지 값에 해당하는 메시지(M)를 인증 메시지에 포함시켜 응답 메시지로 클라이언트 디바이스(1100)에 전송한다(S4). 이때, 요청한 애드 온 애플리케이션 목록도 함께 제공한다.
도 7은 본 발명 일 실시 예에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 시스템의 구성 블럭도이다.
본 발명의 일 실시 예에 따라 애드 온 애플리케이션에 인증 정보를 첨부하여 다운로드 기능을 제공하는 서버(1200)는 애드온 애플리케이션(1201)을 제공하며, 상기 애드온 애플리케이션(1201)은 펌웨어(firmware), 응용 애플리케이션 혹은, 컨텐츠 등이 될 수 있으며 애드온 애플리케이션(1201)은 서버(1200)가 아닌 서비스 제공자로부터 공급될 수도 있다.
애드온 애플리케이션(1201)은 제 1 암호화부(1210)에서 애드온 애플리케이션(1202)으로 부호화되어 애플리케이션 처리부(1230)로 출력된다. 제 1 암호화부(1210)는 AES(Advanced Encryption Standard) 알고리즘에 따라 입력되는 애드온 애플리케이션(1201)을 암호화한다.
제 2 암호화부(1220)는 서버의 시간 정보와 상기 시간 정보를 이용하여 Mod N 연산을 수행하여 나온 나머지 값에 해당하는 메시지를 메시지 박스(1221)로부터 획득하여 이를 포함하는 인증 메시지를 해시 알고리즘의 하나인 SHA(secure hash algorithm)-1 알고리즘을 사용하여 해시 연산을 수행(1222)하여 애플리케이션 처리부(1230)로 출력한다.
이때, 서버의 시간 정보는 초 단위로 변환하여 난수(random) N 값과 함께 Mod 연산을 수행한다. 여기서 난수(random) N값은 초 단위로 변환된 시간 정보와 메시지 박스(1221)의 크기보다 작은 임의의 값으로, 애드 온 애플리케이션 목록 요청 시 클라이언트 디바이스(1100)로부터 제공되거나 서버(1200)에서 선택한 값이다. 일 예로, 초 단위로 변환된 시간 정보가 20456이면 임의의 N 값은 20456보다 작고, 메시지 박스의 메시지 전체 개수가 1000개라면, 임의의 N 값은 0 ~ 999 중 하나의 값이 랜덤으로 선택된다. 클라이언트 디바이스(1100)와 서버(1200)의 인증 수행 시 Mod N의 값이 계속 변하도록 제공한다.
애플리케이션 처리부(1230)는 암호화된 애드 온 애플리케이션(1202)과 암호화된 인증 메시지(1222)를 클라이언트 디바이스(1100)로 전송한다.
클라이언트 디바이스(1100)의 제 1 복호화부(401)는 암호화된 애드 온 애플리케이션(1202)을 AES 알고리즘으로 복호화한다. 애디 온 애플리케이션(1201)의 암호화된 인증 메시지(1222)는 제 2 복호화부(403)에서 SHA-1 알고리즘의 해시 연산을 수행하여 복호화한다.
이때, 제 2 복호화부(401)는 인증 메시지에 포함된 서버(1200)의 시간 정보와 Mod N 값을 이용하여 나머지(Mod) 연산을 수행한 후, 결과 값에 해당하는 메시지를 메시지 박스(404)로부터 추출하여 서버(1200)로부터 전송된 메시지와 일치하는 여부를 체크한다.
본 발명에 따른 인증 메시지를 제공하는 메시지 박스(M-box)는 도 8에 도시된 바와 같이, Mod 연산에 따른 난수(N) 값에 대응하는 메시지를 포함한다. 메시지 박스는 서버(1200)와 클라이언트 디바이스(1100)에 같은 내용을 포함하고 있어야 하며, 메시지 개수는 제한이 없고 많을수록 보안 강도가 높아진다. 일 예로 메시지 크기를 20바이트(byte)로 하였으나 고정적인 것이 아니고 변경가능하다. 또한, 클라이언트 디바이스(1100)의 메시지 박스(M-box)는 서버와의 인증 혹은 서버(1200)를 통해 애플리케이션 다운로드 시에 별도의 요청 없이 메시지의 내용 및 개수를 업데이트하게 된다.
시큐리티 체크 라이브러리(303a)는 현재 실행되고 있는 클라이언트 디바이스(1100)와 서버(1200) 간의 인증이 이상이 없는 지를 판단하고, 다운로드된 애드 온 애플리케이션이 손상되거나 오염되었는지를 모니터링하고 감지하는 즉시 적절한 조치를 취하는 기능을 제공한다.
다운로드 매니저(304)는 서버(1200)로 애드 온 애플리케이션 목록을 요청하고 상기 제 2 복호화부(402)에서 서버 인증이 확인되면, 제 1 복호화부(401)를 통해 디코딩된 애드 온 애플리케이션을 다운로드한다.
애플리케이션 브라우저(302)는 다운로드된 애드 온 애플리케이션 목록을 브 라우징하여 목록을 살펴보고 선택하여 실행시킨다.
도 9는 본 발명의 일 실시 예에 의해 클라이언트 디바이스의 인증에 따른 애플리케이션 다운로드 방법을 설명하는 신호 흐름도이다.
클라이언트 디바이스(1100)에서 애드 온 애플리케이션 다운로드를 선택한다(S1).
클라이언트 디바이스(1100)는 서버(1200)로 접속하기 위해 인증 요청 메시지를 전송한다(S2). 본 발명에 따라 인증 요청 메시지는 디바이스의 현재 시간 정보(Device time, yy:dd:hh:mm:ss)와 상기 시간 정보와 Mod N 연산을 수행하여 나머지 값에 해당하는 메시지(M)를 포함한다.
서버(1200)는 인증 요청 메시지로부터 디바이스의 시간 정보와 Mod N 연산을 수행한 결과값의 메시지가 동일한 지를 판단하여 클라이언트 디바이스(1100)를 인증하고 인증 결과 메시지를 전송한다(S3). 본 발명에 따라 서버(1200)는 상호 인증을 위하여 클라이언트 디바이스(1100)로 동일한 방식으로 인증 결과 메시지를 전송한다. 이때, 인증 결과 메시지는 서버(1200)의 현재 시간 정보와 상기 시간 정보와 Mod N의 연산에 의한 나머지 값에 해당하는 메시지 및 인증 ID를 포함한다.
클라이언트 디바이스(1100)는 연결된 서버(1200)로 애드 온 애플리케이션 목록을 요청한다(S4).
서버(1200)는 클라이언트 디바이스(1100)로부터 선택된 애드 온 애플리케이션 목록을 XML 형태로 생성하여 전송한다(S5,S6).
클라이언트 디바이스(1100)는 수신한 애드 온 애플리케이션 목록에서 다운로 드 할 애플리케이션을 선택한다(S7).
클라이언트 디바이스(1100)는 선택한 애플리케이션의 다운로드 요청을 서버(1200)로 전송한다(S8). 이때, 클라이언트 디바이스(1100)의 인증 메시지와 함께 전송한다. 인증 메시지는 디바이스 현재 시간 정보와 난수 N의 나머지(Mod) 연산을 통한 결과 값에 해당하는 메시지를 포함한다.
서버(1200)는 클라이언트 디바이스(1100)로부터 수신한 애플리케이션 다운로드 요청 신호와 인증 메시지를 확인하고, 수신된 정보를 이용하여 서버의 메시지와 동일한 경우 애플리케이션 다운로드를 허여한다(S9). 이때, 요청된 애플리케이션과 함께 서버의 인증 메시지를 포함시켜 전송한다.
서버의 인증 메시지를 포함하는 다운로드 애플리케이션의 데이터 구조는 도 10에 도시된 바와 같이, 헤더, 애드 온 식별자(Identifier), 암호화된 서버의 인증 메시지의 해시 값(P), 제품명, 모델 명, 카테고리 ID 어레이, 컨텐츠 ID, 파일 타입, 콘텐츠 국문/영문 명, 로컬 패스(path), 파일 사이즈 및 애드 온 애플리케이션 데이터로 구성된다. 서버의 인증 메시지는 서버의 현재 시간 정보(Server time, yy:dd:hh:mm:ss)와 상기 시간 정보와 난수 N을 이용하여 Mod N의 연산 결과 값에 해당하는 메시지를 포함한다.
클라이언트 디바이스(1100)는 서버의 인증 메시지를 확인하고, 메시지가 동일한 경우 애드 온 애플리케이션의 다운로드 및 설치를 수행한다(S10). 그리고, 클라이언트 디바이스(1100)는 서버(1200)로 애드 온 애플리케이션의 설치 결과 리포트를 전송한다.
서버(1200)는 클라이언트 디바이스(1100)에서 다운로드 한 애드 온 애플리케이션의 업데이트 정보를 전송한다(S11).
도 11(a~f)은 본 발명의 일 실시 예에 따른 클라이언트 디바이스의 인증과정을 UI 화면으로 나타낸 예시도이다.
본 발명에 따른 클라이언트 디바이스는 디지털 텔레비전(DTV)의 임베디드 시스템으로 TV에 전원이 인가되면 네트워크 망을 통해 서버에 디바이스 인증을 요청한다. 상기와 같은 클라이언트 디바이스와 서버의 인증 과정은 도 11(a~f)에 도시된 바와 같이, 디바이스의 화면(1101)에 메시지 창으로 표시되거나 인증 과정을 아이콘 등으로 나타낸다. 인증 과정의 표시 방법은 옵션 선택 등을 통해 설정할 수 있다.
본 발명에 따라 클라이언트 디바이스는 전원이 인가되거나, 서비스를 요구 혹은, 접속을 원할 경우 서버(1200)로 디바이스 인증을 요청하는 메시지 창(W1)을 디바이스의 화면(1101)상에 표시한다. 이때, 클라이언트 디바이스는 서버로 기기 정보(Mode_ID)와 요청 타입(Req_type) 등의 정보를 송신한다.
클라이언트 디바이스로부터 인증 요청을 받은 서버는 현재 시간 정보(Server time, yy:dd:hh:mm:ss)와 나머지(Mod) 연산자에 수행될 난수(random) N 값을 메시지에 실어 클라이언트 디바이스(1100)로 송신하고, 디바이스는 메시지를 이용하여 연산한다. 클라이언트 디바이스가 나머지(Mod) 연산을 통해 결과값에 해당하는 메시지를 추출하고 이를 서버로 응답메시지를 전송하면 서버는 이를 검증하는 인증 과 정을 메시지 창(W2)으로 표시한다. 이때, 상호 인증의 위해 서버와 동일한 방식으로 디바이스의 정보를 서버로 전송한다.
서버는 클라이언트 디바이스로부터 수신된 메시지를 확인하여 서버에서 추출된 메시지와 일치하는 경우, 클라이언트 디바이스가 인증되고 서버에 등록되었음을 메시지 창(W3)으로 표시한다
한편, 서버는 클라이언트 디바이스로부터 수신된 메시지를 확인하여 서버에서 추출된 메시지와 일치하지 않는 경우, 클라이언트 디바이스의 인증이 실패되었음을 메시지 창(W4)으로 표시한다. 이때, 디바이스는 인증 메시지 수행 시 에러 정보를 확인하여 더욱 상세하게 사용자에게 제공한다.
도 11(e)는 클라이언트 디바이스에서 서버와 인증이 완료되면, 애플리케이션 브라우저를 통해 디스플레이부에 애드 온 애플리케이션 화면(1102)으로 전환하고 이때, 임베디드 애플리케이션의 설치 버전 정보가 메시지 창(W5)으로 나타난다. 애드 온 애플리케이션 화면(1102)에는 IPTV(A1), Yahoo(A2), Netflix(A3) 등의 설치된 임베디드 애플리케이션이 표시된다.
도 11(f)는 다운로드 요청 시 클라이언트 디바이스와 서버 간에 이루어지는 인증에 따른 것으로, 본 발명의 실시 예에 따라 사용자가 야후(Yahoo) 애플리케이션 화면(1103)에서 파일 다운로드를 선택(Q1)하였을 때, 다운로드 요청 신호와 클라이언트 디바이스의 인증 메시지가 서버로 전송한다. 이때, 서버 혹은 디바이스에서 시간 정보에 따라 추출된 메시지 내용이 서로 일치하지 않을 경우, 메시지 창(W5)에 인증이 실패하였음을 나타낸 것이다.
한편, 본 발명에서 사용되는 용어(terminology)들은 본 발명에서의 기능을 고려하여 정의 내려진 용어들로써 이는 해당 분야에 종사하는 기술자의 의도 또는 관례 등에 따라 달라질 수 있으므로 그 정의는 본 발명의 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이상의 본 발명은 상기에 기술된 실시 예들에 의해 한정되지 않고 당업자들에 의해 다양한 변형 및 변경을 가져올 수 있으며, 이는 첨부된 청구항에서 정의되는 본 발명의 취지와 범위에 포함된다.
도 1은 본 발명에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 시스템 도이다.
도 2는 본 발명의 일 실시 예에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 방법을 설명하는 신호 흐름도이다.
도 3은 본 발명에 의한 클라이언트 디바이스에 확장성 있는 애플리케이션의 추가 및 실행을 위한 임베디드(embedded) 시스템의 계층 구조를 나타낸 도면이다.
도 4는 본 발명의 일 실시 예에 따른 임베디드(embedded) 시스템을 포함하는 디지털 방송 수신기의 구성을 도시한 블럭도이다.
도 5는 본 발명의 일 실시 예에 따른 클라이언트 디바이스에서 애드 온(Add on) 애플리케이션 시스템을 나타낸 구성 블럭도이다.
도 6은 본 발명의 다른 실시 예에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 방법을 설명하는 신호 흐름도이다.
도 7은 본 발명 일 실시 예에 따른 네트워크상에서 연결된 서버와 클라이언트 디바이스 간의 인증 시스템의 구성 블럭도이다.
도 8은 본 발명의 일 실시 예에 따른 인증 메시지를 제공하는 메시지 박스를 나타낸 예시도이다.
도 9는 본 발명의 일 실시 예에 의해 클라이언트 디바이스의 인증에 따른 애플리케이션 다운로드 방법을 설명하는 신호 흐름도이다.
도 10은 본 발명의 일 실시 예에 따른 인증 메시지를 포함하는 다운로드 애 플리케이션의 데이터 구조를 나타낸 예시도이다.
도 11(a~f)은 본 발명의 일 실시 예에 따른 클라이언트 디바이스의 인증과정을 UI 화면으로 나타낸 예시도이다.
*도면의 주요 부분에 대한 부호의 설명*
103. 디바이스 드라이버 104. 미들웨어
200. 호스트 애플리케이션 매니저 201. 서비스 매니저
202. UI 매니저 203. 애드 온 호스트
204. 서비스 제어 매니저 220. 네트워크 인터페이스
221. TCP/IP 매니저 222. 서비스 디스커버리 매니저
223. 메타 데이터 매니저 224. 서비스 정보(SI) 데이터베이스
225. PSI/PSIP 디코더 300. 애드 온 시스템 매니저
301. 애플리케이션 제어부 302. 애플리케이션 브라우저
303. 시큐리티 체커 304. 애플리케이션 다운로더
1100. 클라이언트 디바이스 1200. 서버

Claims (36)

  1. 서버로 디바이스 인증을 요청하는 단계;
    상기 서버로부터 인증 요구 메시지를 수신하는 단계;
    상기 수신된 인증 요구 메시지에 포함된 상기 서버 정보를 이용하여 메시지를 추출하는 단계;및
    상기 추출된 메시지를 포함하는 인증 결과 메시지를 상기 서버로 전송하는 단계를 포함하고,
    상기 추출된 메시지가 상기 서버의 메시지와 일치하는 경우 상기 디바이스의 인증이 이루어지는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  2. 제 1항에 있어서,
    상기 서버 정보는 상기 서버의 현재 시간 정보와 나머지(Mod) 연산에 수행될 난수(N)을 포함하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  3. 제 2항에 있어서,
    상기 서버의 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  4. 제 1항에 있어서,
    상기 서버 정보를 이용하여 메시지를 추출하는 단계는,
    상기 서버 정보에 포함된 서버의 시간 정보를 초 단위 값으로 변환하는 단계와,
    상기 변환된 값에 대해서 난수(N)을 이용하여 나머지(Mod)연산을 수행하는 단계와,
    상기 나머지(Mod)연산의 결과 값에 해당하는 메시지를 메시지 박스에서 추출하는 단계를 포함하는 네트워크상에서의 디바이스 인증 방법.
  5. 제 4항에 있어서,
    상기 난수(N)는 서버 혹은 디바이스에서 임의로 선택되는 값인 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  6. 제 4항에 있어서,
    상기 난수(N)는 상기 초 단위로 변환된 값과 상기 메시지 박스의 전체 개수보다 작은 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  7. 제 1항에 있어서,
    상기 디바이스는 상호 인증을 위해 상기 서버로 인증 요구 메시지를 송신하는 단계를 더 포함하는 네트워크상에서의 디바이스 인증 방법.
  8. 제 8항에 있어서,
    상기 인증 요구 메시지는 상기 디바이스의 현재 시간 정보와 나머지(Mod) 연산에 수행될 난수(N)을 포함하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  9. 제 8항에 있어서,
    상기 디바이스의 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  10. 제 1항에 있어서,
    상기 디바이스는 상기 서버로 디바이스 인증을 요청할 때 기기 정보(Model_ID)와 요청 타입(Req_type)을 전송하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  11. 제 1항에 있어서,
    상기 서버와 상기 디바이스는 동일한 내용의 메시지 박스를 구비하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  12. 제 1항에 있어서,
    상기 인증 요구 메시지에 포함된 상기 서버 정보는 변경되는 구조를 갖는 것 을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  13. 확장성 있는 임베디드 애플리케이션을 추가 및 실행하는 디바이스에서 상기 임베디드 애필리케이션을 제공하는 서버로 인증하는 방법에 있어서,
    상기 디바이스의 현재 시간 정보와 상기 시간 정보를 이용하여 추출된 제 1메시지를 포함하는 인증 메시지를 상기 서버로 전송하는 단계; 및
    상기 서버에서 상기 전송된 디바이스의 시간 정보에 따른 상기 제 1 메시지를 확인하여 인증하고, 상기 서버의 현재 시간 정보와 상기 시간 정보를 이용하여 추출된 제 2 메시지를 포함하는 응답 메시지를 상기 디바이스로 전송하는 단계를 포함하고,
    상기 제 1 및 제 2 메시지가 상기 서버와 상기 디바이스에서 일치하는 경우, 상기 디바이스의 인증이 이루어지는 것을 특징으로 이루어진 네트워크상에서의 디바이스 인증 방법.
  14. 제 13항에 있어서,
    상기 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  15. 제 13항에 있어서,
    상기 제 1 메시지는 상기 디바이스의 현재 시간 정보를 초 단위의 값으로 변 환시켜, 상기 변환된 값에 대해 난수(N)을 이용하여 나머지(Mod)연산을 수행한 후 메시지 박스로부터 그 결과값에 해당하는 메시지를 추출한 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  16. 제 15항에 있어서,
    상기 난수(N)는 서버 혹은 디바이스에서 임의로 선택되는 값인 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  17. 제 15항에 있어서,
    상기 난수(N)는 상기 초 단위로 변환된 값과 상기 메시지 박스의 전체 개수보다 작은 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  18. 제 13항에 있어서,
    상기 서버와 상기 디바이스는 동일한 내용의 메시지 박스를 구비하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  19. 제 13항에 있어서,
    상기 인증 메시지와 응답 메시지는 나머지 연산에 수행될 난수(N)에 의해 갱신되는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  20. 제 13항에 있어서,
    상기 임베디드 애플리케이션 다운로드 선택에 따라 상기 디바이스의 인증 메시지를 상기 서버로 전송하는 단계와;
    상기 서버에서 상기 디바이스의 인증 메시지를 검증하고 상기 임베디드 애플리케이션 목록을 응답 메시지를 함께 상기 디바이스로 전송하는 단계와;
    상기 디바이스에서 상기 전송된 임베디드 애플리케이션 목록 중 임베디드 애플리케이션 다운로드를 선택하는 단계와;및
    상기 디바이스에서 상기 인증된 서버로부터 상기 선택된 임베디드 애플리케이션의 다운로드를 하여 설치하고 결과 리포트를 서버로 전송하는 단계를 더 포함하는 네트워크상에서의 디바이스 인증 방법.
  21. 제 20항에 있어서,
    상기 서버로부터 상기 다운로드 된 임베디드 애플리케이션의 업데이트 정보수신하는 단계를 더 포함하는 네트워크상에서의 디바이스 인증 방법.
  22. 제 13항에 있어서,
    상기 인증 메시지와 응답 메시지는 해시(Hash) 알고리즘으로 암호화되는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 방법.
  23. 서버 정보를 포함하는 인증 메시지를 송신하고 응답 메시지에 포함된 디바이 스 정보로부터 메시지를 검증하는 서버; 및
    상기 서버로 인증을 요청하고 상기 서버의 인증 메시지에 포함된 상기 서버 정보를 이용하여 추출된 메시지를 검증하고, 디바이스 정보를 포함하는 응답 메시지를 상기 서버로 전송하는 디바이스를 포함하고,
    상기 서버 정보 혹은 디바이스 정보를 이용하여 추출된 메시지가 상기 서버와 디바이스에서 일치하는 경우, 상기 디바이스의 인증이 이루어지는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 시스템.
  24. 제 23항에 있어서,
    상기 서버 정보와 디바이스 정보는 현재 시간 정보와 나머지(Mod) 연산에 수행될 난수(N)을 포함하는 것을 특징으로 네트워크상에서의 디바이스 인증 시스템.
  25. 제 24항에 있어서,
    상기 현재 시간 정보는 년/월/일/시/분/초 단위를 사용하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 시스템.
  26. 제 23항에 있어서,
    상기 서버와 상기 디바이스는 동일한 내용의 메시지 박스를 구비하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 시스템.
  27. 제 23항에 있어서,
    상기 서버는,
    임베디드 애플리케이션을 제 1 알고리즘을 이용하여 암호화하는 제 1 암호화부와;
    상기 서버의 현재 시간 정보와 상기 시간 정보를 이용하여 나머지(Mod N) 연산을 수행하여 결과값에 해당하는 추출된 메시지를 포함하는 상기 인증 메시지를 제 2 알고리즘을 이용하여 암호화하는 제 2 암호화부; 및
    상기 암호화된 임베디드 애플리케이션과 인증 메시지를 상기 디바이스로 전송하는 애플리케이션 처리부를 포함하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 시스템.
  28. 제 27항에 있어서,
    상기 제 1 알고리즘은 AES(Advanced Encryption Standard) 알고리즘인 것을 특징으로 하는 네트워크상에서의 디바이스 인증 시스템.
  29. 제 27항에 있어서,
    상기 제 2 알고리즘은 SHA(secure hash algorithm)-1 알고리즘인 것을 특징으로 하는 네트워크상에서의 디바이스 인증 시스템.
  30. 제 23항에 있어서,
    상기 서버 정보에 포함된 서버의 시간 정보를 초 단위 값으로 변환하여, 변환된 값에 대해 난수(N)을 이용하여 나머지(Mod)연산을 수행한 후 결과 값에 해당하는 메시지를 메시지 박스에서 추출하는 것을 특징으로 하는 네트워크상에서의 디바이스 인증 시스템.
  31. 제 23항에 있어서,
    상기 디바이스의 응답 메시지는 상기 디바이스의 현재 시간 정보와 나머지(Mod) 연산에 수행될 난수(N)을 포함하는 것을 특징으로 네트워크상에서의 디바이스 인증 시스템.
  32. 제 23항에 있어서,
    상기 디바이스 장치는,
    상기 서버로 디바이스 인증 혹은 임베디드 애플리케이션 다운로드를 요청하는 임베디드 호스트;
    상기 서버로부터 다운로드된 임베디드 애플리케이션을 제 1 알고리즘으로 복호화하는 제 1 암호화부;
    상기 서버의 암호화된 인증 메시지를 제 2 알고리즘으로 복호화하고 상기 인증 메시지에 포함된 서버의 현재 시간 정보를 이용하여 나머지(Mod N) 연산을 수행한 후 메시지 박스로부터 추출한 결과값에 해당하는 메시지를 검증하는 제 2 복호화부;
    상기 서버와의 인증 이상 유무를 판단하고 상기 다운로드된 임베디드 애플리케이션을 모니터링 하는 시큐리티 체크 라이브러리;
    상기 임베디드 애플리케이션 목록을 상기 서버로 요청하고 상기 시큐리티 체크 라이브러리에서 상기 서버와의 인증을 확인하여 상기 서버로부터 암호화된 임베디드 애플리케이션 목록을 다운로드 하는 다운로드 매니저; 및
    상기 다운로드된 임베디드 애플리케이션 목록을 브라우징하여 선택하는 애플리케이션 브라우저를 포함하는 디바이스 인증 시스템.
  33. 제 32항에 있어서,
    상기 디바이스는 확장성 있는 임베디드 애플리케이션을 추가 및 실행하는 디지털 방송 수신기인 것을 특징으로 하는 디바이스 인증 시스템.
  34. 제 32항에 있어서,
    상기 제 1 알고리즘은 AES(Advanced Encryption Standard) 알고리즘, 상기 제 2 알고리즘은 SHA(secure hash algorithm)-1 알고리즘인 것을 특징으로 하는 디바이스 인증 시스템.
  35. 제 23항에 있어서,
    상기 인증 메시지와 응답 메시지는 나머지 연산에 수행될 난수(N)에 의해 갱신되는 것을 특징으로 하는 디바이스 인증 시스템.
  36. 제 23항에 있어서,
    상기 디바이스는 상기 서버와의 시간 정보에 따라 추출된 메시지의 인증 과정 및 결과를 OSD 데이터로 표시하는 것을 특징으로 하는 디바이스 인증 시스템.
KR1020090081835A 2009-09-01 2009-09-01 네트워크상에서의 디바이스 인증 시스템 및 인증 방법 KR101676305B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090081835A KR101676305B1 (ko) 2009-09-01 2009-09-01 네트워크상에서의 디바이스 인증 시스템 및 인증 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090081835A KR101676305B1 (ko) 2009-09-01 2009-09-01 네트워크상에서의 디바이스 인증 시스템 및 인증 방법

Publications (2)

Publication Number Publication Date
KR20110024003A true KR20110024003A (ko) 2011-03-09
KR101676305B1 KR101676305B1 (ko) 2016-11-15

Family

ID=43931917

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090081835A KR101676305B1 (ko) 2009-09-01 2009-09-01 네트워크상에서의 디바이스 인증 시스템 및 인증 방법

Country Status (1)

Country Link
KR (1) KR101676305B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016036115A1 (ko) * 2014-09-01 2016-03-10 삼성전자 주식회사 재등록을 관리하는 전자 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070071863A (ko) * 2005-12-30 2007-07-04 브이케이 주식회사 이동통신 단말기의 프로그램 다운로드 방법
KR20080083418A (ko) * 2007-03-12 2008-09-18 강남구 챕 챌린지 메시지를 이용한 네트워크 액세스 인증 방법 및시스템.
WO2009059496A1 (fr) * 2007-11-08 2009-05-14 Huawei Technologies Co., Ltd. Procédé, système, serveur et terminal pour mettre en œuvre une authentification

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070071863A (ko) * 2005-12-30 2007-07-04 브이케이 주식회사 이동통신 단말기의 프로그램 다운로드 방법
KR20080083418A (ko) * 2007-03-12 2008-09-18 강남구 챕 챌린지 메시지를 이용한 네트워크 액세스 인증 방법 및시스템.
WO2009059496A1 (fr) * 2007-11-08 2009-05-14 Huawei Technologies Co., Ltd. Procédé, système, serveur et terminal pour mettre en œuvre une authentification

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A. Menezes 외 2명, Handbook of Applied Cryptography, Chapter.10, CRC Press (1996.)* *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016036115A1 (ko) * 2014-09-01 2016-03-10 삼성전자 주식회사 재등록을 관리하는 전자 장치 및 방법
US10257177B2 (en) 2014-09-01 2019-04-09 Samsung Electronics Co., Ltd Electronic device and method for managing re-enrollment

Also Published As

Publication number Publication date
KR101676305B1 (ko) 2016-11-15

Similar Documents

Publication Publication Date Title
EP2507991B1 (en) Digital broadcast receiver and booting method of digital broadcast receiver
US11449583B2 (en) Reception device, transmission device, and data processing method
JP5961164B2 (ja) 放送通信連携受信装置及びリソースアクセス制御プログラム
WO2008060388A2 (en) Downloadable security and protection methods and apparatus
CN106664228B (zh) 在cpe和配套设备之间进行共享
US9538255B2 (en) Information output device, information manipulation device, and computer program product
KR102454933B1 (ko) 통신 시스템에서 보안 서비스 제공 장치 및 방법
US7487354B2 (en) Methods and systems for using digital signatures in uniform resource locators
US11457254B2 (en) Systems and methods for secure communications between media devices
JP2021168492A (ja) 受信装置および受信方法
EP3494707B1 (en) Method and device for checking authenticity of a hbbtv related application
KR102586219B1 (ko) 디지털 브로드캐스트 데이터의 인증
US20120297413A1 (en) Apparatus and method for controlling output of protected content on a television
WO2011103785A1 (zh) 授权应用列表信息生成及获取方法、装置及系统
WO2016109578A1 (en) Automated application installation on media players and other controlled devices
JP6589996B2 (ja) セキュリティ装置および制御方法
KR101676305B1 (ko) 네트워크상에서의 디바이스 인증 시스템 및 인증 방법
JP6053323B2 (ja) 放送送信装置、放送通信連携受信装置およびそのプログラム、ならびに、放送通信連携システム
KR102379069B1 (ko) 방송 데이터를 인증하는 방송 장치 및 방법
JP5941356B2 (ja) 放送通信連携受信装置、アプリケーション認証プログラム及び放送通信連携システム
Claverie et al. Smart TVs: Security of DVB-T
KR101651127B1 (ko) 네트워크 임베디드 시스템 및 컨텐츠 과금 방법
JP6457938B2 (ja) 受信装置、受信方法、及び、送信方法
KR101666895B1 (ko) 디지털 방송 수신기 및 컨텐츠 관리 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191014

Year of fee payment: 4