상기의 기술적 과제를 이루기 위한, 본 발명에 의한 도메인 관리 방법은 홈 내에 위치한 도메인 관리자가 적어도 하나의 도메인을 관리하는 방법에 있어서, 상기 홈 내에 위치한 제1 기기를 도메인에 등록할지 여부를 결정하는 단계; 및 상기 결정 결과에 기초로 상기 제1 기기와 상기 도메인에 이미 등록된 제2 기기간에 컨텐트를 공유하기 위한 데이터를 제공하는 단계를 포함한다.
상기의 기술적 과제를 이루기 위한, 본 발명에 의한 도메인 관리 장치는 홈 내에 위치하여 적어도 하나의 도메인을 관리하는 장치에 있어서, 상기 홈 내에 위치한 제1 기기를 도메인에 등록할지 여부를 결정하고, 상기 결정 결과에 기초로 상기 제1 기기와 상기 도메인에 이미 등록된 제2 기기간에 컨텐트를 공유하기 위한 데이터를 제공하는 도메인 데이터 제공부를 포함한다.
이하, 첨부된 도면들을 참조하여 본 발명에 따른 방법 및 장치에 대해 상세히 설명한다.
본 발명은 소비자 중심으로 기기들을 연결해 컨텐츠를 공유할 수 있도록 하는 홈 네트워크 도메인을 관리하는 방법 및 장치이다. 즉, 사용자 기기로 이루어진 도메인을 관리하는 기능을 가진 기기(domain manager)를 홈 내에 둠으로써 사용자 편의성을 향상시킬 수 있고, 컨텐츠 제공자(contents provider)의 부담을 덜 수 있다.
도 2는 본 발명의 일실시예에 따른 도메인 관리 장치를 포함하는 시스템을 나타낸다. 도 2를 참조하면, 그 시스템은 사용자의 기기(10, 12, 14, 16, 18) 5개를 구비하고, 도메인 관리 기기(20) 및 CP 또는 RI(30)를 포함한다.
본 발명에 의한 도메인 관리 기기(20)는 홈내에 위치하여 도메인(40, 42)을 관리하는 역할을 수행한다. 여기서, 도메인을 관리하는 작업의 예로는, 도메인을 초기 생성하고, 홈내 기기를 상기 생성된 도메인에 상기 도메인의 도메인 정책에 따라 등록한 후, 관리하며, 상기 등록된 기기가 도메인을 탈퇴하는 것을 관리하는 것을 들 수 있다. 여기서, 도메인 초기 생성 작업의 예로는 도메인 식별자, 도메인 키의 생성을 들 수 있다. 또한, 등록된 기기를 관리한다는 의미는, 등록된 기기가 도메인에 해당되는 콘텐트를 안전하게 공유 또는 재생할 수 있도록 관리하는 것을 의미하며, 구체적인 예로는 기기의 도메인 등록/탈퇴, 링크 생성, 도메인 멤버쉽 관리, 도메인 키 생성/갱신 등을 들 수 있다. 본 발명에 의한 도메인 관리 기기(20)는 다른 기기(10, 12, 14, 16, 18)를 대표하여 인터넷으로 CP 또는 RI(50)에 접속하여 컨텐트 활용 권한에 대한 인증을 받을 수 있으며, 종래의 방법과는 달리 다른 기기(10, 12, 14, 16, 18)에 대한 기기 정보를 CP 또는 RI(50)에 제공하지 않고도 상기 인증을 받을 수 있다.
또한, 본 발명에 의한 도메인 관리 기기(20)는 자신이 도메인 2(42)에 등록하여, 도메인내 콘텐트를 활용하는 기능을 가질 수 있다. 이는, 도메인 관리 기기(20)는 상술한 종래의 도메인 관리 기능을 가진 CP 또는 RI와는 달리 사용자에 속하는 기기이기 때문에 가능한 것이다.
한편, 도 2를 참조하면, 사용자 1(30), 사용자 2(32) 별로 각각의 도메인1(40), 도메인 2(42)를 형성하며, 도메인 1(40)에는 그 도메인 멤버로서 기기(10, 12, 14)가 있으며, 도메인 2(42)에는 기기(16, 18)가 있음을 알 수 있다. 그러나, 본 발명은, 도 2와는 달리, 사용자 기반의 도메인이 아닌 단순히 기기만의 집합으로 구성된 도메인을 관리하는 DRM 정책에도 적용될 수 있는 것은 이 분야에 종사하는 자들에게는 자명한 사실이다.
도 3은 도 2의 도메인 관리 기기(20)의 구체적인 구성을 예시하는 블록도로서, 인터페이스(300), 도메인 정보 관리부(310), 도메인 정보 제공부(320), 도메인 데이터 관리부(330), 도메인 데이터 제공부(340), 인접성 검사부(350), 기기정보 관리부(360) 및 시큐리티 데이터 제공부(370)를 포함하여 이루어진다.
인터페이스(300)는 다른 기기(10, 12, 14, 16, 18)와 통신을 수행한다.
도메인 정보 관리부(310)는 사용자의 입력을 받고, 적어도 하나의 도메인을 생성하여 상기 생성된 도메인에 대한 정보를 설정 및 관리한다. 여기서, 사용자의 입력에 의해 초기화되어 설정되는 정보의 예로는 각 도메인에 대한 도메인 식별자, 도메인 정책 식별자, 사용자 정보, 도메인내 콘텐트의 활용에 필요한 데이터를 제공하는 기기의 위치정보 등을 들 수 있다. 한편, 후술하겠지만, 도메인 데이터 관리부(330)에 저장되는 도메인 키 등도 사용자의 입력에 의해 설정될 수 있다. 여기서, 사용자 정보의 예로는 사용자 식별자, 비밀번호 등을 들 수 있으며, 이러한 사용자 정보는 상술한 도메인 식별자 또는 도메인 키와 연관시킬 수 있는 데, 그 예로는 후술하는 도메인 정보 제공시 사용자 식별자를 제공하여 상기 도메인이 상기 사용자 식별자에 의해 특정되는 사용자에 속한다는 것을 알리는 것, 비밀번호 또는 사용자 정보를 이용한 도메인 키의 생성 또는 암호화 등을 들 수 있다. 또한, 도메인과 연관된 사용자 정보는 도메인에 기기를 등록하거나 탈퇴할 때 수행되는 사용자 확인 과정에도 사용될 수 있다.
도메인 정보 제공부(320)는 상기 생성된 도메인에 대한 정보를 도메인 정보 관리부(310)로부터 독취하여 상기 홈내에 위치한 기기(10, 12, 14, 16, 18)에게 제공한다. 제공하는 방법의 예로는 기기(10, 12, 14, 16, 18)의 요청에 따라 제공하거나, 요청과 관계 없이 일정 주기마다 상기 정보를 제공하는 방법을 들 수 있으 나, 반드시 이에 한정되는 것은 아니다. 여기서, 제공되는 정보는 상술한 바와 같이 도메인 정보 관리부(310)에 저장된 정보를 들 수 있다.
도메인 데이터 관리부(330)는 도메인내 컨텐트를 공유하기 위한 데이터를 저장한다. 여기서, 저장되는 데이터의 예로는 도메인내 컨텐트의 복호화에 사용되는 도메인 키를 들 수 있다.
도메인 데이터 제공부(340)는 홈 내에 위치한 기기를 도메인에 등록할지 여부를 결정하고, 상기 등록 결정된 기기에게 도메인내 컨텐트를 공유하기 위한 데이터를 제공한다. 여기서, 제공되는 데이터의 예로는 도메인 키, 도메인 멤버쉽 유효성 정보를 들 수 있다. 도메인 멤버쉽 유효성 정보에 대해서는 후술한다.
한편, 도메인 정책이 인접성 요건, 기기 정보의 유효성 요건을 충족하는 기기에 대해서만 등록하는 것으로 정해졌다면, 도메인 데이터 제공부(340)는 인접성 검사(proximity check) 결과 및 기기의 유효성 요건을 충족하는지를 기초로 등록여부를 결정한다. 여기서, 기기의 유효성 검사라 함은 도메인 관리 기기(20)가 관리하는 대상이 되는 기기인지를 검사하는 것이며, 인접성 검사의 예로는, 도메인 관리 기기(20)와 기기와의 물리적 거리가 물리적 거리 제한 조건을 만족시키는지 여부를 검사하는 것을 들 수 있으나 반드시 이에 한정되는 것은 아니다.
인접성 검사부(350)는 도메인 데이터 제공부(340)의 제어에 따라 도메인 관리 기기(20) 자신과 기기와의 인접성을 검사하고, 인접성 검사 결과를 도메인 데이터 제공부(340)에 제공한다.
기기 정보 저장부(360)는 등록결정된 기기에 대한 기기 정보를 저장한다. 여 기서, 저장되는 기기 정보의 예로는 등록요청한 기기로부터 수신된 기기 식별자, 기기 키와 등록결정시 도메인 데이터 제공부(340)에 의해 생성되는 도메인 멤버쉽 유효성 정보를 들 수 있다. 기기 키는 도메인 관리 기기(20)로부터 기기로 전송하는 경로 상의 데이터의 암호화에 사용될 수 있으며, 그 데이터의 예로는 도메인 키를 들 수 있다. 또한, 도메인 멤버쉽 유효성 정보는 도메인에 등록된 기기로서 유효한 자격을 나타내는 정보를 나타내며, 그 예로는 등록된 기기가 도메인 멤버로서 유효한 기간이 언제까지임을 나타내는 시간정보를 들 수 있다.
이상의 내용은 도메인 생성, 도메인 멤버 등록 및 콘텐트의 공유를 위한 데이터의 제공을 위주로 설명하였으며, 그 다음으로 컨텐트의 공유를 위한 데이터의 갱신 과정을 도 3을 참조하여 설명한다.
도메인 데이터 제공부(340)는 상술한 기능 외에 콘텐트의 공유를 위한 데이터를 갱신하고 그 갱신된 데이터를 도메인 데이터 관리부(330)에 저장한 후, 그 갱신된 결과를 등록된 기기에게 통지하는 기능을 수행한다. 여기서, 갱신할지 여부를 결정하는 방법의 예로는 도메인 내의 등록된 기기의 변동 또는 보안상 위험을 감지하여 결정하는 것을 들 수 있다. 또한, 도메인 데이터 제공부(340)는 상기 갱신결과를 통지받은 기기의 요청에 응답하여 상기 갱신된 데이터를 도메인 데이터 관리부(330)에서 독취하여 상기 요청한 기기에게 제공한다.
시큐리티 데이터 제공부(370)는 시큐어 타임(Secure Time), 기기 철회 정보(Revocation list) 등과 같이 보안과 관련된 시큐리티 데이터를 등록된 기기에게 제공한다. 여기서, 시큐어 타임은 도메인 내의 콘텐트의 유효시간을 산정하는 기준 이 되는 시간 정보로서 콘텐트 임포팅시 사용된다. 또한, 기기 철회 정보는 소정의 이유로 인해 철회된 기기에 대한 정보를 의미하며, 철회된 기기는 다른 기기와 콘텐트를 공유할 수 없게 된다.
한편, 도메인 데이터 제공부(340)는 등록된 기기로부터 탈퇴 요청을 인터페이스(300)를 통하여 받은 경우 상기 탈퇴요청한 기기에 대한 기기 정보를 상기 기기 정보 저장부(360)에서 삭제하고, 상기 탈퇴 요청된 도메인의 콘텐트의 공유에 필요한 데이터를 갱신한다.
도 4는 본 발명의 일실시예에 따른 도메인 관리 방법에 있어서 도메인 생성, 멤버 등록 및 데이터 전달 과정을 나타내는 흐름도이다.
도 4를 참조하면, 도메인 관리 기기(20)는 적어도 하나의 도메인을 생성하여 상기 생성된 도메인에 대한 정보가 도메인 정보 관리부(310)에 저장된다(S400). 즉, 도메인 정부 관리부(310)는 도메인 생성을 위해 사용자가 입력한 정보에 의해 초기화 되어 안전하게 저장된다. 초기화되는 정보의 예로는 상술한 바와 같이 각 도메인에 대한 도메인 식별자, 도메인 정책 식별자 및 도메인 키, 사용자 정보, 도메인내 콘텐트 활용을 위한 데이터를 제공하는 기기의 위치정보 등을 들 수 있다. 한편, S400 단계 또는 그 이후에 도메인 관리 기기(20)는 자신을 도메인에 등록하고, 상기 도메인내 콘텐트의 공유에 필요한 데이터를 저장할 수 있다. 이 데이터의 예로는 도메인 키, 도메인 멤버쉽 유효성 정보를 들 수 있다.
그 다음, 도메인 정보 제공부(320)는 홈내에 위치한 기기(10, 12, 14, 16, 18)로부터 상기 생성된 도메인에 대한 정보를 요청받고, 그 응답으로 도메인 정보 관리부(310)로부터 독취하여 상기 요청한 기기(12)에게 제공한다(S410). 그 후, 기기(12)는 제공받은 정보를 기초로 도메인 2(42)에 가입할 것을 결정하고, 도메인 관리 기기(20)에 등록을 요청한다. 여기서, 등록 요청시, 기기(120)의 기기 식별자, 기기 키 등이 도메인 관리 기기(20)에 제공되며, 이는 인터페이스(300)를 통하여 도메인 데이터 제공부(340)에 전달된다.
도메인 데이터 제공부(340)는 기기(12)를 도메인 2(42)에 등록할지 여부를 결정하는데, 인접성 검사부(350)에 의한 인접성 검사 결과, 기기의 유효성 검사를 기초로 등록여부를 결정한다(S420). 이러한 검사는 도메인 2(42)의 도메인 정책에 따라 수행되는 것이다.
도메인 데이터 제공부(340)는 도메인내 콘텐트의 공유를 위한 데이터를 기기(12)에 안전하게 제공한다(S430). 이를 위해 도메인 데이터 제공부(340)가 수행하는 과정의 예로는 기기(12)에 대한 도메인 멤버쉽 유효성 정보를 생성하고, 도메인 데이터 관리부(350)로부터 도메인 키 등을 독취하여 S410 단계에서 제공받은 기기 키 등을 이용하여 상기 독취된 도메인 키 및 상기 생성된 도메인 멤버쉽 유효성 정보 등을 암호화하는 과정을 들 수 있다. 한편, 여기서, 제공되는 데이터의 예로 도메인 키, 도메인 멤버쉽 유효성 정보 만을 언급하였으나, 이 뿐만 아니라 기기(12)가 도메인 2(42)에 속한다는 링크 정보도 함께 제공될 수 있음은 이 분야에 종사하는 자들에게는 자명한 사실이다.
이 후, 도메인 데이터 제공부(340)는 S430에서 생성된 도메인 멤버쉽 유효성 정보와 S410 단계에서 제공받은 기기 식별자, 기기 키 등을 기기 정보 관리부(360) 에 저장한다(S440).
이후, 기기(12)는 도메인 2(42)에 속하는 컨텐트를 도메인 키 등을 이용한 복호화 등을 통하여 재생 또는 공유할 수 있게 되는 것이다.
도 5는 본 발명의 일실시예에 따른 도메인 관리 방법에 있어서 데이터 갱신 과정을 나타내는 흐름도이다. 즉, 도메인내 콘텐트의 공유에 필요한 데이터를 갱신하는 일 실시예를 나타내며, 도 2에서 도메인 2(42)의 데이터 갱신 상황을 전제로 도 3을 참조하여 설명한다.
먼저, 도메인 데이터 제공부(340)는 도메인 내 콘텐트의 공유를 위한 데이터를 갱신할지 여부를 결정한다(S500). 여기서, 결정하는 방법의 예로는 도메인에 등록된 기기가 탈퇴하는 등 도메인 멤버의 변동이 생기거나, 도메인 키가 유출되는 등의 보안상 위험을 감지하여 갱신여부를 결정하는 방법을 들 수 있다.
그 다음, 도메인 데이터 제공부(340)는 상기 결정에 따라 데이터를 갱신한 후, 상기 갱신된 데이터를 도메인 데이터 관리부(330)에 저장하고 상기 갱신 사실을 상기 도메인에 등록된 기기(14, 16, 18)에게 통지한다(S510). 갱신되는 데이터의 예로는 도메인 키를 들 수 있다.
이 후, 갱신 사실을 통지 받은 기기(14)의 요청에 따라 도메인 데이터 제공부(340)는 S510단계에서 갱신된 데이터를 기기(14)에게 안전하게 전달한다(S520). 한편, S510에서 통지되는 갱신 사실 및 S520에서 전달되는 데이터는 저장된 기기 정보를 통한 암호화 과정을 거칠 수 있다. 이러한 암호화 방법의 예로는, 기기(14)의 기기 키로 암호화하는 것을 들 수 있다.
S520 단계를 통해 갱신된 데이터를 전달받은 기기(14)는 갱신된 데이터를 저장한다. 이후, 이후의 도메인 내의 콘텐츠는 갱신된 도메인 키를 이용하여 암호화되고 공유되어 탈퇴한 기기(기기 탈퇴로 인해 도메인 키가 갱신된 경우) 혹은 해킹 등과 같이 보안상 위험에 처한 기기(보안상 위험한 문제 발생으로 인해 도메인 키기 갱신된 경우)는 갱신된 도메인 키를 받지 못했기 때문에 이후의 컨텐츠 공유는 불가능하게 된다.
도 6a 및 도 6b는 본 발명의 일실시예에 따른 도메인 관리 방법에 있어서 시큐리티 데이터 제공 과정을 나타내는 흐름도이다. 여기서, 시큐리티 데이터는 상술한 바와 같이 시큐어 타임, 기기 철회 정보 등을 포함하는 보안과 관련된 데이터이다.
도 6a는 본 발명의 일실시예에 따른 시큐어 타임을 제공하는 도메인 관리 방법을 나타내는 흐름도이다. 도 6a에는 도시되지 않았지만, S600 단계 이전에 도메인 생성 및 기기 등록이 되어있음을 전제로 한다.
도 6a를 참조하면, 먼저, 시큐리티 데이터 제공부(370)는 도메인에 등록된 기기로부터 시큐어 타임을 요청받는다(S600). 기기가 시큐어 타임을 요청하는 경우의 예로는 기기가 콘텐트를 임포팅(importing)하는 경우를 들 수 있다. 임포팅시, 콘텐츠가 언제부터 도메인용 컨텐츠로 사용되었는지를 나타내기 위한 타임 스탬핑(time stamping)이 필요한데, 그 기준이 되는 시간이 시큐어 타임이기 때문이다. 이러한 타임 스탬핑은 임포팅 당시 도메인 멤버였던 기기가 이후에 탈퇴를 하더라도 탈퇴한 시간과 컨텐트가 임포팅된 시간을 비교하여, 탈퇴 이전에 도메인에서 공 유하던 컨텐트는 변함없이 사용할 수 있도록 하기 위한 방법으로 사용된다.
그 다음, 시큐리티 데이터 제공부(370)는 상기 요청한 기기에게 시큐어 타임을 제공한다(S610). 이 후, 기기는 제공받은 시큐어 타임을 이용하여 콘텐트 임포팅을 수행한다.
도 6b는 본 발명의 일실시예에 따른 기기 철회 정보를 제공하는 도메인 관리 방법을 나타내는 흐름도이다. 도 6b에는 도시되지 않았지만, S600 단계 이전에 도메인 생성 및 기기 등록이 되어있음을 전제로 한다.
도 6b를 참조하면, 먼저, 시큐리티 데이터 제공부(370)는 각 도메인에 등록된 기기들에 저장된 시큐리티 데이터가 최신인지를 판단한다(S650). 여기서, 도메인에 등록된 기기가 이전의 기기철회 정보를 가지고 있으면, 그 기기철회 정보가 발행된 이후에 도메인을 탈퇴한 기기와 컨텐트를 공유하지 않도록 하기 위해, 도메인 내 등록된 기기에 저장된 기기철회 정보가 최신인지여부를 판단하고, 이에 따라 등록된 기기에 저장된 기기 철회 정보를 갱신시키는 것이다.
그 다음, 최신 데이터를 가지지 않은 기기가 있다고 판단되면, 시큐리티 데이터 제공부(370)는 자신이 가진 최신의 기기 철회 정보를 상기 기기에게 제공한다(S660).
이후, 도메인 내 기기들은 도메인 관리 기기(20)로부터 제공받은 기기 철회 정보를 활용하여 도메인 내 컨텐트를 안전하게 공유할 수 있게 된다.
도 7은 본 발명의 일실시예에 따른 도메인 관리 방법에 있어서 탈퇴 처리 과정을 나타내는 흐름도이다. 도 2에서 기기(18)가 도메인 2(42)를 탈퇴하는 상황을 전제로 도 3을 참조하여 설명한다.
도 7을 참조하면, 먼저, 도메인 데이터 제공부(340)는 기기(18)로부터 탈퇴를 요청받는다(S700). 즉, 도메인에 등록되어 있는 기기 중 더 이상 도메인 내 컨텐트 공유를 원하지 않는 기기로부터 도메인 탈퇴를 요청받는 것이다
그 다음, 도메인 데이터 제공부(340)는 상기 요청한 기기(18)의 기기 정보를 기기 정보 관리부(360)에서 삭제하고, 상기 도메인내 콘텐트 공유에 필요한 데이터를 상기 도메인의 도메인 정책에 따라 갱신한다(S710). 이후, 갱신 결과 및 갱신된 데이터는 도 5에서 설명한 바 대로 전달된다. 그 결과, 도메인에서 탈퇴한 사용자 기기는 이전 도메인 키를 이용하여 탈퇴 이후에 도메인에 들어온 컨텐트를 더 이상 공유할 수 없게 된다.
한편, 도메인 정책이 각 도메인에 등록되는 기기의 갯수 또는 각 기기가 등록하는 도메인의 갯수를 소정 수로 제한하도록 설정되어 있다면, 이를 토대로 도메인 관리 기기(20)는 등록 과정을 수행한다. 이러한 도메인 정책에 따른 관리 방법에 따르면, 도메인 관리 기기 측에서나, 콘텐츠 제공자 측 모두 관리 부담이 줄어드는 효과가 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이러한 본원 발명인 방법 및 장치는 이해를 돕기 위하여 도면에 도시된 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.