KR101277261B1 - 디지털 컨텐트를 스토리지 기기에 저장하는 방법 및 이를위한 장치 - Google Patents

디지털 컨텐트를 스토리지 기기에 저장하는 방법 및 이를위한 장치 Download PDF

Info

Publication number
KR101277261B1
KR101277261B1 KR1020070135245A KR20070135245A KR101277261B1 KR 101277261 B1 KR101277261 B1 KR 101277261B1 KR 1020070135245 A KR1020070135245 A KR 1020070135245A KR 20070135245 A KR20070135245 A KR 20070135245A KR 101277261 B1 KR101277261 B1 KR 101277261B1
Authority
KR
South Korea
Prior art keywords
key
storage
content
host
encrypted
Prior art date
Application number
KR1020070135245A
Other languages
English (en)
Other versions
KR20090019660A (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 US12/194,860 priority Critical patent/US20090052670A1/en
Publication of KR20090019660A publication Critical patent/KR20090019660A/ko
Application granted granted Critical
Publication of KR101277261B1 publication Critical patent/KR101277261B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data

Abstract

본 발명은 디지털 컨텐트를 스토리지 기기에 저장하는 방법에 관한 것으로, 본 발명에 의하면 호스트가 자신에게 접속한 스토리지 기기에 컨텐트를 저장할 때 컨텐트의 암호화에 사용한 컨텐트 키를 해당 스토리지 기기에 대한 스토리지 키로 암호화하고, 암호화된 컨텐트 키 및 암호화된 컨텐트는 스토리지 기기에 저장하고 호스트에는 스토리지 키만 저장함으로써 호스트가 관리해야 하는 정보의 양을 줄일 수 있다.
또한, 스토리지 키를 휴대용 보안 장치에 저장하는 경우 하나의 호스트에 바운딩된 컨텐트의 휴대성 및 이동성을 높일 수 있다.

Description

디지털 컨텐트를 스토리지 기기에 저장하는 방법 및 이를 위한 장치{Method and apparatus for storing digital content in storage device}
본 발명은 디지털 컨텐트를 보호하는 방법에 관한 것으로, 더욱 상세하게는 디지털 컨텐트를 스토리지 기기에 저장하고, 저장된 스토리지 기기를 관리하는 방법에 관한 것이다.
통신 기술의 발달로 디지털 컨텐트가 점점 대용량화되고 있으며, 이에 따라디지털 컨텐트를 저장하기 위한 고용량의 스토리지 기기들도 많이 출시되고 있다. 디지털 컨텐트는 이론상으로 퀄리티의 열화 없이도 무제한 복제가 가능하기 때문에 디지털 컨텐트가 권한 없는 자에 의해 사용되는 것을 방지할 필요가 있다. 예를 들면, 디지털 컨텐트를 수신하는 셋탑 박스가 방송 컨텐트를 수신하여 그 셋탑 박스에 연결된 스토리지 기기에 저장한 경우, 그 스토리지 기기에 저장된 컨텐트는 다른 셋탑 박스에 접속된 상태에서는 재생될 수 없도록 해야 한다.
이와 같이, 디지털 컨텐트를 보호하기 위한 다양한 DRM(Digital Right Management) 기술이 연구되고 있는데, 스토리지 기기는 일반적으로 컨텐트를 보호하기 위해 필요한 연산 능력이 없는 무지능(non-intelligent) 기기이므로, 스토리 지 기기에 컨텐트를 복사하는 호스트(셋탑 박스, 디지털 TV 등)가 컨텐트를 스토리지 기기에 저장하기 전에 미리 컨텐트에 적절한 암호화 처리를 행하여야 한다.
도 1은 종래 기술에 따라 호스트가 디지털 컨텐트를 스토리지 기기에 저장하는 과정을 나타낸 순서도이다.
단계 110에서, 호스트는 컨텐트 키를 생성한다.
단계 120에서, 호스트는 컨텐트 키로 스토리지에 저장할 컨텐트를 암호화한다.
단계 130에서, 암호화된 컨텐트를 호스트에 접속한 스토리지 기기에 저장한다.
단계 140에서, 컨텐트 키를 호스트의 디바이스 키로 암호화한다. 호스트의 디바이스 키는 호스트 외에 다른 디바이스들은 알지 못하는 키이다.
단계 150에서, 호스트는 암호화된 컨텐트 키를 호스트 내의 안전한 곳에 저장한다. 물론, 이 때 컨텐트 키와 그에 대응되는 컨텐트를 매핑시키는 정보도 함께 저장될 것이다.
상기와 같은 과정에 의해 컨텐트를 스토리지 기기에 저장하면, 그 스토리지 기기를 다른 호스트에 접속하여도 그 컨텐트를 재생할 수 없다. 컨텐트 키가 호스트에 보관되기 때문에 다른 기기에서는 암호화된 컨텐트를 복호화할 수 없기 때문이다. 따라서, 그 컨텐트는 원래의 호스트에서만 재생될 수 있는데, 이하에서는 이러한 환경을 컨텐트가 호스트에 "바인딩되었다"고 칭하기로 한다.
그러나, 이와 같은 종래 기술에 의하면, 호스트가 많은 컨텐트를 관리해야 하는 문제가 있다. 즉, 호스트는 자신이 암호화하여 저장한 모든 컨텐트들에 대한 컨텐트 키를 보관해야 하므로 시간이 지남에 따라 오버로드가 생길 수 있다.
또한, 호스트에 바인딩된 컨텐트를 다른 호스트에서 재생하거나 또는 다른 스토리지 기기로 이동(move)시키기 위해서는 컨텐트가 바인딩 된 호스트가 필요한데, 일반적으로 호스트가 휴대하기 용이하지 않기 때문에 컨텐트의 휴대성(portability) 및 이동성(mobility)이 매우 낮다는 문제가 있다.
본 발명은 디지털 컨텐트를 스토리지 기기에 저장할 때 호스트가 모든 컨텐트 키를 보관하지 않도록 하며, 또한 하나의 호스트에 바인딩된 컨텐트를 쉽게 다른 기기로 이동할 수 있는 방법을 제공하는데 그 목적이 있다.
이러한 목적을 달성하기 위한 본 발명은, 호스트가 디지털 컨텐트를 스토리지 기기에 저장하는 방법에 있어서, 상기 컨텐트를 컨텐트 키로 암호화하는 단계; 상기 스토리지 기기에 대한 고유한 키인 스토리지 키로 상기 컨텐트 키를 암호화하는 단계; 및 상기 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 스토리지 기기에 저장하는 단계를 포함하는 것을 특징으로 한다.
상기 스토리지 키는 상기 호스트에 접속된 휴대용 보안 장치가 생성한 키인 제 1 스토리지 키이며, 상기 저장 방법은, 상기 저장이 완료되면 제 1 스토리지 키를 상기 호스트에서 삭제하는 단계를 더 포함하는 것이 바람직하다.
상기 저장 방법은, 상기 스토리지 기기에 대해 상기 호스트가 생성한 키인 제 2 스토리지 키가 상기 호스트에 이미 존재하는지 판단하는 단계; 상기 판단 결과에 기초하여 상기 제 2 스토리지 키를 상기 호스트에서 추출하거나 새롭게 생성하는 단계; 상기 제 2 스토리지 키를 이용하여 상기 컨텐트 키 파일을 업데이트하는 단계; 상기 호스트의 디바이스 키로 상기 제 2 스토리지 키를 암호화하는 단계; 및 상기 암호화된 제 2 스토리지 키를 상기 호스트에 저장하는 단계를 더 포함하는 것 이 바람직하다.
상기 업데이트하는 단계는, 상기 암호화된 제 1 스토리지 키를 상기 호스트의 디바이스 키를 이용하여 복호화하는 단계; 상기 복호화된 제 1 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 단계; 상기 복호화된 컨텐트 키를 상기 제 2 스토리지 키로 암호화하는 단계; 및 상기 제 2 스토리지 키로 암호화된 컨텐트 키를 상기 제 1 스토리지 키로 암호화된 컨텐트 키와 교체하는 단계를 포함하는 것이 바람직하다.
상기 스토리지 키는 상기 호스트가 생성한 키인 제 2 스토리지 키이며, 상기 저장 방법은, 상기 제 2 스토리지 키를 상기 호스트의 디바이스 키로 암호화하는 단계; 및 상기 암호화된 제 2 스토리지 키를 상기 호스트에 저장하는 단계를 더 포함하는 것이 바람직하다.
상기 저장 방법은, 상기 호스트에 접속한 휴대용 보안 장치로부터 상기 휴대용 보안 장치가 상기 스토리지 기기에 대하여 생성한 키인 제 1 스토리지 키를 수신하는 단계; 및 상기 제 1 스토리지 키를 이용하여 상기 컨텐트 키 파일을 업데이트하는 단계를 더 포함하는 것이 바람직하다.
상기 업데이트하는 단계는, 상기 암호화된 제 2 스토리지 키를 상기 휴대용 보안 장치의 디바이스 키를 이용하여 복호화하는 단계; 상기 복호화된 제 2 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 단계; 상기 복호화된 컨텐트 키를 상기 제 1 스토리지 키로 암호화하는 단계; 및 상기 제 1 스토리지 키로 암호화된 컨텐트 키를 상기 제 2 스토리지 키로 암호화된 컨텐트 키 와 교체하는 단계를 포함하는 것이 바람직하다.
상기 저장 방법은, 상기 컨텐트에 대한 재생 요청이 수신되면, 상기 호스트 또는 상기 호스트에 접속된 휴대용 보안 장치에서 상기 스토리지 키를 검색하는 단계; 및 상기 검색 결과에 기초하여 상기 암호화된 컨텐트를 선택적으로 재생하는 단계를 더 포함하는 것이 바람직하다.
상기 재생하는 단계는, 상기 검색 결과 상기 스토리지 키가 발견되면, 상기 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 단계; 및 상기 복호화된 컨텐트 키를 이용하여 상기 암호화된 컨텐트를 복호화하는 단계를 포함하는 것이 바람직하다.
상기 스토리지 기기는 제 1 스토리지 기기이며, 상기 저장 방법은, 상기 컨텐트를 상기 제 1 스토리지 기기로부터 제 2 스토리지 기기로 이동(move)하는 명령을 수신하는 단계; 상기 제 1 스토리지 키를 이용하여 상기 암호화된 컨텐트 키를 복호화하는 단계; 상기 제 2 스토리지 기기에 대한 스토리지 키인 제 2 스토리지 키로 상기 복호화된 컨텐트 키를 암호화하는 단계; 상기 제 2 스토리지 키로 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 제 2 스토리지 기기에 저장하는 단계; 및 상기 제 1 스토리지 기기에 저장된 컨텐트 키 파일 및 암호화된 컨텐트를 삭제하는 단계를 더 포함하는 것이 바람직하다.
상기 컨텐트 키 파일은 상기 컨텐트 키 파일의 무결성 검사를 위한 값을 더포함하는 것이 바람직하다.
상기 컨텐트 키 파일은 상기 스토리지 키를 제3자의 공개 키 또는 상기 호스 트의 공개 키로 암호화한 값인 복구 키를 더 포함하는 것이 바람직하다.
또한, 본 발명은 상기 디지털 컨텐트 저장 방법을 실행하는 컴퓨터 프로그램을 기록한 기록 매체를 제공한다.
또한, 본 발명은, 디지털 컨텐트를 스토리지 기기에 저장하는 호스트에 있어서, 상기 컨텐트를 컨텐트 키로 암호화하는 컨텐트암호화부; 상기 호스트에 접속된 스토리지 기기를 위한 고유한 키인 스토리지 키로 상기 컨텐트 키를 암호화하는 컨텐트키암호화부; 및 상기 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 스토리지 기기에 저장하는 스토리지제어부를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 호스트는 스토리지 당 하나의 스토리지 키 만을 관리하면 되기 때문에, 안전하게 관리해야 하는 정보의 양을 줄일 수 있다.
또한, 사용자는 컨텐트가 저장된 스토리지 기기와 함께 스토리지 키가 저장된 휴대용 보안 장치만 가지고 있으면, 스토리지 기기를 어떠한 호스트에 연결하여도 휴대용 보안 장치에 바인딩 된 컨텐트를 자유롭게 재생하거나 다른 스토리지 기기로 이동시킬 수 있다.
이하에서 첨부된 도면을 참조하여, 본 발명의 바람직한 실시예를 상세히 설명한다.
도 2a는 본 발명의 일실시예에 따라 호스트 및 스토리지에 저장된 정보의 구 조를 나타낸 도면이다.
도 2a에 도시된 바와 같이, 본 실시예에서 호스트(220)에는 스토리지 정보(220)가 저장되고, 스토리지 기기(230)에는 암호화된 컨텐트(도시하지 않음)은 물론, 스토리지 ID 파일(240) 및 컨텐트 키 파일(250)이 저장된다. 호스트(210)와 스토리지 기기(230)와의 통신 인터페이스는 특정한 것으로 한정하지 않는다.
호스트(210)는 자신에게 접속된 스토리지 기기마다 스토리지 ID 파일(240)을생성하여 해당 스토리지에 저장하며, 스토리지 기기가 접속되면 그 스토리지 기기에 포함된 스토리지 ID 파일을 보고 스토리지 기기를 식별한다.
스토리지 ID 파일(240)에는 호스트 ID(241), 스토리지 ID(242) 및 MAC(Message Authentication Code)(243)이 포함된다. MAC 대신에 전자 서명 값이 이용될 수도 있다.
호스트 ID(241)는 호스트(210) 자신의 식별자이며, 스토리지 ID(242)는 스토리지 기기(230)의 식별자, MAC(243)은 스토리지 ID 파일(240)의 무결성을 검사하기 위한 값이다.
모든 스토리지로부터 유일한 식별자를 추출하는 것은 어려울 수 있으므로, 스토리지 ID(242)는 호스트(210)가 스토리지 기기(230)에 대하여 다른 스토리지 기기들과 구별될 수 있는 고유한 값으로 생성하여 스토리지 기기(230)에 저장한다. 이러한 스토리지 ID(242)는 스토리지 정보(220)에도 포함되므로, 호스트가 스토리지 정보(220)에서 해당 스토리지 기기(230)에 대한 스토리지 키를 찾을 때 인덱스 정보로 이용될 수 있다. 호스트(210)는 스토리지 기기(230)가 접속되었을 때, 그 스토리지 기기(230)에 대한 스토리지 ID 파일을 검색하고, 해당 스토리지 ID 파일이 없으면 새로 생성한다.
스토리지 정보(220)는 스토리지 ID, 스토리지 키 및 넌스(Nonce)를 포함한다. 물론 스토리지 ID는 스토리지 ID 파일(240)에 포함된 스토리지 ID(242) 및 컨텐트 키 파일(250)에 포함된 스토리지 ID(252)와 동일한 값을 가진다.
넌스(Nonce)는 호스트(210)가 스토리지 기기별로 생성하는 값으로, 하나의 스토리지 기기에 대해 생성된 넌스는 이후에 업데이트되더라도 이전에 사용된 값이 중복되어 나타나지 않도록 생성된다. 넌스는 호스트(210)에 저장될 때, 호스트(210)의 디바이스 키로 암호화되어 저장되는 것이 바람직하다. 한편, 넌스는 스토리지 기기(230)에 포함된 컨텐트 키 파일(250)에도 포함된다.
이러한 넌스는 Disk Cloning Attack을 방지하기 위해 활용될 수 있다. 즉, 스토리지 기기(230)에 저장된 컨텐트가 다른 스토리지 기기로 이동할 경우, 호스트(210)는 스토리지 기기(230)에서 이동한 컨텐트에 대한 컨텐트 키 파일을 삭제하고, 스토리지 정보(220)에서 해당 스토리지 기기(230)의 스토리지 ID를 가지는 스토리지 정보 요소(221)를 찾아서 해당 스토리지 Nonce를 업데이트한다. 또한, 해당 스토리지 기기(230)에 저장된 나머지 컨텐트 키 파일들의 Nonce들을 스토리지 정보(220)의 Nonce들과 동일하게 업데이트한다.
이렇게 하면, 공격자가 원래의 스토리지를 로우 레벨(bit by bit)로 복사하여 컨텐트의 이동이 일어나기 전 상태의 스토리지 기기를 백업하더라도 이동한 컨텐트를 호스트에서 재생할 수 없다. 다만, 이를 위해서는 호스트가 스토리지 정 보(220)의 넌스를 컨텐트 키 파일(250)의 넌스와 비교하여 일치하는 경우에만 해당 컨텐트를 재생하도록 해야 할 것이다.
호스트(210)는 하나의 컨텐트를 스토리지 기기(230)에 저장할 때마다 해당 컨텐트에 대한 컨텐트 키 파일(250)을 생성하여 스토리지 기기(230)에 저장한다. 컨텐트는 컨텐트 키로 암호화하여 스토리지 기기(230)에 저장한다. 컨텐트 키는 스토리지 기기(230)의 디바이스 키인 스토리지 키로 암호화하여 컨텐트 키 파일(250)에 삽입된다. 이와 같이, 컨텐트 키는 호스트(210)가 보관하는 것이 아니라 스토리지 기기(230)에 저장된 컨텐트 키 파일(250)에 포함되므로, 호스트(210)는 모든 컨텐트들에 대한 컨텐트 키를 직접 관리할 필요가 없으며, 다만 스토리지 기기별로 스토리지 키 만을 관리하면 된다.
컨텐트 키 파일(250)은 호스트 ID(251), 스토리지 ID(252), 넌스(253), 컨텐트 키(254), 복구 키(255) 및 MAC(256)을 포함한다. 복구 키(255)는 스토리지 기기(230)의 스토리지 키를 제3자, 예를 들면 호스트 기기(210) 제조자의 공개 키로 암호화한 것이다. 또는, 해당 컨텐트가 바인딩된 기기(본 실시예에서는 호스트(210))의 공개 키로 암호화할 수도 있다. 이는 호스트(210)가 분실되었거나 스토리지 정보(220)가 지워진 경우 등 스토리지 키를 복구할 수 없는 경우에 대비한 것이다.
컨텐트 키 파일(250)에 포함된 기타 정보들에 대한 설명은 전술한 바 있으므로 여기서는 생략하며, 이 외에도 CCI(Copy Control Information), 컨텐트ID 등이 더 포함될 수 있다.
도 2b는 본 발명의 다른 실시예에 따라 호스트 및 스토리지에 저장된 정보의 구조를 나타낸 도면이다.
도 2b에 도시된 바와 같이, 본 실시예에서는 도 2a의 실시예와 달리 스토리지 정보(321)가 휴대용 보안 장치(320)에 포함된다. 이러한 휴대용 보안 장치(320)는 호스트(310)에 접속하여 스토리지 기기(330)에 대한 스토리지 ID 및 넌스를 생성하여 스토리지 정보(321)에 삽입한다. 이하에서는 이와 같은 휴대용 보안 장치(320)를 PSC(Portable Security Component)라 칭하기로 한다. 스토리지 키는 PSC(320)의 디바이스로 암호화하여 보관하는 것이 바람직하다.
스토리지 정보(321), 스토리지 ID 파일(331) 및 컨텐트 키 파일(332)은 구조는 도 2a에서와 거의 동일하나, 호스트 ID 대신에 PSC ID가 포함된다. 도시하지는 않았으나, 여기서도 물론 암호화된 컨텐트는 스토리지 기기(330)에 저장된다.
본 실시예에 의하면 컨텐트는 호스트(310)가 아니라 PSC(320)에 바인딩된다. 따라서, 사용자는 스토리지 기기(330)를 다른 호스트에서 재생할 때, PSC(320)만 다른 호스트에 연결하면 스토리지(330)에 저장된 컨텐트를 자유롭게 이용할 수 있게 된다.
도 3은 본 발명의 일실시예에 따라 호스트가 컨텐트를 스토리지 기기에 저장하는 과정을 나타낸 순서도이다.
단계 301에서, 호스트에 스토리지 기기가 접속된다.
단계 302에서, 호스트는 스토리지 기기 내에 적절한 스토리지 ID 파일이 존재하는지 판단한다. 이 때, 스토리지 ID 파일 내의 호스트ID(PSC ID) 및 스토리지 ID가 참조된다.
단계 303에서, 만약 적절한 스토리지 ID 파일이 존재하지 않으면 스토리지 ID 파일 및 스토리지 정보를 생성한다. 컨텐트를 PSC에 바인딩하는 경우, 스토리지 ID 파일 및 스토리지 정보에 포함되는 스토리지 ID는 PSC로부터 수신한다.
단계 304에서, 호스트는 스토리지 정보로부터 스토리지 키를 검출한다.
단계 305에서, 사용자 인터페이스를 통해 컨텐트 저장 요청이 수신된다.
단계 306에서, 호스트는 컨텐트 키를 생성한다.
단계 307에서, 생성된 컨텐트 키로 컨텐트를 암호화하여 스토리지 기기에 저장한다.
단계 308에서, 스토리지 키로 컨텐트 키를 암호화한다.
단계 309에서, 스토리지 키를 호스트 또는 PSC에 저장한다. 호스트 또는 PSC의 디바이스 키로 암호화하여 저장하는 것이 바람직하다.
도 4는 본 발명의 일실시예에 따라 PSC에 바인딩된 컨텐트를 호스트에 바인딩시키는 과정을 나타낸 순서도이다.
단계 401은 PSC가 스토리지 기기에 대하여 생성한 제 1 스토리지 키를 이용하여 컨텐트를 PSC에 바인딩시키는 과정이다. 이러한 과정에 대한 설명은 도 3에서 전술하였으므로 여기서는 생략한다.
단계 402에서, 호스트는 해당 스토리지 기기에 대한 스토리지 정보를 검색하여 이미 해당 스토리지 기기에 대한 스토리지 키가 호스트에 저장되어 있는지 판단한다. 만약 있다면 해당 스토리지 정보 요소로부터 스토리지 키를 추출한다. 없으 면 새롭게 생성한다. 호스트에 의해 생성된 스토리지 키를 제 2 스토리지 키라고 칭하기로 한다.
단계 403에서, 호스트는 제 1 스토리지 키, 즉 PSC가 생성한 스토리지 키를 이용하여 컨텐트 키 파일에 포함된 컨텐트 키를 복호화한다.
단계 404에서, 호스트는 제 2 스토리지 키를 이용하여 컨텐트 키 파일을 업데이트한다. 즉, 제 2 스토리지 키를 이용하여 단계 403에서 복호화된 컨텐트 키를 암호화하고, 제 2 스토리지 키로 암호화된 컨텐트 키를 기존의 그것, 즉 제 1 스토리지 키로 암호화된 컨텐트 키와 교체한다. 또한, 컨텐트 키 파일 및 스토리지 ID 파일에 포함되어 있던 PSC ID를 호스트 ID로 교체한다.
단계 405에서, 제 2 스토리지 키를 호스트의 디바이스 키로 암호화한다.
단계 406에서, 암호화된 제 2 스토리지 키를 호스트의 비휘발성 메모리에 저장한다.
이와 같은 과정에 의해, 스토리지 기기에 저장된 암호화된 컨텐트를 복호화하기 위해서는 호스트에 저장된 제 2 스토리지 키가 있어야 하므로, 컨텐트는 호스트에 바인딩되었다고 할 수 있다.
도 5는 본 발명의 일실시예에 따라 호스트에 바인딩된 컨텐트를 PSC에 바인딩시키는 과정을 나타낸 순서도이다.
단계 501은 호스트가 스토리지 기기에 대하여 생성한 제 2 스토리지 키를 이용하여 컨텐트를 호스트에 바인딩시키는 과정이다. 이러한 과정에 대한 설명은 도 3에 대한 설명으로 대체한다.
단계 502에서, 호스트는 PSC의 스토리지 정보를 검색하여 이미 해당 스토리지 기기에 대한 스토리지 키가 이미 PSC에 저장되어 있는지 판단한다. 이전에 한번이라도 PSC와 스토리지 기기가 접속하였다면 스토리지 정보가 PSC에 있을 것이다. 만약 PSC에 이미 스토리지 키가 있다면 스토리지 정보로부터 스토리지 키를 추출하고, 없으면 PSC에게 생성을 요청하여 새롭게 생성된 스토리지 키를 수신한다. PSC에 의해 생성된 스토리지 키를 제 1 스토리지 키라고 칭하기로 한다.
단계 503에서, 호스트는 제 2 스토리지 키, 즉 호스트가 생성한 스토리지 키를 이용하여 컨텐트 키 파일에 포함된 컨텐트 키를 복호화한다.
단계 504에서, 호스트는 제 1 스토리지 키를 이용하여 컨텐트 키 파일을 업데이트한다. 즉, 제 1 스토리지 키를 이용하여 단계 503에서 복호화된 컨텐트 키를 암호화하고, 제 1 스토리지 키로 암호화된 컨텐트 키를 기존의 그것, 즉 제 2 스토리지 키로 암호화된 컨텐트 키와 교체한다. 이는, 새로운 컨텐트 키 파일을 생성하고, 기존의 컨텐트 키 파일을 삭제하는 것을 의미할 수도 있다.
또한, 컨텐트 키 파일에 포함되어 있던 호스트 ID를 PSC ID로 교체한다.
단계 505에서, 제 1 스토리지 키를 호스트에서 삭제한다. 호스트에 제 1 스토리지 키가 남아있으면 호스트에서도 PSC에 바인딩된 컨텐트를 재생할 수 있기 때문이다.
이와 같은 과정에 의해, 스토리지 기기에 저장된 암호화된 컨텐트를 복호화하기 위해서는 PSC에 저장된 제 1 스토리지 키가 필요하게 되므로, 컨텐트는 PSC에 바인딩되었다고 할 수 있다. 즉, 사용자는 PSC만 있으면 어떤 호스트에서도 스토리 지에 저장된 컨텐트를 재생할 수 있다.
도 6은 본 발명의 일실시예에 따라 호스트가 스토리지에 저장된 컨텐트를 재생하는 과정을 나타낸 순서도이다.
단계 601에서, 호스트는 사용자 인터페이스를 통해 스토리지 기기에 저장된 컨텐트에 대한 재생 요청을 수신한다.
단계 602에서, 호스트는 컨텐트 키 파일의 호스트 ID 또는 PSC ID를 확인하고, 이에 따라 자신의 비휘발성 메모리 또는 호스트에 접속된 PSC를 검색하여 해당 스토리지 정보 요소를 찾는다. 즉, 스토리지 ID 파일 또는 컨텐트 키 파일에 포함된 스토리지 ID를 인덱스 정보로 활용하여 해당 스토리지 정보 요소를 검색한다.
단계 603에서, 스토리지 ID가 일치하는 스토리지 정보 요소가 존재하는지 판단한다.
단계 604에서, 만약 해당 스토리지 정보 요소가 존재하지 않는 경우, 사용자에게 에러 메시지를 출력하고 종료한다.
단계 605에서, 만약 해당 스토리지 정보 요소가 있다면 스토리지 키를 스토리지 정보로부터 추출한다.
단계 606에서, 스토리지 키를 이용하여 컨텐트 키 파일에 포함된 컨텐트 키를 복호화한다.
단게 607에서, 복호화된 컨텐트 키를 이용하여 스토리지 기기에 저장된 컨텐트를 복호화한다.
단계 608에서, 복호화된 컨텐트를 재생한다.
도 7은 본 발명의 일실시예에 따라 스토리지에 저장된 컨텐트를 이동(move)시키는 과정을 나타낸 순서도이다. 즉, 본 실시예에서는 컨텐트가 바인딩된 기기는 변경되지 않으나, 컨텐트가 저장되는 스토리지 기기가 변경된다. 이 때, 컨텐트는 이하의 절차를 수행하는 호스트 또는 그 호스트에 접속된 PSC에 바인딩되어 있어야 한다.
단계 701에서, 호스트는 사용자 인터페이스를 통해 컨텐트를 제 1 스토리지 기기에서 제 2 스토리지 기기로 이동(move)하는 요청을 수신한다.
단계 702에서, 호스트는 제 2 스토리지 기기에 대한 스토리지 키인 제 2 스토리지 키를 검출하거나 새롭게 생성한다. 즉, 기존의 스토리지 정보에 제 2 스토리지 키가 있으면 해당 스토리지 정보 요소에서 제 2 스토리지 키를 추출하고, 그렇지 않으면 새로 생성한다.
단계 703에서, 호스트는 제 1 스토리지 키를 이용하여 제 1 스토리지의 컨텐트 키 파일에 포함된 컨텐트 키를 복호화한다. 제 1 스토리지 키는 호스트 내의 비휘발성 메모리 또는 호스트에 접속된 PSC로부터 추출될 수 있다.
단계 704에서, 호스트는 제 2 스토리지 키로 컨텐트 키를 암호화하고, 컨텐트 키 파일을 생성한다. 새롭게 생성된 컨텐트 키 파일은 제 1 스토리지 기기에 있던 컨텐트 키 파일에 비하여 스토리지 ID, 넌스, 복구 키, MAC 등이 달라지게 된다.
단계 705에서, 생성된 컨텐트 키 파일 및 암호화된 컨텐트를 제 2 스토리지 기기에 저장한다.
단계 706에서, 제 1 스토리지 기기에 저장된 컨텐트 키 파일 및 암호화된 컨텐트를 삭제한다.
도 8은 본 발명의 일실시예에 따른 호스트의 구조를 나타낸 도면이다.
도 8에 도시된 바와 같이, 본 발명의 일실시예에 따른 호스트(800)는 컨텐트 암호화부(801), PSC 제어부(802), 컨텐트 키 암호화부(803), 컨텐트 이동 제어부(804), 스토리지 제어부(805), 업데이트부(810), 스토리지 키 생성부(820), 재생부(830), 검색부(840) 및 스토리지 키 관리부(850)를 포함한다.
컨텐트 암호화부(801)는 컨텐트 키를 이용하여 컨텐트를 암호화한다.
컨텐트 키 암호화부(803)는 스토리지 기기(900)의 스토리지 키를 이용하여 컨텐트 키를 암호화한다.
스토리지 제어부(805)는 컨텐트 키 파일 및 암호화된 컨텐트를 스토리지 기기(900)에 저장한다.
PSC 제어부(802)는 PSC(1000)로부터 PSC가 스토리지 기기(900)에 대해 생성한 스토리지 키를 수신하고, 컨텐트를 PSC에 바인딩시키는 작업이 완료되면, 호스트(800)에서 그 스토리지 키를 삭제한다.
스토리지 키 생성부(820)는 스토리지 기기(900)가 접속되면 호스트(800)의 비휘발성 메모리(도시하지 않음)에 해당 스토리지 정보 요소가 존재하는지 판단한다. 만약 존재하면 해당 스토리지 정보 요소에서 스토리지 키를 추출하고, 그렇지 않은 경우에는 새롭게 생성한다.
스토리지 키 관리부(830)는 스토리지 키 생성부(830)가 생성한 스토리지 키 를 호스트(800)의 디바이스 키를 이용하여 암호화한 후, 비휘발성 메모리(도시하지 않음)에 저장한다.
업데이트부(810)는 호스트(800)에 바인딩된 컨텐트를 PSC에 바인딩시키거나, 또는 그 반대의 경우에 스토리지 기기(900)에 저장된 컨텐트 키 파일을 업데이트한다. 도 8에 도시된 바와 같이, 업데이트부(800)는 키 교체부(811), 컨텐트 키 암호화부(812), 컨텐트 키 복호화부(813) 및 스토리지 키 복호화부(814)를 포함한다.
우선, 스토리지 키 복호화부(814)는 호스트(800) 또는 PSC(1000)에 저장된 스토리지 키를 추출한다.
컨텐트 키 복호화부(813)는 컨텐트 키 파일에 포함된 컨텐트 키를 스토리지 키를 이용하여 복호화한다.
컨텐트 키 암호화부(812)는 컨텐트를 바인딩시킬 기기가 생성한 스토리지 키를 이용하여 컨텐트 키를 다시 암호화한다. 예를 들면, 호스트(800)에 바인딩되어 있던 컨텐트를 PSC에 바인딩시킨다고 가정할 때, 컨텐트 키 암호화부(812)는 PSC가 스토리지 기기(900)에 대하여 생성한 스토리지 키를 이용하여 컨텐트 키를 암호하한다.
키 교체부(811)는 컨텐트 키 파일에 포함된, 기존의 암호화된 컨텐트 키를 컨텐트 키 암호화부(812)가 암호화한 컨텐트 키로 교체한다.
검색부(840)는 사용자 인터페이스를 통해 스토리지 기기(900)의 컨텐트에 대한 재생 요청이 수신되면, 호스트(800)를 검색하거나 호스트(800)에 접속된 PSC(1000)에게 요청하여 스토리지 기기(900)에 대한 스토리지 키를 찾는다.
재생부(830)는 검색부(840)의 결과에 기초하여 스토리지 기기(900)의 컨텐트를 선택적으로 재생한다. 즉, 만약 스토리지 키가 발견되면, 스토리지 키를 이용하여 최종적으로 컨텐트를 복호화하고, 스토리지 키가 호스트(800) 및 PSC(1000) 어디에도 존재하지 않으면 에러 메시지를 출력한다.
컨텐트 이동 제어부(804)는 스토리지 기기(900)에 저장된 컨텐트의 이동을 제어한다. 즉, 컨텐트를 상기 제 1 스토리지 기기로부터 제 2 스토리지 기기로 이동(move)하는 명령이 수신되면, 제 1 스토리지 기기의 스토리지 키를 이용하여 암호화된 컨텐트 키를 복호화하고, 제 2 스토리지 기기의 스토리지 키로 상기 복호화된 컨텐트 키를 다시 암호화한다.
그리고 나서, 제 2 스토리지 기기의 스토리지 키로 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 새롭게 암호화된 컨텐트를 제 2 스토리지 기기에 저장한 후, 제 1 스토리지 기기에 저장된 컨텐트 키 파일 및 암호화된 컨텐트를 삭제한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한 다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1은 종래 기술에 따라 호스트가 컨텐트를 스토리지 기기에 저장하는 과정을 나타낸 순서도,
도 2a는 본 발명의 일실시예에 따라 호스트 및 스토리지에 저장된 정보의 구조를 나타낸 도면,
도 2b는 본 발명의 다른 실시예에 따라 호스트 및 스토리지에 저장된 정보의 구조를 나타낸 도면,
도 3은 본 발명의 일실시예에 따라 호스트가 컨텐트를 스토리지 기기에 저장하는 과정을 나타낸 순서도,
도 4는 본 발명의 일실시예에 따라 PSC에 바인딩된 컨텐트를 호스트에 바인딩시키는 과정을 나타낸 순서도,
도 5는 본 발명의 일실시예에 따라 호스트에 바인딩된 컨텐트를 PSC에 바인딩시키는 과정을 나타낸 순서도,
도 6은 본 발명의 일실시예에 따라 호스트가 스토리지에 저장된 컨텐트를 재생하는 과정을 나타낸 순서도,
도 7은 본 발명의 일실시예에 따라 스토리지에 저장된 컨텐트를 이동시키는과정을 나타낸 순서도,
도 8은 본 발명의 일실시예에 따른 호스트의 구조를 나타낸 도면이다.

Claims (25)

  1. 호스트가 디지털 컨텐트를 스토리지 기기에 저장하는 방법에 있어서,
    상기 컨텐트를 컨텐트 키로 암호화하는 단계;
    상기 스토리지 기기에 대한 고유한 키인 스토리지 키로서 상기 호스트에 접속된 휴대용 보안 장치가 생성한 제1 스토리지 키로 상기 컨텐트 키를 암호화하는 단계;
    상기 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 스토리지 기기에 저장하는 단계;
    상기 제1 스토리지 키를 상기 스토리지 기기에는 저장하지 않고 상기 휴대용 보안 장치에 저장하는 단계;
    상기 스토리지 기기에 대해 상기 호스트가 생성한 키인 제 2 스토리지 키가 상기 제1 스토리지 키를 대체하도록 상기 컨텐트 키 파일을 업데이트하는 단계;
    상기 호스트의 디바이스 키로 상기 제 2 스토리지 키를 암호화하는 단계; 및
    상기 암호화된 제 2 스토리지 키를 상기 호스트에 저장하는 단계를 포함하는 것을 특징으로 하는, 상기 호스트에 의해 수행되는, 디지털 컨텐트 저장 방법.
  2. 삭제
  3. 삭제
  4. 제 1항에 있어서,
    상기 업데이트하는 단계는,
    상기 제 1 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 단계;
    상기 복호화된 컨텐트 키를 상기 제 2 스토리지 키로 암호화하는 단계; 및
    상기 제 2 스토리지 키로 암호화된 컨텐트 키를 상기 제 1 스토리지 키로 암호화된 컨텐트 키와 교체하는 단계를 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  5. 호스트가 디지털 컨텐트를 스토리지 기기에 저장하는 방법에 있어서,
    상기 컨텐트를 컨텐트 키로 암호화하는 단계;
    상기 스토리지 기기에 대한 고유한 키인 스토리지 키로 상기 컨텐트 키를 암호화하는 단계;
    상기 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 스토리지 기기에 저장하는 단계; 및
    상기 스토리지 키를 상기 스토리지 기기에는 저장하지 않고 상기 호스트에 저장하는 단계를 포함하고,
    상기 스토리지 키는 상기 호스트가 생성한 키인 제 2 스토리지 키이며,
    상기 스토리지 키를 저장하는 단계는,
    상기 제 2 스토리지 키를 상기 호스트의 디바이스 키로 암호화하는 단계; 및
    상기 암호화된 제 2 스토리지 키를 상기 호스트에 저장하는 단계를 포함하는 것을 특징으로 하는, 상기 호스트에 의해 수행되는, 디지털 컨텐트 저장 방법.
  6. 제 5항에 있어서,
    상기 호스트에 접속한 휴대용 보안 장치로부터 상기 휴대용 보안 장치가 상기 스토리지 기기에 대하여 생성한 키인 제 1 스토리지 키를 수신하는 단계; 및
    상기 제 1 스토리지 키가 상기 제2 스토리지 키를 대체하도록 상기 컨텐트 키 파일을 업데이트하는 단계를 더 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  7. 제 6항에 있어서,
    상기 업데이트하는 단계는,
    상기 암호화된 제 2 스토리지 키를 상기 호스트의 디바이스 키를 이용하여 복호화하는 단계;
    상기 복호화된 제 2 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 단계;
    상기 복호화된 컨텐트 키를 상기 제 1 스토리지 키로 암호화하는 단계; 및
    상기 제 1 스토리지 키로 암호화된 컨텐트 키를 상기 제 2 스토리지 키로 암호화된 컨텐트 키와 교체하는 단계를 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  8. 제 5항에 있어서,
    상기 컨텐트에 대한 재생 요청이 수신되면, 상기 호스트에서 상기 제2 스토리지 키를 검색하는 단계; 및
    상기 검색 결과에 기초하여 상기 암호화된 컨텐트를 선택적으로 재생하는 단계를 더 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  9. 제 8항에 있어서,
    상기 재생하는 단계는,
    상기 검색 결과 상기 제2 스토리지 키가 발견되면, 상기 제2 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 단계; 및
    상기 복호화된 컨텐트 키를 이용하여 상기 암호화된 컨텐트를 복호화하는 단계를 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  10. 제5항에 있어서,
    상기 스토리지 기기는 제 1 스토리지 기기이며,
    상기 컨텐트를 상기 제 1 스토리지 기기로부터 제 2 스토리지 기기로 이동(move)하는 명령을 수신하는 단계;
    상기 제 2 스토리지 키를 이용하여 상기 암호화된 컨텐트 키를 복호화하는 단계;
    상기 제 2 스토리지 기기에 대한 스토리지 키인 제 1 스토리지 키로 상기 복호화된 컨텐트 키를 암호화하는 단계;
    상기 제 1 스토리지 키로 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 제 2 스토리지 기기에 저장하는 단계; 및
    상기 제 1 스토리지 기기에 저장된 컨텐트 키 파일 및 암호화된 컨텐트를 삭제하는 단계를 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  11. 제 5항에 있어서,
    상기 컨텐트 키 파일은 상기 컨텐트 키 파일의 무결성 검사를 위한 값을 더 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  12. 제 5항에 있어서,
    상기 컨텐트 키 파일은 상기 스토리지 키를 제3자의 공개 키 또는 상기 호스트의 공개 키로 암호화한 값인 복구 키를 더 포함하는 것을 특징으로 하는 디지털 컨텐트 저장 방법.
  13. 디지털 컨텐트를 스토리지 기기에 저장하는 호스트에 있어서,
    상기 컨텐트를 컨텐트 키로 암호화하는 컨텐트암호화부;
    상기 호스트에 접속된 스토리지 기기를 위한 고유한 키인 스토리지 키로서 상기 호스트에 접속된 휴대용 보안 장치가 생성한 제1 스토리지 키로 상기 컨텐트 키를 암호화하는 컨텐트키암호화부;
    상기 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 스토리지 기기에 저장하는 스토리지제어부;
    상기 제1 스토리지 키를 상기 스토리지 기기에는 저장하지 않고 상기 호스트 또는 상기 휴대용 보안 장치에 저장하는 스토리지키관리부;
    상기 스토리지 기기에 대해 상기 호스트가 생성한 키인 제 2 스토리지 키가 상기 제1 스토리지 키를 대체하도록 상기 컨텐트 키 파일을 업데이트하는 업데이트부를 포함하며,
    상기 스토리지키관리부는 상기 호스트의 디바이스 키로 상기 제 2 스토리지 키를 암호화하여 상기 호스트에 저장하는 것을 특징으로 하는 호스트 장치.
  14. 삭제
  15. 삭제
  16. 제 13항에 있어서,
    상기 업데이트부는,
    상기 제 1 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 컨텐트키복호화부;
    상기 복호화된 컨텐트 키를 상기 제 2 스토리지 키로 암호화하는 컨텐트키암호화부; 및
    상기 제 2 스토리지 키로 암호화된 컨텐트 키를 상기 제 1 스토리지 키로 암호화된 컨텐트 키와 교체하는 키교체부를 포함하는 것을 특징으로 하는 호스트 장치.
  17. 디지털 컨텐트를 스토리지 기기에 저장하는 호스트에 있어서,
    상기 컨텐트를 컨텐트 키로 암호화하는 컨텐트암호화부;
    상기 호스트에 접속된 스토리지 기기를 위한 고유한 키인 스토리지 키로 상기 컨텐트 키를 암호화하는 컨텐트키암호화부;
    상기 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 스토리지 기기에 저장하는 스토리지제어부; 및
    상기 스토리지 키를 상기 스토리지 기기에는 저장하지 않고 상기 호스트에 접속된 휴대용 보안 장치에 저장하는 스토리지키관리부를 포함하고,
    상기 스토리지 키는 상기 호스트가 생성한 키인 제 2 스토리지 키이며,
    상기 스토리지키관리부는 상기 제 2 스토리지 키를 상기 호스트의 디바이스 키로 암호화하여 상기 호스트에 저장하는 것을 특징으로 하는 호스트 장치.
  18. 제 17항에 있어서,
    상기 호스트에 접속한 휴대용 보안 장치가 상기 스토리지 기기에 대하여 생성한 키인 제 1 스토리지 키가 상기 제2 스토리지 키를 대체하도록 상기 컨텐트 키 파일을 업데이트하는 업데이트부를 더 포함하는 것을 특징으로 하는 호스트 장치.
  19. 제 18항에 있어서,
    상기 업데이트부는,
    상기 암호화된 제 2 스토리지 키를 상기 호스트의 디바이스 키를 이용하여 복호화하는 스토리지키복호화부;
    상기 복호화된 제 2 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하는 컨텐트키복호화부;
    상기 복호화된 컨텐트 키를 상기 제 1 스토리지 키로 암호화하는 컨텐트키암호화부; 및
    상기 제 1 스토리지 키로 암호화된 컨텐트 키를 상기 제 2 스토리지 키로 암호화된 컨텐트 키와 교체하는 키교체부를 포함하는 것을 특징으로 하는 호스트 장치.
  20. 제 17항에 있어서,
    상기 컨텐트에 대한 재생 요청이 수신되면, 상기 호스트에서 상기 제2 스토리지 키를 검색하는 검색부; 및
    상기 검색 결과에 기초하여 상기 암호화된 컨텐트를 선택적으로 재생하는 컨텐트재생부를 포함하는 것을 특징으로 하는 호스트 장치.
  21. 제 20항에 있어서,
    상기 컨텐트재생부는,
    상기 검색 결과 상기 제2 스토리지 키가 발견되면, 상기 제2 스토리지 키를 이용하여 상기 컨텐트 키 파일에 포함된 컨텐트 키를 복호화하며, 상기 복호화된 컨텐트 키를 이용하여 상기 암호화된 컨텐트를 복호화하는 것을 특징으로 하는 호스트 장치.
  22. 제 17항에 있어서,
    상기 스토리지 기기는 제 1 스토리지 기기이며,
    상기 컨텐트를 상기 제 1 스토리지 기기로부터 제 2 스토리지 기기로 이동(move)하는 명령이 수신되면, 상기 제 2 스토리지 키를 이용하여 상기 암호화된 컨텐트 키를 복호화하고, 상기 제 2 스토리지 기기에 대한 스토리지 키인 제 1 스토리지 키로 상기 복호화된 컨텐트 키를 암호화하며, 상기 제 1 스토리지 키로 암호화된 컨텐트 키를 포함하는 컨텐트 키 파일 및 상기 암호화된 컨텐트를 상기 제 2 스토리지 기기에 저장한 후, 상기 제 1 스토리지 기기에 저장된 컨텐트 키 파일 및 암호화된 컨텐트를 삭제하는 컨텐트이동제어부를 더 포함하는 것을 특징으로 하는 호스트 장치.
  23. 제 17항에 있어서,
    상기 컨텐트 키 파일은 상기 컨텐트 키 파일의 무결성 검사를 위한 값을 더포함하는 것을 특징으로 하는 호스트 장치.
  24. 제 17항에 있어서,
    상기 컨텐트 키 파일은 상기 스토리지 키를 제3자의 공개 키로 암호화한 값인 복구 키를 더 포함하는 것을 특징으로 하는 호스트 장치.
  25. 제 1항, 제4항 내지 제 12항 중 어느 한 항에 의한 방법을 실행하는 컴퓨터 프로그램을 기록한 기록 매체.
KR1020070135245A 2007-08-21 2007-12-21 디지털 컨텐트를 스토리지 기기에 저장하는 방법 및 이를위한 장치 KR101277261B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/194,860 US20090052670A1 (en) 2007-08-21 2008-08-20 Method and apparatus for storing digital content in storage device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US95697807P 2007-08-21 2007-08-21
US60/956,978 2007-08-21

Publications (2)

Publication Number Publication Date
KR20090019660A KR20090019660A (ko) 2009-02-25
KR101277261B1 true KR101277261B1 (ko) 2013-07-30

Family

ID=40687425

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070135245A KR101277261B1 (ko) 2007-08-21 2007-12-21 디지털 컨텐트를 스토리지 기기에 저장하는 방법 및 이를위한 장치

Country Status (1)

Country Link
KR (1) KR101277261B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101846191B1 (ko) 2011-09-21 2018-04-09 삼성전자주식회사 서버, 클라이언트 기기, 전송 스트림 생성 방법 및 전송 스트림 처리 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000062892A (ko) * 1999-03-15 2000-10-25 이데이 노부유끼 암호화된 데이터 처리 방법 및 암호화된 데이터 전달 장치
KR20060002099A (ko) * 2004-07-01 2006-01-09 삼성전자주식회사 암호화 모듈을 포함하는 멀티미디어 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000062892A (ko) * 1999-03-15 2000-10-25 이데이 노부유끼 암호화된 데이터 처리 방법 및 암호화된 데이터 전달 장치
KR20060002099A (ko) * 2004-07-01 2006-01-09 삼성전자주식회사 암호화 모듈을 포함하는 멀티미디어 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101846191B1 (ko) 2011-09-21 2018-04-09 삼성전자주식회사 서버, 클라이언트 기기, 전송 스트림 생성 방법 및 전송 스트림 처리 방법

Also Published As

Publication number Publication date
KR20090019660A (ko) 2009-02-25

Similar Documents

Publication Publication Date Title
US20090052670A1 (en) Method and apparatus for storing digital content in storage device
KR100713046B1 (ko) 라이센스 이동 장치 및 프로그램
US11238165B2 (en) File encryption method, file decryption method, electronic device, and storage medium
JP4895845B2 (ja) 携帯用格納装置および携帯用格納装置のデータ管理方法
US7957535B2 (en) Data storing method, data playback method, data recording device, data playback device, and recording medium
JP4701175B2 (ja) 記録媒体並びに記録媒体に情報を記録する記録装置及び記録方法
JP4327865B2 (ja) コンテンツ処理装置、暗号処理方法及びプログラム
JP4792876B2 (ja) 情報処理装置及び情報処理方法
CN1848271B (zh) 信息处理装置和方法
JP2000311114A (ja) コンピュータシステムおよびコンテンツ保護方法
KR20010014639A (ko) 콘텐츠 관리 방법 및 콘텐츠 관리 장치
US8234718B2 (en) Method and apparatus for forbidding use of digital content against copy control information
JP2008035397A (ja) 暗号情報処理方法および暗号情報処理装置
US7706664B2 (en) Apparatus, method, and program product for recording and reproducing contents
JP2006020154A (ja) コンテンツ管理方法及びコンテンツ管理用プログラム、並びに電子機器
JP2006172147A (ja) コンテンツ保護方法及びその方法を用いた情報記録再生装置
JP4560086B2 (ja) コンテンツデータ記録再生装置
KR101277261B1 (ko) 디지털 컨텐트를 스토리지 기기에 저장하는 방법 및 이를위한 장치
US20080226079A1 (en) Method and apparatus for conditionally decrypting content
JP2005507195A (ja) エンティティ・ロックされたセキュア・レジストリを用いて素材にアクセスする装置及び方法
JP4894970B2 (ja) 情報処理装置
KR101177111B1 (ko) 복사 제어 정보에 따르지 않는 디지털 컨텐트의 사용을방지하는 방법 및 이를 위한 장치
JP2005011105A (ja) 再生装置、暗号化記録装置及びプログラム
RU2273101C2 (ru) Система и способ управления воспроизведением аудиоданных с устройством редактирования и носителем записи
JP2006197303A (ja) 鍵記録媒体及び再生装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160530

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180530

Year of fee payment: 6