KR20070015204A - 중대형 시나리오 및 낮은 사용자측 요구를 위한 멀티캐스트키 발행 방식 - Google Patents
중대형 시나리오 및 낮은 사용자측 요구를 위한 멀티캐스트키 발행 방식 Download PDFInfo
- Publication number
- KR20070015204A KR20070015204A KR1020067024156A KR20067024156A KR20070015204A KR 20070015204 A KR20070015204 A KR 20070015204A KR 1020067024156 A KR1020067024156 A KR 1020067024156A KR 20067024156 A KR20067024156 A KR 20067024156A KR 20070015204 A KR20070015204 A KR 20070015204A
- Authority
- KR
- South Korea
- Prior art keywords
- key
- keys
- receiver
- address
- group
- Prior art date
Links
- 230000007717 exclusion Effects 0.000 claims abstract description 68
- 238000000034 method Methods 0.000 claims description 49
- 230000005540 biological transmission Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 21
- 230000008685 targeting Effects 0.000 claims 1
- 238000013475 authorization Methods 0.000 abstract 2
- 230000001939 inductive effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 240000006829 Ficus sundaica Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001784 detoxification Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/601—Broadcast encryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
Abstract
본 발명에 따른 시스템은 그룹 키(GK)와 어드레스 키(Xj,Yj,Zj)를 제공하기 위한 키 제공 수단(24)을 구비한 적어도 하나의 발신기(S)를 포함한다. 복수의 수신기(r) 각각은 개별 수신기 어드레스 키 집합 및 그룹 키를 액세스하기 위한 액세스 수단(42,50)을 구비한다. 그룹키들은 같은 그룹의 모든 수신기에 대해 같다. 각 수신기 어드레스 키 집합은 어드레스 키의 베이스 집합의 서브셋이다. 수신기 어드레스 키 집합은 동일한 그룹의 수신기 모든 쌍에 대해 각 쌍마다 다르다. 각 개별 수신기에 대해, 하나 이상의 제외키(X,Y,Z)가 있으며, 이는 어드레스 키의 수신기 집합에 포함되지 않는다. 시스템은 각 수신기에 대한 인증 정보를 저장하는 인증 저장 수단(30)을 포함한다. 암호화 수단(24)은 메시지(mk)로부터 복수의 암호화된 메시지(mk*)를 생성하는데 사용된다. 각 암호화된 메시지(mk*)는 키의 조합 중에 모든 키를 사용하여 오직 해독될 수 있도록 키의 조합으로 암호화된다. 각 암호화된 메시지(mk*)는 수신기의 한 그룹을 대상으로 하며, 조합은 해당 그룹의 그룹키를 포함한다. 비인증된 수신기를 제외하기 위해, 조합은 그룹의 비-인증된 수신기의 하나 이상의 제외키를 더 포함한다.
Description
본 발명은 메시지의 선택적 멀티캐스트에 대한 시스템, 방송 시스템 및 선택적 멀티캐스트에 대한 방법에 관한 것이다.
기본 데이터 전송 시스템에서, 데이터는 채널을 통해 발신기로부터 복수의 수신기로 전송된다. 데이터 전송에 사용된 물리적 채널은 본 발명의 범위 밖이며, 데이터 전송 방법의 임의의 알려진 형태 및 매체의 임의의 유형을 포함할 수 있다. 본 개시에서 다루어진 이슈는 복수의 수신기에 선택적으로 데이터를 전송하고, 데이터의 수신으로부터 다른 수신기를 제외하는 방법이다. 이 선택성은 이 작업을 위해 특히 적응된 암호화 방식에 의해 달성된다.
발신기로부터 복수의 수신기로의 데이터 전송은 "멀티캐스트" 또는 "포인트-투-멀티포인트" 전송이라고 한다. 선택적 멀티캐스트 전송은 유료-TV와 같은 영역에서 이미 응용되었다. 그러나, 이동 통신뿐만 아니라 인터넷 통신에서조차 선택적 멀티캐스트를 이용할 수 있다.
방송 시스템에서, 채널에 대해 전송된 데이터는 스크램블링되며, 데이터를 디스크램블링하기 위한 필요한 핵심 정보(본 명세서에서 "멀티캐스트 키"라 함)는 수신기 사이에 배포되어서, 원하는 선택성(오직 인증된 수신기만이 메시지를 해독할 수 있으며 비인증된 수신기들은 해독할 수 없음)이 달성된다. 암호화가 채용됨으로써, 이들 시스템들은 방송 애플리케이션에 매우 적합되며, 채널 및 전송 방법은 수신기의 수를 제한하지 않는다.
그러나, 이 방법 자체는 멤버십 변경에 대해 그다지 유연하지 않다. 이전에 인증된 수신기가 멀티캐스트 그룹을 떠난 경우, 이전에 사용된 멀티캐스트 키(공유 암호)는 변경되어야만 하므로, 추가적 전송은 제외된 수신기에 대해 더 이상 판독가능하지 않다. 새로운 멀티캐스트 키는 나머지 인증된 수신기에만 안전하고 선택적으로 전송되어야 한다. 시청후 요금지불 시스템(pay-per-view systems)을 포함하는 유료-TV와 같은, 일부 애플리케이션에서, 멤버십은 매우 동적일 수 있다. 이들 애플리케이션에 대해, 필요한 키 변화와 관련된 오버헤드는 작게 유지되어야 한다. 특히 중간 수의 수신기(예, 100 내지 100,000)를 가진 멀티캐스트 또는 방송 시스템에서, 더욱이, 더 많은 수의 수신기(예, 10,000 이상)를 가진 멀티캐스트 시스템에 대해, 대역폭 요구는 매우 중요하다. 게다가, 수신기 측에서, 특히 많은 수의 수신기를 가진 대형 시스템에서, 간단하고 저렴한 하드웨어를 사용할 수 있는 것은 매우 바람직하다. 따라서, 멀티캐스트 시스템의 다른 중요한 파라미터들은 수신기 측 상의 메모리 소비 및 계산상 노력이다.
전술한 문제를 다루는 선택적 데이터 전송을 위한 시스템의 일례는 US-A-6049878에 제공된다. 시스템은 발신기 및 다수의 수신기를 포함한다. 각 수신기에서, 복수의 키들은 액세스가능하다. 멀티캐스트 키(본 명세서에서는, TEK(Traffic Encryption Key)라 함)는 발신기와 모든 다른 수신기와 공유된다. 추가적으로, 각 수신기는 복수의 키 암호화 키(KEK)를 보유한다. 시스템의 논리 구조는 이진 트리의 시스템과 같으며, 발신기는 루트(root)이고 수신기는 리프(leaves)이다. 각 가지는 루트부터 리프로의 경로로 배열된 키를 보유한다.
중지 작동(leave operation), 즉 수신기가 데이터 수신을 더 이상 인증받지 못하는 경우, 중지 발신기로의 경로의 모든 키는 아래에서 위로 변경된다. 멀티캐스트 키(TEK)는 이후 중지 수신기를 제외하도록 변경된다. 더욱이 트래픽(traffic)은 새롭고, 변경된 TEK를 사용하여 스크램블링되며, 이는 더 이상 중지 수신기가 판독할 수 없다.
US-A-6049878에 개시된 시스템과 방법은 중지 작동의 경우 요구되는 대역폭을 감소시키는데 성공한다. 그러나, 모든 중지 작동에 대해, 여전히 논리 트리의 완전한 경로의 재암호화(re-keying)는 필요하다.
1999년 6월, "멀티캐스트를 위한 키 관리: 이슈 및 아키텍처"라는 제목의, 인터넷 엔지니어링 태스크 포스(IETF; Internet Engineering Task Force)에 의해 발행된 RFC2627은, 멀티캐스트 그룹에 대한 다양한 아키텍처에 관해 논의한다. 동적 멀티캐스트 그룹에 대한 대역폭 및 저장 요건의 특정한 문제는 원격 회의(teleconferencing) 및 분산된 게임(distributed gaming)과 같은 애플리케이션에 대해 논의된다. 권고된 아키텍처는, US-A-6049878에서 제안된 것과 같은, 계층적 트리이다. 대안적인 아키텍처로서, 발신기 및 수신기 사이의 각 쌍마다의 키 교환이 제안되며, 발신기는 각 수신기를 구비한 디피-헬맨 프로토콜(Diffie-Hellman protocol)에 따라 공적 키 교환을 수행하며, 암호화된 형태로 멀티캐스트 키를 전송하는데 사용된 개별 암호화 키(KEK)의 확립을 허용한다. 이러한 기본 아키텍처의 정렬에서, 보충적 변수라고 하는, 다른 집합의 키는 수신기 사이에 배포된다. RFC2627에서 모든 수신기들은 그 자체를 제외하고, 모든 보충적인 변수를 수신한다. 따라서 이전 멀티캐스트 키 및 제외될 수신기의 보충적인 변수에 기초한 새로운 멀티캐스트 키를 생성함으로써 멀티캐스트 그룹으로부터 개별 수신기를 제외할 수 있다.
도 1은 본 발명에 따른 방송 시스템의 일 실시예의 상징적 표시를 도시한 도면.
도 2는 도 1에 도시된 시스템의 발신기의 상징적 표시를 도시한 도면.
도 2a는 도 2로부터 발신기의 처리 유닛의 제 1 실시예의 상징적 표시를 도시한 도면.
도 2b는 도 2로부터 발신기의 처리 유닛의 제 2 실시예의 상징적 표시를 도시한 도면.
도 3은 처리 유닛을 구비한, 도 1에서 수신기의 상징적 표시를 도시한 도면.
도 3a는 수신기의 처리 유닛의 제 1 실시예의 상징적 표시를 도시한 도면.
도 3b는 수신기의 처리 유닛의 제 2 실시예의 상징적 표시를 도시한 도면.
도 4는 도 1의 방송 시스템 내의 키 분배 시스템의 상징적 표시를 도시한 도면.
도 5는 베이스 2에 대한 수체계 내에서의 선택 키 표시 자리수를 나타내는 표.
도 6은 발행 방식의 제 1 실시예를 나타내는 표.
도 7은 임시 어드레스 키의 집합을 나타내는 표.
도 8은 선택키로 암호화된 임시 어드레스 키를 상징적 표시로 도시한 도면.
도 9는 발행 방식의 제 1 실시예에 따른 어드레스 키 분배표.
도 10은 결합 벡터의 상징적 표시를 도시한 도면.
도 11a 내지 도 11c는 멀티캐스트 키의 암호화된 버전의 상징적 표시를 도시한 도면.
도 12a 내지 도 12c는 멀티캐스트 키를 포함하는 암호화된 메시지의 상징적 표시를 도시한 도면.
도 13a 및 도 13b는 도 12a 내지 도 12c로부터 암호화된 패키지의 처리의 두 가지 예의 상징적 표시를 도시한 도면.
도 14는 본 발명의 제 2 실시예에 따른 베이스 2에 대한 수체계에서의 자리수를 나타내는 선택키를 가진 2개의 표.
도 15a 및 도 15b는 그룹과 하위 그룹을 가진 본 발명의 제 2 실시예에 따른 발행 방식의 상징적 표시를 도시한 도면.
도 16a는 제 1 선택키로 암호화된 제 1 중간키의 상징적 표시를 도시한 도면.
도 16b는 제 2 선택키로 암호화된 제 2 중간키의 상징적 표시를 도시한 도면.
도 17은 보조 키의 상징적 표시를 도시한 도면.
도 18은 제 2 실시예에 따른 어드레스 키 배분표.
도 19는 결합 벡터의 상징적인 표시를 도시한 도면.
도 20은 제외된 수신기의 표.
도 21은 암호화된 멀티캐스트 키의 상징적인 표시를 도시한 도면.
도 22는 멀티캐스트 키를 포함하는 암호화된 메시지의 상징적인 표시를 도시한 도면.
도 23a 및 도 23b는 도 22로부터 암호화된 메시지의 해독의 상징적인 표시를 도시한 도면.
본 발명의 목적은 메시지의 선택적 멀티캐스트를 위한 시스템, 방송 시스템 및 중간 또는 많은 수의 수신기에 대해 특히 적합한 메시지의 선택적 멀티캐스트를 위한 방법을 제안한다.
본 발명에 따라, 이 목적은 청구항 제 1항에 따른 멀티캐스트 시스템, 청구항 제 15항에 따른 방송 시스템 및 청구항 제 16항에 따른 방법에 의해 해결된다. 종속 청구항들은 본 발명의 바람직한 실시예에 관한 것이다.
본 발명에 따른 시스템은 적어도 하나의 발신기와 복수의 수신기를 포함한다. 보안적 멀티캐스트의 다음 논의가 발신기로부터 수신기로의 일방 통신으로 제한된다고 해도, 이는 확실히 후방 채널의 가능성, 즉 이후 통신동안 발신기 및 수신기 역할의 가능한 역전을 배제하지 않는 점을 주지해야 한다.
이 시스템은 암호화의 사용에 의한 선택적 멀티캐스트를 허용한다. 그룹 키의 베이스 집합 및 어드레스 키의 베이스 집합을 저장하는 키 저장 수단들은 발신기와 연관되는데, 즉 발신기에 배치되거나 발신기에 의해 액세스가능하다. 더욱이, 각 수신기는, 키의 개별 수신기 집합을 액세스하기 위해, 액세스 수단(즉, 저장 또는 수신을 통해, 즉 수신기가 키를 액세스하도록 적합된 수단)을 구비한다. 수신기들은 복수의 그룹의 부재이다. 개별 수신기의 키 집합은 한 편으로는 수신기 어드레스 키 집합, 그리고 다른 한 편으로는 하나 이상의 그룹 키를 포함한다. 동일한 그룹 내의 모든 수신기들은 동일한 그룹 키에 액세스할 수 있지만, 다른 수신기 어드레스 키 집합을 구비한다. 각 수신기 어드레스 키 집합은 발신기에서 액세스가능한 어드레스 키의 베이스 집합의 서브셋이다.
각 개별 수신기에 대해, 하나 이상의 제외키가 존재한다. 제외키는 어드레스 키의 베이스 집합 중 한 키이며, 이는 개별 수신기의 키 집합에 포함되지 않는다. 제외키를 가진 메시지의 암호화는 이 메시지, 따라서 용어를 수신하는 것으로부터 대응 수신기를 배제한다.
시스템에 추가적으로 포함된 것은 인증 저장 수단이며, 이는 인증되고/되거나 비-인증된 수신기에 관한 인증 정보를 저장할 수 있다. 선택적 멀티캐스트의 현재 문맥에서, 인증된 수신기는 메시지를 수신하는 한편, 비-인증된 수신기들은 이 메시지를 수신하지 않아야 한다.
선택적 멀티캐스트는 전송될 메시지로부터 복수의 암호화된 메시지를 생성하기 위해 암호화 수단을 사용함으로써, 그리고 이들 암호화된 메시지들을 전송함으로써 수행된다. 암호화된 메시지들은 각각 키의 조합으로 암호화된다. 이들 키들은 AND-관계인데, 즉, 메시지는 조합 중의 모든 키들이 알려진 경우 오직 해독될 수 있다. 멀티캐스트 키를 가진 이러한 암호화 방법의 예는 이하 계속 논의될 것이다.
각 암호화된 메시지들은 수신기의 대상 그룹을 대상으로 한다. 한 그룹에 대해 복수의 메시지가 존재할 수 있는 한편, 각 그룹의 수신기에 대해 오직 하나의 암호화된 메시지가 있는 것이 바람직하다. 대상 그룹의 멤버만이 메시지를 수신함(또는, 더 정확하게, 이를 해독할 수 있고 클리어 텍스트를 수신할 수 있다는 것)을 보장하기 위해, 인가된 키 조합은 적어도 하나, 바람직하게는 대상 그룹의 모든 그룹 키들을 포함한다.
각 그룹 내에서, 오직 인증된 수신기들의 클리어 텍스트 메시지를 수신한다는 것을 보장하기 위해, 인가된 조합은 대상 그룹 내에 비-인증된 수신기의 제외키를 포함한다.
따라서, 본 발명에 따른 시스템 및 방법은 여러 그룹 내의 대다수의 수신기들로의 메시지의 선택적인 멀티캐스트를 허용한다. 사용된 암호화는 다른 암호화된 메시지의 키 조합의 조심스러운 선택에 의해 오직 인증된 수신기만이 메시지를 수신할 수 있음을 보장한다. 바람직한 실시예와 연관하여 도시되는 바와 같이, 이는 매우 효과적인 해결책이며, 이는 선택적 멀티캐스트에 필요한 대역폭을 최소화하는 것을 허용하며 저장 및 계산상의 요구에 있어서 낮은 수신기 측 요건을 발생시킨다.
본 발명에 따른 방송 시스템에서, 선택적 멀티캐스트에 대한 위의 시스템 및 방법은 스크램블링 키를 선택적으로 전송하는데 사용된다. 스크램블링 키는 컨텐츠 메시지를 스크램블링하는데 사용되며, 이는 이후 스크램블링 키에 액세스할 수 있는 수신기에 의해 디스크램블링될 수 있다. 현재 문맥에서, "스크램블링"이라는 용어는 임의의 종류의 암호화에 관한 것이며, 블록 암호화(cipher)인 것이 바람직하다. "스크램블링"이라는 용어는 컨텐츠 메시지의 스크램블링과 멀티캐스트 메시지의 전술한 암호화를 구별하기 위해 "암호화(encrypting)" 대신에 사용된다.
본 발명은 넓은 범위의 애플리케이션에 응용가능함이 주지되어야 한다. 발신기에서 수신기로 전송에 사용된 채널은 임의의 유형의 전송 방법 및/또는 매체일 수 있다. 또한, 실제로, 데이터를 암호화하기 위해 키를 사용하는 임의의 암호화 방법은 사용될 수 있다. 이는 구체적으로 대칭적 및 비대칭적 암호화 방법 모두의 사용을 의미한다. 대칭적 암호화 방법은 암호화 및 해독을 위한 같은 키를 사용하는 한편, 비대칭적 암호화 방법에서는, "키"는 실제로 키의 쌍이며, 이들의 한 키 부분(대개 "공개" 키라고 함)은 암호화를 위해 사용되고 다른 부분("비밀 키")은 해독을 위해 사용된다. 이들 유형의 방법들은 모두 본 발명에 따른 시스템에서 사용될 수 있다. 시스템은 또한 특정 수의 수신기로 제한되지 않는다. 명백하게, 시스템의 이점은 예컨대, 1000개 이상의 더 많은 수의 수신기를 구비한 시스템에서 더욱 명백해진다.
본 발명의 바람직한 실시예에 따라, 복수의 수신기 어드레스 키 집합이 있으며, 이들은 다른 그룹의 수신기에 속하고, 동일하다. 이는 발신기에 저장되어야 하는 어드레스 베이스 키의 수를 제한한다. 동일한 수신기 어드레스 키를 구비한 수신기를 구비하면 선택성을 배제하지 않는데, 그 이유는 수신기가 다른 그룹에 속하기 때문이다. 일부의 동일한 수신기 어드레스 키 집합이 있을 뿐만 아니라, 복수의 그룹, 더 바람직한 다수의 그룹 및 가장 바람직한 모든 그룹의 모든 수신기들은 동일한 수신기 어드레스 키 집합을 구비하는 것이 더 바람직하다. 이것이 한편으로, 시스템 내의 암호화 키의 전체 수를 상당히 감소시키는 한편, 이는 또한 단일한 암호화된 메시지를 전송할 수 있는 추가적 이점을 제공하며, 단일한 암호화된 메시지는 복수의 그룹 중 하나 이상의 수신기로 해독될 수 있다.
전술한 바와 같이, 키 조합으로의 암호화는 모든 키 조합들이 메시지를 해독하는데 필요하도록 수행된다. 암호화를 구현하기 위한 다른 가능성이 있으며, 키들은 따라서 AND-형태로 연결된다. 한 가지 가능한 방법은, 조합 키들 중 암호화된 키를 생성하는 것, 즉, 키 상의 수학적 연산을 사용하는 것이다. 예컨대, 이진수로 표시될 수 있는 2개의 키들은, 조합키를 얻기 위해 XOR될 수 있다. 조합키를 가진 암호화는 원래 키 모두가 알려진 경우 오직 역전될 수 있을 것이다.
그러나, 복수의 키로 귀납적 암호화로서 암호화를 구현하는 것이 바람직하다. 문맥상 "키 연쇄화(key chaining)"라고도 하는, 이 귀납적 암호화는, 제 1 암호화된 데이터를 얻기 위해, 제 2 암호화된 데이터 등을 얻기 위해 제 2 키를 사용하여 제 1 암호화된 데이터를 암호화하기 위한 제 1 키로 데이터를 암호화하는 단계를 포함한다. 명백하게, 다수의 키로 귀납적 암호화 이후의 최종적으로 얻어진 결과는 동일한 키로 귀납적 해독 이후에 (순서가 중요한 경우, 일반적으로, 역순으로)판독될 수 있다. 대응하는 귀납적인 암호화된 데이터를 판독하기 위해, 귀납적 암호화 프로세스에서 사용된 키의 완전한 조합은 수신기에게 이용가능해야 한다.
본 발명의 추가적 발전에 따라, 시스템은 어드레스 키의 베이스를 생성하기 위한 어드레스 키 생성 수단을 포함한다. 시스템은 생성된 어드레스 키를 수신기에 선택적으로 전송하기 위한 선택적 키 전송 수단을 더 포함한다. 수신기에서 액세스 수단은 이후 전송된 어드레스 키를 수신하기 위해 수신 수단을 포함한다. 이는 임시 어드레스 키를 사용하는 것을 허용하며, 이는 제한된 수의 메시지에 대해서만 사용되는 것이 바람직하다. 사실상, 어드레스 키는 적은 수의 메시지(예컨대, 10 미만)의 전송에 대해서만 사용된다. 어드레스 키는 또한 오직 단일한 메시지를 전송하기 위해 사용될 수 있다. 어드레스 키의 잦은 변화는 개별 어드레스 키를 교환하는, 수신기의 연합에 의한 시스템 공격 가능성을 최소화한다.
새로 생성된 어드레스 키의 선택적 제출을 위해, 선택 베이스 키 집합에 포함된, 암호화 키의 추가적 집합을 사용하는 것이 바람직하다. 선택 베이스 키 집합의 서브-집합인 대응 수신기 선택 키 집합은, 각 수신기에 저장되는 것이 바람직하다. 동일한 그룹의 수신기의 선택키들은 각 쌍마다 서로 포함되지 않는다. 그러나, 다른 그룹의 수신기의 수신기 선택 키 집합들은 동일한 것이 바람직하다. 이는 복수의 그룹, 또는 다수의 그룹의 모든 수신기들을 위한 것이 바람직하며, 모든 그룹을 위한 것이 가장 바람직하다. 전술한 키 분배를 사용하여, 선택키 결합에 의해 전송될 수신기 어드레스 키를 암호화함으로써 선택 키전송을 달성할 수 있다. 본 명세서에서, 동일한 수신기 선택 키 집합을 구비한 수신기들은 어드레스 키의 동일한 집합을 수신한다. 본 발명에 따른 시스템 및 방법에 대한 중요한 이슈는 선택된 키 발행 방식, 즉, 수신기 간의 그룹 키, 어드레스 키 및/또는 선택키의 분배이다. 바람직한 실시예를 참조하여 이하 더 설명되는 것처럼, 바람직한 2개의 특정 발행 방식이 있는데, 하나는 중간 크기의 시나리오(100 내지 100,000 정도의 수신기 수) 그리고 다른 것은 큰 시나리오(10,000이상, 바람직하게는 100,000이상인 수신기의 수)이다.
중간 크기의 시나리오에 적합한, 제 1 바람직한 발생 방식에서, 각 수신기에 대한 오직 하나의 제외키만이 있다. 제외키는 제외키의 "소유자", 즉 이 키를 사용함으로써 제외될 수 있는 수신기를 제외하고, 동일한 그룹의 모든 수신기의 수신기 어드레스 키 집합에 포함된다. 따라서, 특정 수신기의 제외키를 가진 메시지의 암호화는 그룹 내의 모든 수신기들이, 제외된 수신기를 제외하고, 메시지를 해독하는 것이 가능하게 한다. 마찬가지로, 전술한 바와 같은, AND-방식으로 제외키의 결합을 사용한 암호화는, 그룹 내의 모든 수신기들이, 제외된 수신기를 제외하고, 메시지를 해독하는 것을 가능케 할 것이다. 바람직하고 매우 효율적인 발행 방식에서, 정수 기초수 b 및 차원수 d는 선택된다. 기초 b는 2보다 크거나 같고 일반적으로 16보다 작거나 같다. 차원수 d는 1보다 크거나 같고 일반적으로 2 내지 20의 범위에 있다. b와 d의 선택에 관한 자세한 내용은 바람직한 실시예에 관해 논의될 것이다. 각 그룹은 최대 bd개의 수신기를 포함한다. 물론, 가능하게 마지막 것을 제외하고, 그룹은 채워지는 것이 바람직하다. b*d개의 선택키가 있으며, 이들 중에서 각 수신기 집합은 (b-1)*d개를 포함한다. 이들 (b-1)*d개의 선택 키들은 기초수 b에 대한 수체계에서 수신기 수(r)를 나타내고, b개의 미리 결정된 선택 키들 중 하나의 표시를 각 자리수에 할당함으로써 결정된다. 이러한 발행 방식은 매우 간단하고 수학적으로 정확한 방법으로 동일한 그룹 내의 다른 수신기의 수신기 선택 키 집합이 적어도 하나의 선택 키만큼 다른 것을 보장한다.
중간 시나리오 발행 방식의 경우, 어드레스 베이스 키 집합은 bd개의 어드레스 키, 즉 그룹 내의 수신기 수와 같은 어드레스 키를 포함하는 것이 더 바람직하다. 전술한 선택 키 발생 방식을 사용하여, 바람직한 어드레스 키 배분은 각 어드레스 키를 d번 전송하여 달성될 수 있으며, 매번 선택키의 전송 조합 중에 다른 하나로 암호화된다. 이러한 전송 조합은 기초수 b에 대한 수체계 내의 수 표시에 따라 다시 선택된다. 전술한 선택키 발행 방식과 함께, 이는 각 수신기는, 이후 제외키가 되는 하나를 제외한 모든 어드레스 키를 수신함을 보장한다.
큰 시나리오를 위한 대안적인 발행 방식에서, 그룹 내의 각 수신기에 대해 적어도 2개의 제외키가 있다. 제외키의 각 조합은 해당 그룹 내에서 고유하다. 이는 그룹 내의 비-인증된 수신기를 정확하게 제외하는 것을 허용한다. 더욱이, 그룹들은 복수의 하위-그룹으로 하위분할되는 것이 바람직하다. 어드레스 키들은 따라서 제 1 어드레스 키와 제 2 어드레스 키로 분할된다. 동일한 하위-그룹 내의 수신기들은 동일한 제 1 어드레스 키를 갖지만, 다른 제 2 어드레스 키 집합을 갖는다. 이러한 추가적 하위분할은 그룹 내의 수신기의 의사 2-차원 어드레스 지정을 허용한다. 제 1 어드레스 키가 하위-그룹을 어드레스 지정하고 제 2 어드레스 키가 하위-그룹 내의 개별 수신기를 어드레스 지정하는, 제 1 및 제 2 어드레스 키를 사용함으로써, 어드레스 키의 전체 수는 상당히 감소된다.
대형 시나리오 발행 방식의 추가적 개발에 따라, 각 하위-그룹에 대해, 하나의 제외키 그리고 하위-그룹 내의 각 수신기에 대해, 하나의 위치 제외키가 있다. 다시, 용어 위치 제외키는 개별 수신기의 키 집합(제 2 어드레스 키) 및 개별 하위-그룹의 키 집합(제 1 어드레스 키)을 말하며, 대응하는 수신기/하위-그룹 키 집합에 포함되지 않지만, 나머지 수신기/하위-그룹 키 집합에 포함된 키를 지정한다. 그룹 내의 비-위임된 수신기의 제외를 위해, 제외키는 이제 비-인증된 수신기 위치 제외키와 하위-그룹 제외키로부터 계산된다. 제외키는 따라서 개별 수신기의 하위-그룹과 위치 제외키의 수학적 결합이다. 이는 단일 수신기를 정확하고 안전하게 제외하는 것을 허용한다. 대응하는 쌍의 제외키의 사용은 이 그룹 내의 해당 수신기의 2-차원 어드레스로 보일 수 있다.
바람직하게, 하위-그룹 제외키와 위치 제외키의 수학적 조합은 귀납적 지수화에 의해, 즉, 2개의 제외키중 하나를 가진 베이스의 지수화를 계산함으로써, 그리고 다른 제외키를 가진 결과의 추가적 지수화에 의해 계산된다. 바람직한 실시예의 논의동안 명백해지는 것처럼, 이는 디피-헬만 키 확립 절차에 대응한다. 특별한 상황 하에서, 즉, 제외키 각각을 가진 지수화의 개별 결과가 알려진 경우, 이러한 유형의 제외키의 수학적 결합은 2개의 제외키 중에 오직 하나만이 알려진 경우 역전될 수 있다(즉, 메시지가 해독된다). 그러므로, 이 방법은 OR-관계를 효과적으로 구현하여서, 메시지를 해독할 수 있도록 하기 위한 위치 제외키 또는 하위-그룹 제외키를 알기에 충분할 것이다. 따라서, 하나 또는 다른 하나도 보유하지 않는 비-인증된 수신기만이, 메시지를 암호해독할 수 없을 것이다.
대형 시나리오 발행 방식의 경우, 정수 기초수 b와 정수 차원수 d를 선택하는 것이 바람직하다. b는 2보다 크거나 같고, 일반적으로 16보다 작거나 같다. d는1보다 크거나 같고, 일반적으로 2와 20 사이이다. 각 그룹은 최대 b2d개의 수신기를 포함하고, bd개의 하위-그룹으로 분할되며, 각각은 bd개의 수신기를 갖는다. 여기에서 다시, 하위-그룹과 그룹(마지막 것 제외)은 최대까지 채워지는 것이 바람직하다. 선택 베이스 키 집합은 b*d 제 1 선택키 및 b*d 제 2 선택키와 함께, 2*b*d개의 선택키를 포함하고, 이들 중 각 수신기는 (b-1)*d개의 제 1 선택키와 (b-1)*d개의 제 2 선택키를 보유한다. 중간 시나리오 발행 방식에 대해 전술한 바와 같이, 각 수신기에 주어진 키의 조합은 기초수 b에 대해 수체계에서 수신기 수(r)의 표시에 따라 결정된다. 이러한 방법으로, 제 2 선택키의 조합은 기초수 b개의 수체계에서 하위-그룹 수 s의 표시에 따라 결정된다. 추가적 개발에서, bd개의 제 1 어드레스 키와 bd개의 제 2 어드레스 키를 가진 어드레스 기반 키 집합은 사용된다. 이들 어드레스 키 각각은 d-번 전송되며, 매번 선택키의 전송 조합에서 다른 하나로 암호화된다. 매체 시나리오 발행 방식에 대해 전술한 바와 같이, 전송 조합은 기초수 b에 대해 수체계에서 키의 수 t의 표시에 따라 선택된다. 이는 전술한 어드레스 키 발행 방식을 보장하며, 그룹 내의 모든 수신기에 대해 하나의 하위-그룹 제외키와 하나의 위치 제외키가 존재한다. 전술한 바와 같이, 개별 수신기가 키의 수신기 집합을 액세스하도록 허용하는, 본 발명에 따른 액세스 수단은 수신기에 위치한 저장 수단으로 구현될 필요가 없다. 대신에, 전술한 것처럼, 어드레스 키들은 그 자체가 발신기에서 수신기로 선택적으로 전송되는 것이 바람직하다. 어드레스 키를 우선 전송한 다음 암호화된 메시지를 전송할 수 있는 한편, 우선 암호화된 메시지를 전송한 다음 대응 어드레스 키를 전송하는 것이 바람직하다. 암호화된 메시지가 상당히 짧은 경우, 즉, 다수의 비트를 포함하지 않는 경우(예를 들어, 오직 멀티캐스트 키가 전송된 경우), 수신기가 암호화된 메시지들 중에서 하나를 저장하고(그들의 그룹으로 의도된 하나의 메시지), 이후 나중에 대응하는 어드레스 키를 수신하고, 이들을 저장하지 않고 해독하는 동안 사용하는 것이 더 쉽다.
다음에서, 본 발명의 실시예는 도면을 참조하여 설명될 것이다.
도 1은 본 발명의 일 실시예에 따른 기본 방송 시스템(10)을 도시한다. 시스템(10)은 발신기(S) 및 예로써, 다수의 수신기(R0,R1,R8,R9)를 포함한다. 발신기(S)는 채널(C)을 통해 수신기(R0,R1,R8,R9) 각각에 연결되는데, 즉 데이터를 수신기에 전송할 수 있다. 본 예시에서의 채널(C)은 발신기에서 수신기로 오직 단방향 통신만을 허용한다. 채널은 본래 발신기(S)로부터 전송된 데이터가 수신기(R0,R1,R8,R9) 각각에서 수신될 수 있는 것이다. 시스템(10)은 일반적인 예이며, 채널(C)은, 예를 들어 대기 상의 무선 방송, 컴퓨터 네트워크 내의 데이터 전송 또는 기타와 같은, 전송 방법 및 임의의 유형의 매체가 포함될 수 있음이 주지되어야 한다.
컨텐츠 소스(미도시)는 연속적으로 컨텐츠 데이터(F1,F2,F3...)를 방송 발신기(S)로 전달한다. 발신기(S)는, 연속적으로 멀티캐스트 키 생성기(미도시)에 의해 전송된 복수의 스크램블링 키(멀티캐스트 키)(m1,m2,m3,...)를 사용하여 스크램블링된 컨텐츠 데이터(12)로 컨텐츠 데이터를 스크램블링한다. 방송 발신기(S)는 연속적으로 이 스크램블링된 컨텐츠 데이터를 방송한다. 수신기(R0,R1,R8,R9)는 반면에 이하 설명되는 바와 같이 각각 디스크램블링 유닛 및 멀티캐스트 키 저장을 포함한다.
스크램블링 및 디스크램블링 작동에 대해 일반적으로 임의의 유형의 암호화 방법이 사용될 수 있다. 신속한 블록 암호화를 사용하는 것이 바람직하다. 이하 설명하는 예에서, 블록 크기와 키 크기가 모두 128 비트라고 가정한다.
방송 시스템(10)은, 예를 들어, 유료-TV 시스템일 수 있으며, TV 컨텐츠는 연속적으로 스크램블링된 형태로 방송되며 오직 가입 사용자(인증된 수신기)만이 컨텐츠를 볼 수 있어야 한다. 시스템은 매우 동적으로 적응되어서, 예컨대, 건당과금이 가능하다. 그러므로, 스크램블링 키(멀티캐스트 키)는 예를 들어, 매분과 같이 시간에 대해 종종 상당히 변화한다.
전송된 실제 TV 컨텐츠 데이터(F1,F2,F3)는 다른 시점에 유효한 멀티캐스트 키를 사용하여 연속적으로 스크램블링된다.
방송 발신기(Sb)의 스크램블링된 방송과 병렬로, 발신기(S)는 연속적으로 인증된 수신기에 언제라도 유효한 멀티캐스트 키를 분배한다.
도 2는 도 1로부터 발신기(S)의 상징적 표시를 도시한다. 발신기는 처리 유닛(14)을 포함하며, 이는 컨텐츠 데이터(F1,F2,F3)를 수신한다. 처리 유닛(14)은 데이터를 스크램블링하고, 전송 수단(16)의 사용을 통해 채널(C)에 대해 이를 방송하며, 이는, 예를 들어, 무선 전송기 또는 컴퓨터 네트워크 인터페이스와 같은, 임의의 유형의 방송 발신기가 될 수 있다. 처리 유닛은 또한 멀티캐스트 키를 생성하고 분배한다. 도 3은 일반적인 수신기(R)의 상징적 표시를 도시한다. 수신기(R)는 채널(C) 상의 데이터를 수신하기 위한 수신 수단(26)을 구비한다. 수신된 데이터는 처리 유닛(36)에서 처리된다.
발신기와 수신기 양자의 처리 유닛의 특정 구성은 특정 실시예에 따른다. 이하 설명되는 바와 같이, 도 2a, 도 3a는 제 1 실시예에 따른 처리 유닛의 세부 사항을 도시하며, 도 2b 및 도 3b는 제 2 실시예에 따른 처리 유닛의 세부 사항을 도시한다.
발신기(S)에서, 인증된 수신기 및 비-인증된 수신기에 대한 인증 정보는 이용가능하다. 다음에서, 2개의 실시예들은 설명될 것이며, 여기에서 발신기(S)의 처리 유닛(14)은 인증된 수신기(R)에서의 처리 유닛(36)이 데이터를 해독할 수 있지만, 비-인증된 수신기들은 해독할 수 없도록 컨텐츠 데이터(F1,F2,F3,...)를 암호화한다.
제 1 실시예
본 발명의 제 1 실시예는 대략 100 내지 최대 100,000개의 수신기를 구비한, 중간 크기의 시나리오를 대상으로 한다. 대응 시스템의 기본 구조는 도 4에 도시된다. 수신기들은 그룹(G0,G1,...)으로 분할된다. 각 수신기는 관련 키 메모리(50)를 구비한다. 발신기는 그룹 키 메모리(52) 및 선택 키 메모리(54)를 구비한다.
사용된 실제 암호화 알고리즘은 여기에서 더 설명되지 않을 것이다. 본 발명의 일 실시예에서, 실제로 당업자에게 알려진 모든 암호화 알고리즘은 사용될 수 있다. 일반적으로 다음 방식으로 암호화 및 해독 작동을 정의할 것이다.
암호화
Enc(K,M)=C
해독
Dec(K,C)=M
그룹 키 메모리(52)는 그룹 키(GK1,GK2,GK3,...)를 포함한다. 그룹키들은 특정 그룹으로 암호화된 전송을 유도하는데 사용된다. 각 그룹에 단일하고, 고유한 그룹키를 분배할 수 있는 한편, 도 4에 도시된 것처럼, 그룹 키 베이스 집합을 포함하며, 각 그룹의 멤버들은 동일하고, 고유한 이들 그룹 키들의 조합을 보유한다. 예를 들어, 도 4에서, 그룹(G0)의 멤버들은 모두 그룹키(GK1,GK2)를 보유하는 한편, G1의 멤버는 모두 GK1,GK3를 보유한다. 따라서, 예컨대, GK1과 GK2 모두로 귀납적으로 암호화된 메시지는 오직 그룹(G0)의 멤버에 의해 해독될 수 있다.
발신기(S)에서 선택 키 저장(54)에 저장된 선택키들은 선택키(SK0,SK1,...,SK5)의 베이스 집합을 형성한다. 각 그룹(G0,G1) 내에서, 각 수신기는 3개의 선택 키의 고유한 조합을 보유한다. 그러나, 다른 그룹 내에 수신기가 보유하는 선택키의 조합은 동일하며, 즉 제 1 수신기(R0)이며, 이는 제 1 그룹(G0)의 첫 번째 멤버이며, 그룹(G1)으로부터 제 1 수신기(R8)로서 그리고 임의의 추가 그룹으로부터 제 1 수신기로서 선택키의 동일한 집합을 보유한다.
일반적으로, 수신기의 전체수(N)에 대한 멀티캐스트 시스템을 확립하기 위해, 정수 b 및 d가 선택되며, 이때 b≥2는 기초수이며 d≥1는 차원수이다. 수신기는 크기 bd의 그룹으로 그룹화된다. 그룹 내의 선택키의 발행 방식(즉, 어떤 수신기가 어떤 키의 조합에 액세스할 수 있는지)은 기초 b에 대해 수체계 내의 수신기 수의 표시에 따라 결정된다. 발행 방식의 수학적 정의에 대해, 우리는 다음의 정의를 사용할 것이다.
N,N0이 각각 0이 없거나 0을 포함하는 자연수의 집합을 표시한다고 한다. 집합(S)에 대해, P(S)가 제곱 집합(S의 하위집합의 집합)을 표시한다고 하자. 다음 맵을 N0부터 P(N)으로 정의한다.
: 사전상 순서(lexicographical order)로 크기(g)의 N개의 모든 서브셋을 열거하라(이때 집합은 내림차 순으로 읽는다).
예 : g=2에 대해 이는 목록 {1,2},{1,3},{2,3},{1,4},{2,4},{3,4},{1,5},... 이것은 맵핑 을 정의한다(예에서: ={1,2}, ={1,3},...)
digiti(n): n≥0은 기초수 b에 대해 수체계에 제시된다고 하고 digiti(n)은 I 번째 자리수를 표시한다고 하자(오른쪽에서부터 계수하며, 0으로 시작), 예: b=3에 대해 digit2(15)=1이고 digit3(15)=0이다. 즉:
digiti(n):=이며, (%는 모듈로 연산(modulo operation을 표시함, 는 정수 끊음(truncation)이다)
: 이라고 하자.
이라고 하자(이 때 \는 집합차 연산을 표시). 는 주입수(injective)(구조에 의함)이며 및 은 모두 {0,...,bd-1}에서 P({1,...,b d})까지의 단사상(injective map)임을 주의한다.
이들 정의를 사용하여, 발행 방식은 이제 정의될 수 있다. 0에서 N-1까지의 지수(n)가 수신기에 고유하게 배정된 다음, 키 발행 방식은 다음 법칙에 의해 설명된다고 가정한다:
지수(n)를 가진 수신기는 인 모든 그룹키(GKi)와 인 모든 선택키(SKi)를 획득한다.
수신기에 관한 인증 정보는 결합 벡터로 요약되며, 이는 시스템 내의 모든 수신기에 대한 엔트리를 포함하고, 엔트리는 비-인증된 수신기에 대해 "0", 또는 인증된 수신기에 대해 "1"이다.
전술한 것과 같은 선택 및 그룹 키 발행 방식을 가진 시스템에서, 메시지(이 경우 멀티캐스트 키(m1,m2,m3,...)의 사본)는 다음 알고리즘을 사용함으로써 모든 인증된 수신기로 전성된다:
임의의 결합 벡터 의 경우, m 비트의 멀티캐스트 키(mk)를 다음과 같이 전송한다(모든 "전송"은 개방 채널에 대한 방송을 나타냄):
1. join0, join1,...joinN-1 전송;
2. bd개의 임의의 m-비트 시퀀스() 생성;
3. FOR DO
{
M ←mk;
FOR j=0...bd-1 DO
IF AND THEN ;
FOR DO(in increasing order)
;
Send M;
}
4. FOR DO
FOR DO(in increasing order)
Send ;
알고리즘은 사용자들을 크기(bd)의 그룹으로 나누는 것에 기초한다. 수신기에 영구적으로 저장된 그룹키(GK)와 선택키(SK) 외에도, 임시 어드레스 키로 작동하는 임의의 비트 시퀀스(Z)는 암호화를 위해 사용된다. 멀티캐스트 키의 사본은, 독점적이거나 그룹 내의 모든 비-결합 사용자에 대한 제외키를 구비한 비트와이즈(bitwise) 이후에 그리고 결과를 모든 대응하는 그룹키로 암호화한 이후, 각 그룹에 대해 개별적으로 전송된다. 어드레스 키(Zj)는 d번 전송되며, 매번 기초수 b에 대한 수체계 내의 j 자리수에 따라 선택키들 중 하나로 암호화된다.
지수(n)를 가진 수신기는 만약 joinn=1인 경우, 그리고 반드시 이 경우에만 방송된 스트림으로부터 mk를 재구성할 수 있다.
도 2a는 발신기(S)에서 처리 유닛(14)의 대응하는 구조를 도시한다. 멀티캐스트 키 생성기(20)는 연속적으로 멀티캐스트 키(m1,m2,m3,...)를 생성한다. 컨텐츠 데이터(F1,F2,F3,...)는 다른 시점에서 유효한 멀티캐스트 키를 사용하여 스크램블링 유닛(22)으로 스크램블된다. 스크램블된 컨텐츠 특성(F1*,F2*,F3*,...)은 방송된다.
병렬로, 멀티캐스트 키(m1,m2,m3,...)는 인증 저장 수단(30)으로부터 전송된 결합 정보에 따라 암호화 유닛(24)에 의해 암호화된다. 암호화된 멀티캐스트 키(m1 *,m2 *,m3 *,...)는 방송된다.
암호화 유닛(24)은 암호화 그룹 키(GK0,GK1,...) 및 어드레스 키(Z0,Z1,...)에 대해 사용되며, 이들은 어드레스 키 생성기(26)에 의해 새롭게 임의로 생성된 멀티캐스트 키의 각 암호화에 대한 것이다. 어드레스 키(Z0,Z1,...)는 멀티캐스트 키(예, 128 비트)와 같은 길이의 임의 비트 시퀀스이다. 이들 어드레스 키들은 선택 키 저장(54)으로부터 전송된 선택키(SK0,SK1,...)로 키 암호화 유닛(28)에 의해 암호화된다. 암호화된 어드레스 키(Z0*,Z1*,...)는 방송된다.
수신기 측에서, 방송 데이터는 수신되며, 인증된 수신기는 이로부터 컨텐츠 데이터 정보(F1,F2,F3,...)를 추출한다. 수신기(R)의 처리 유닛(36)의 대응 구조는 도 3a에 도시된다. 수신된 암호화된 어드레스 키(Z0*,Z1*,...)는, 선택 키 저장(50)으로부터 전송된, 이용가능한 선택키(SK0,SK1,...)를 사용하여, 키 해독 유닛(42)에서 해독된다. 따라서 해독된 어드레스 키(Z0,Z1,...)는 암호화된 멀티캐스트 키(m1 *,m2 *,m3 *,...)를 해독하기 위해 멀티캐스트 키 해독 유닛(40)에서 사용된다. 따라서 해독된 멀티캐스트 키(m1,m2,m3,...)는 스크램블된 컨텐츠 데이터(F1*,F2*,F3*)를 디스크램블하고 클리어텍스트 컨텐츠 데이터(F1,F2,F3...)를 획득하기 위해 디스크램블링 유닛(44)에서 사용된다.
수신기 측에서 결합 정보, 암호화된 어드레스 키 및 암호화된 멀티캐스트 키의 수신 및 해독은 다음 알고리즘에 따라 행해진다:
;
1. ;
2. Get (ignore all the other bits sent);
3. FOR DO
Get tmp; IF (i=h) THEN ;
4. FOR DO(in increasing order)
;
5. FOR DO
{
Z<-0;
FOR DO(in decreasing order)
{
Get tmp;
IF AND AND AND
THEN ;
}
IF THEN ;
}
6. mk <- M;
단계 2와 단계 3에서, 수신기 그룹(h)과 관련된 정보는 데이터 스트림으로부터 필터링된다. 단계 4는 그룹키로의 암호화를 역전시키며 단계 5에서, 임의의 비트 시퀀스들은 회복되며 모든 비-결합 그룹 멤버에 대해 차감된다. 결과는 원래 멀티캐스트 키이다.
joinn=0인 수신기(n)는, 모든 적합 선택키가 부족하므로 s=n%bd인 Zs를 회복할 가능성이 없다(암호화를 함께 공격하는 것은 제외). 비결합 수신기(n)에 대해 메시지가 제외키로 작동하는 임의의 비트 시퀀스(Zs)로 귀납적으로 암호화되므로(XOR에 의해 주어진, 간단한 구현), 제외된 수신기는 그 자신의 그룹에 해당하는 전송으로부터 멀티캐스트 키(mk)에 대한 임의의 정보를 얻을 수 없을 것이다. 모든 다른 그룹에 대해, 그룹키들 중 적어도 하나는 그에게 유실되며, 따라서 정보를 얻을 수 있는 방법 또한 없다.
선택적 멀티캐스트를 달성하기 위한 멀티캐스트 키의 암호화 및 해독의 일반 구조가 이에 따라 설명된 후, 제 1 실시예의 구체적인 예는 도 5 내지 13a, 도 13b를 참조로 설명될 것이다.
다음 예에서, 시스템의 파라미터는 기초수 b=2 및 차원수 d=3이 되도록 선택된다. 전체 수가 24개인 수신기를 가진, 처음 세 개의 그룹만을 고려할 것이며, 이는 각 그룹이 bd(8) 멤버이기 때문이다. 시스템의 연산을 증명하기 위해, 예는 오직 작은 수의 수신기만을 포함하도록 의도적으로 선택된다는 점이 주목되어야 한다. 본 발명의 실행에서, 수신기의 수는 일반적으로 더 크다. 내부 파라미터의 선택은 이하에서 설명할 것이다.
도 6의 표에서, 24개의 수신기 모두에 대한 선택키와 그룹키를 가진 발행 방식이 제공된다. 이미 설명한 것처럼, 3개의 그룹 각각 내의 선택키의 배분은 동일하다.
기초수 b는 2와 같게 선택되었으므로, 각 수신기 수(위치 지수)는 선택키 발행 방식을 결정하기 위해 이중 표시(기초수 2에 대한 수체계)로 작성될 수 있다. 도 5에 도시된 것처럼, 이중 표시에서 수신기 수의 각 자리수에 대해, 정확히 한 개의 선택키는 "0"의 값에 배정되고 다른 것은 "1"의 값에 배정된다. 각 그룹 내의 선택키는 이 표시에 따라 배분된다.
이제, 멀티캐스트 키의 전송의 각 단계에 대해, 난수 비트 시퀀스(Z0,..Z7)는 생성되고, 이는 임시 어드레스 키로 사용된다. 이들 임시키들은 여기에서 단일 전송을 위해서만 사용된다는 것이 주지되어야 한다. 대안적으로, 또한 복수 전송을 위한 임시키를 사용할 수 있을 것이다.
어드레스 키(Z0,..Z7)가 위에 주어진 발신 알고리즘의 단계 4에 따라 수신기로 전송된 경우, 이는 도 8에 도시된 것과 같은 암호화된 패키지의 발신을 유도한다. 각 어드레스 키는 d회 전송되며(여기에서, d=3), 매번 다른 선택키(SK)로 암호화된다. 지수 j를 가진 어드레스 키의 암호화를 위해, 지수 j를 가진 수신기가 보유하지 않은 선택키만이 사용된다.
도 9는 기술된 암호화에 의해 달성된 어드레스 키의 분배를 도시한다. 표에 도시된 것처럼, 각 그룹 내의 각 수신기에 대해, 정확히 하나의 제외키만이 있다. 예를 들어, 제외키(Z0)는 수신기(R0)를 제외하는데 사용될 수 있으며, 이는 R0가 단지 Z0로 액세스할 수 없는 그룹 내의 수신기이기 때문이다. 동일한 내용은 R1과 Z1에 적용되는 등이다.
위에 주어진 발신 및 수신 알고리즘에 따른 구현에서, 도 9의 표는 수신기에서 키저장을 반영하지 않으며, 알고리즘의 실행동안 개별 어드레스 키에 액세스하는 수신기 능력을 반영함을 주의해야 한다. 이것은 대안적인 실시예에 존재할 수 있다고 해도, 위에 주어진 발신 및 수신 알고리즘은 수신기에서 어드레스 키의 저장을 포함하지 않는다. 대신, 당업자가 이해하는 것처럼, 어드레스 키는 해독동안 사용하기 위해 "제시간에" 수신되며 저장될 필요가 없으며, 이는 수신기 측에서 저장 요건을 더 최소화한다.
예에서, 도 10에 도시된 것처럼 결합 벡터(60)를 가정하자. 수신기 옆의 "1"과 "0" 엔트리는 수신기들 중 어느 것이 멀티캐스트 키를 수신하도록 인증되었는지를 반영한다. 예를 들어, 그룹 0에서, 수신기(R0,R1,R5,R6 및 R7)는 멀티캐스트 키를 수신하도록 인증되는 한편, R2,R3 및 R4는 그렇지 않다.
이제, 암호화동안(발신 알고리즘의 단계 3), 멀티캐스트 키(mk)의 암호화된 버전이 계산된다. 본 명세서에서 제안된 암호화 알고리즘은 어드레스 키와의 단순한 XOR이지만, 물론 더욱 복잡한 알고리즘이 사용될 수 있다. 각 그룹에 대해, 멀티캐스트 키는 이에 따라 비-인증된 수신기의 제외키로 암호화된다. 예컨대, 도 11a는 암호화를 위해 사용된 어드레스 키(Z2,Z3 및 Z4)(즉, 비-인증된 수신기(R2,R3,R4)에 대한 제외키)를 가진 그룹 0에 대한 멀티캐스트 키(mk)의 암호화를 도시한다. 따라서, 도 11b 및 도 11c는 그룹 1과 2 각각에 대한 암호화된 멀티캐스트 키를 도시한다. 따라서 각 그룹에 대해 귀납적으로 암호화된 멀티캐스트 키는 마지막으로 해당 그룹의 모든 그룹키로 암호화된다. 도 12a 내지 도 12c는 그룹 0,1,2 각각에 대해 대응하는 암호화된 멀티캐스트 키(mk*)를 도시한다.
수신기에서 암호화된 멀티캐스트 키(mk*)의 수신 및 해독은 이제 도 13a, 도 13b를 참조로 증명될 것이며, 도 13a는 수신기(R0)(결합 벡터(60)에서 "1" 엔트리를 가지며, 그러므로 멀티캐스트 키를 수신하기 위해 인증됨) 및 수신기(R12)(결합 벡터(60)에 "0" 엔트리를 가지며, 그러므로 멀티캐스트 키를 수신하기 위해 인증되지 않음)에서 해독에 대응한다.
수신기(R0)는, 도 9에 대해 전술한 바와 같이, 그룹의 그룹키(GK1,GK2)에 액세스할 수 있으며 모든 어드레스키는 그 자신의 제외키(Z0)를 접수한다. 따라서 수신기(R0)는 제 1 암호화된 멀티캐스트 키 패키지(mk*)의 암호화에 사용된 모든 어드레스 키(Z2,Z3,Z4)에 액세스할 수 있으며, mk의 클리어 텍스트를 수신하기 위해 귀납적으로 mk*를 해독할 수 있다. 그러나, 수신기(R0)는 나머지 그룹에 대해 지정된 다른 mk* 패키지들 중 어느 것을 해독할 수 없는데, 이는 수신기가 적어도 하나의 그룹 키(GK3)가 부족하기 때문이라는 것을 주지해야 한다.
도 13b에 도시된 것처럼, 수신기(R12)는 없어진 그룹키(GK2) 때문에, 제 1 및 제 3 암호화된 멀티캐스트 키 패키지(mk*)를 해독할 수 없다. 그러나, 수신기(R12)는 또한 제 2 패키지(mk*)를 해독할 수 없는데, 이는 귀납적 암호화는 그 제외키(Z4)를 포함하기 때문이다. 따라서, 수신기(R12)는 멀티캐스트 키(mk)를 얻을 수 없다.
다음에서, 잠재 사용자의 수(N), 키 및 블록 크기(m) 및 내부 파라미터(g)(각 수신기가 보유하는 그룹키의 수), b(기초수) 및 d(차원수)에 따른, 전술한 시스템의 연산에 필요한 자원을 볼 것이다.
서버측 | 사용자측 | |
베이스 키 | (b-1)d+g | |
방송 대역폭[비트] | ||
작업 공간[비트] | N+m(1+bd) | 2m+bd |
난수 비트 | m·bd | 0 |
지수화 | αmN | ≤mbd(평균 αmbd) |
암호화/해독[블록] | ≤g+bd(평균 g+αbd) |
"방송 대역폭"은 방송되어야 하는 비트의 수를 제공한다. "작업 공간"에, 프로토콜에서 사용된 변수에 대한 메모리 요건은 제공된다. 마지막 두 행은 비-참가 사용자의 비율을 표시하는 파라미터 α를 포함한다(따라서 α∈[0,1]이며, 모든 사용자가 참가한 경우, α=0이며, 사용자가 모두 참가하지 않은 경우, α=1). 사용자측 열에서, 계산상 노력을 위해 마지막 두 행에 최하한선 및 기대값(모든 사용자에 대해 평균함)을 제공한다.
제안된 프로토콜은 자유 파라미터(b,d,g)를 조정하는 것에 대해 일부 재량을 남겨두었다. 이는 어떤 자원(계산상 요구, 저장 요소, 대역폭)이 최적화될 것인지에 따라, 다양한 방법으로 수행될 수 있다. 다른 본질적인 결정은, 가입 사용자의 수(N)가 변하는 동안, 어떤 파라미터가 고정된 상태로 유지되어야 하는가이다. 잠재 사용자의 증가하는 수로 인해 b,d 및 g(또는 이들의 서브셋)를 증가시킬 때, 기존 사용자가 소유한 키의 집합을 이에 따라 업데이트해야 함을 주목해야 한다. 그러나, 사용자의 색인이 적절한 방법으로 재조직된 경우, 모든 사용자는 이미 소유한 키를 가질 수 있다는 것을 확인할 수 있다. 이렇게 하여, 오직 비교적 적은 양의 증가 키만이 기존사용자에게 전달되어야 한다.
제 1 실시예는 주로 시나리오(예, 무선 이동 디바이스를 위한 서비스)를 위한 것이며, 이때 액세스 포인트 당 사용자의 최대수는 다른 이유로 인해 어쨌든 제한된다. 게다가, 이들 상황에서, 개별 통신을 위한 비용(즉, 비-방송, 보안 채널에 대한)은 비교적 높은 것으로 고려되어야 한다. 이외에도, 계산상 능력에 대한 요구 및 디바이스측 상에서의 메모리 소비는 중요한 인자이다.
따라서 여기에서, 사용자에게 발행될 베이스 키의 수 및 대역폭을 동시에 최적화하기 위한 방법으로 선택된, 고정된 파라미터 g,d 및 b를 선택할 것을 제안한다. 이처럼, 오직 새로운 사용자만이 가입동안 베이스 키를 수신해야 하지만 어떠한 키 대체 또는 증가키 전달도 멀티캐스트 서비스의 전체 수명동안 기존 사용자에게 발생해서는 안된다.
파라미터(g)는 각 사용자마다의 수 베이스 키 및 반대 방향의 서버측에 저장될 키의 수에 영향을 미친다(표 1의 첫 번째 행 참조). 서버측의 메모리 소비는 중요치 않으므로(예, N<106), 이 파라미터는 가능한 가장 낮은 값인 g=1로 설정되어야 한다.
b와 d에 대한 최적의 선택은 그다지 명백하지 않다. 상한(K)이 각 사용자마다 베이스 키의 수로 주어진 경우, 즉 제한이 (b-1)d+1≤K이면, 전송 노력을 최적화, 즉, 를 최소화해야 한다.
10000 내지 40000명에 이르는 잠재적 사용자의 최대수(N) 및 k=12(각 수신기에 대한 베이스 키)에 대해, 전술한 최적화 문제에 대한 최적의 해결책은 b=4, d=3이라는 것을 알게 되었다. g=1 및 m=128과 함께 이들 값을 사용하면, 다음의 필요조건을 유도한다(간략함을 위해 N은 64의 배수라고 가정):
서버측 | 사용자측 | |
베이스 키 | 12+N/64 | 10 |
방송 대역폭(비트) | 3N+24576 |
따라서 N<216에 대해, 프로토콜은 다음의 속성을 가진 안전한 멀티캐스트를 허용한다고 말할 수 있다:
·최대 총 1036개의 베이스 키, 사용자당 10개의 베이스 키 발행,
·디바이스 측에서 가능한 매우 작은 풋프린트(footprint) 구현: 200바이트 미만의 필요 작업 공간(베이스 키 포함), 각 멀티캐스트 키 설립에 대해 최대 65개의 블록 해독,
·대역폭 요건: 보안 채널에 대해 각 사용자마다 160 바이트(키 발행에 대해), 방송 채널에 대해 최대 27kb(각 멀티캐스트 키 확립에 대해).
대략, 내부 파라미터의 제안된 선택은 잠재적 사용자에 대해 3 비트의 방송 대역폭 소비를 유도한다. 일반적인 애플리케이션에 대한 일례로서, (128kbit/s에서) 무선 MP3 스트리밍을 고려하면: 매 2분마다 멀티캐스트 키를 새로 확립하기 위한 프로토콜에 의해 생성된 오버헤드는 액세스 포인트마다 최대 216명의 가입자에 대해 1.4%이다(따라서 더 작은 수에 대해서는 더 작다).
다음에서, 멀티캐스트 시스템의 구현의 제 2 실시예 및 대응하는 발행 방식이 설명될 것이다. 제 2 실시예에 따른 발행 방식과 알고리즘은 대형 멀티캐스트 시나리오를 위한 것이며, 1000개 이상의 수신기는 일반적으로 10,000 이상으로 제공되며 바람직하게는 수신기의 수는 100,000 이상이다.
알고리즘에서, 잘 알려진 디피-헬맨 프로토콜은 사용될 것이다. 디피-헬맨 프로토콜은 다른 사람들에게 키를 획득할 수 있는 기회를 주지 않고 개방 채널에 대해 2명의 사람 사이에서 암호키의 확립을 위해 발명되었다. 이는 다음의 간단한 지수 법칙에 기초하며,
이는 큰 소수(p)에 대해 유한 필드로 일반화된다. 프로토콜의 보안은 이산 로가리듬(logarithm)(지수화 모듈로(p)의 역함수)이 계산적으로 큰 p("트랩-도어 함수"(trap-door function))에 대해 어렵다는 관찰에 의존한다. 즉, ab mod p, a 및 p를 하는 경우조차, 실제로 b에 관한 정보를 얻는 것이 불가능하다.
디피-헬맨 원칙을 다음 함수 "Exp"의 형태로 사용하며, 2개의 m-비트 시퀀스를 하나의 m-비트 시퀀스로 맵핑한다:
여기에서, 비트 시퀀스 A와 B는 수의 모듈로 p로 판독하고 지수화의 결과는 {0,...,p-1} 내의 수로 감소되며 비트 시퀀스로 해석된다. 사전에 선택된 수(p)는 이 문헌 전체에서 고정되는 것으로 가정된다. 2m보다 약간 작은 것은 소수여야 하며(예, 2m-2m/2와 2m 사이에서 랜덤하게 선택), m은 전송될 멀티캐스트 키에서 비트 수이다.
지수 법칙은 Exp(Exp(A,B),C)=Exp(Exp(A,C)B)를 의미하며; 이는 개시된 프로토콜에서 다음 방법으로 사용된다: 만약 Exp(A,B)와 Exp(A,C)가 공개된 경우, B 또는 C를 알고 있는 사용자는 Exp(Exp(A,B),C)를 계산할 수 있을 것이며, 하지만 A와 B를 모두 모르는 사용자는 그렇지 않을 것이다. 따라서 디피-헬맨 프로토콜은 2개의 키 사이의 OR-관계를 구현하는데 사용될 수 있다.
제 2 실시예에서, 프로토콜은 두 가지 유형의 발행된 베이스 키를 사용하며: 이들은 그룹키(GK1,GK2,...) 및 2개의 집합의 b·d 선택키(SK1_1,SK1_3,...,SK1_b·d 및 SK2_1,SK2_2,...SK2_b·d)이다. 필요한 그룹키(g)의 수는 수신기의 전체 수(N)와 그룹의 수에 따른다. 0에서 N-1개의 지수가 수신기에 고유하게 배정되고, 이후 키 발행 방식이 다음 법칙에 의해 기술된다고 가정하자:
지수 n을 가진 사용자는 인 모든 그룹키(GK) 및 인 모든 선택키(SK1_i) 및 인 모든 제 2 선택키(SK2_i)를 획득한다.
발신기 측에서, 다음 알고리즘은 데이터를 전송하기 위해 사용된다:
1. Send join0, join1,...joinN -1(in compressed form);
2. Generate 2bd+1 random m-bit sequence( );
FOR DO
;
3. FOR DO
{
;
FOR DO
FOR DO
IF AND THEN
;
FOR DO(in increasing order)
;
Send M;
}
4. FOR DO
{
Send Zj;
FOR DO(in increasing order)
Send Enc(SK1_k,Xj);
}
FOR DO
{
Send Exp(B,Yj);
FOR DO(in increasing order)
Enc(SK_k,Yj);
}
알고리즘은 크기 b2d의 그룹으로 사용자를 나누는 것을 기초로 한다. 멀티캐스트 키의 귀납적으로 암호화된 사본은 각 그룹에 대해 개별적으로 전송되며 그룹 내의 비결합 사용자에 대응하는 모든 j,k에 대해 Exp(Exp(B,Xj),Yk)으로 암호화되며 또한 이 그룹에 속하는 모든 그룹키로 암호화된다. 임의의 비트 시퀀스(어드레스키)(Xj,Yj)는 d번 전송되며, 매번 기초수(b)에 대해 수체계 내에 j 자리수에 따라 선택키(SK1k,SK2k) 중 하나로 각각 암호화된다. 지수 Exp(B,Yj), Exp(B,Yj)는 암호화되지 않고 전송된다.
지수(n)를 가진 수신기는 join=1인 경우, 그리고 이 경우에만 다음의 알고리즘을 사용하여 방송된 스트림으로부터 MK를 재구성할 수 있을 것이다:
1.
2. Get (ignore other bits sent);
3. FOR DO
Get H; IF (i=h) THEN M<-H;
4. FOR DO(in decreasing order)
;
5. FOR i=1...2 DO
{
IF (i=1) THEN p<-s; ELSE p<-t;
FOR DO
{
Get ;
;
FOR DO(in increasing order)
{
Get H;
IF AND THEN (Ski_k,H);
}
}
}
6. FOR ...0 DO
FOR DO
IF AND THEN
{
IF (j=s) THEN ; ELSE ;
M<-Dec(H,M);
}
7. MK<-M;
단계 2 및 3에서, 수신기 그룹(h)에 관한 정보는 데이터의 스트림으로부터 필터링된다. 단계 4는 그룹키로 암호화를 역전시킨다. 단계 5에서, 값(Exp(B,Xj),Exp(B,Yj))은 판독되며 2개의 어레이()에 각각 저장된다. 또한 비트 시퀀스(Xj 및 Yj)는 정확한 선택키로 암호 해독함으로써 복구된다. 결과는 에 저장된다. 마지막으로, 단계 6에서, 비트 시퀀스 Exp(Exp(B,Xj),Yk)=Exp(Exp(B,Yk),Xj)는 모든 비결합 사용자에 대해 복구되며 원래 멀티캐스트 키를 해독하는데 사용된다.
도 2b 및 도 3b는 발신기와 수신기 측 상의 처리 유닛(14 및 36)의 대응 구조를 도시한다. 구조는 주로 제 1 실시예(도 2a 및 도 3a)의 그것에 대응하므로, 오직 제 1 및 제 2 실시예의 차이만이 더 설명될 것이다:
발신기 측에서, 선택키 저장(54)은 두 가지 유형의 선택키, 즉 제 1 선택키(SK1_0,SK1_1,...) 및 제 2 선택키(SK2_0,SK2_1,...)의 기본 집합을 가진다. 또한, 어드레스 키 생성 유닛(26)은 제 1 어드레스키(X0,X1,...) 및 제 2 어드레스 키(Y0,Y1,...)를 생성한다.
키 암호화 유닛(28)은 제 1 어드레스 키(X0,X1,...)를 제 1 선택키(SK1_0,SK1_1,..)로 제 1 암호화된 어드레스 키(X0*,X1*,...)로서 그리고 제 2 어드레스 키(Y0,Y1,...)를 제 2 선택키(SK2_0,SK2_1,..)로 제 2 암호화된 어드레스 키(Y0*,Y1*,...)로서 암호화한다. 키 암호화 유닛(28)은 Exp(B,X0),Exp(B,X1),..뿐만 아니라 Exp(B,Y0),Exp(B,Y1),...로서 지수(Z0,Z1...)를 더 계산하며 이들을 더 암호화하지 않고 전송한다.
멀티캐스트 키 암호화 유닛(24)은 암호화된 멀티캐스트 키(m1*,m2*,m3*,...)를 생성하기 위해 그룹키 저장(52)으로부터 그룹키(GK0,GK1,...) 및 제 1 및 제 2 어드레스 키(X0,X1,...,Y0,Y1,..)를 사용한다.
처리 유닛(36)(도 3b) 내의 수신기 측에서, 키 해독 유닛(42)은 암호화된 어드레스 키(X0*,Y0*,...)를 해독하기 위해 제 1 및 제 2 선택키를 모두 사용한다.
멀티캐스트 키 해독 유닛(40)은 암호화된 멀티캐스트 키(m1*,m2*,m3*,...)를 해독하기 위해 지수(Z0,Z1,...Exp(X0)),...) 및 제 1 및 제 2 어드레스키(X0,Y0,.. 및 Z0,Z1,...)를 사용한다. 다음에서 제 2 실시예의 일례는 도 14 내지 도 23b에 대해 자세히 설명될 것이다.
상기 예에서, 내부 파라미터들은 기본수 b=2, 그리고 차원수 d=2로 선택된다. 이는 두 가지 크기(b2d)의 그룹을 유도하는데, 즉 각 그룹은 16개의 수신기를 포함한다. 간략함을 위해, 오직 2개의 그룹만이 이 예에서 고려될 것이다. 다시, 매우 적은 수신기를 가진 간단한 예는 시스템의 작동을 보여주기 위해 선택되었다.
도 15a 및 도 15b에서의 표는 상기 예의 32개 수신기 모두에 대한 선택키의 발행 방식을 도시한다. 다시, 같은 그룹의 모든 멤버들은 동일한 그룹키를 보유한다. 수신기 사이에서의 선택키의 배분은 모든 그룹에 대해 같다.
b2d개의 멤버의 각 그룹은 각각 bd개의 멤버 내의 bd개의 하위 그룹으로 분할된다. 두 가지 유형의 선택키가 존재하는데, 즉 하위 그룹을 어드레스 지정하기 위한 제 1 선택키(SK1)와 하위 그룹 내에서 개별 수신기 위치를 어드레스 지정하기 위한 제 2 선택키(SK2)이다. 따라서, 같은 하위 그룹 내의 모든 수신기들은 제 1 어드레스 키(SK1)의 같은 집합을 가진다(예컨대, 하위 그룹(0)의 모든 멤버들은 SK1_0 및 SK1_1를 보유하고 이는 0 및 1의 그룹 모두에 적용된다). 반면에, 각 하위 그룹 내에서 각 수신기는 제 2 선택키의 고유한 집합을 보유하지만, 제 2 선택키의 배분은 4개의 하위 그룹 모두에 대해 같다(예를 들어, 각 4개의 하위 그룹 내의 제 2 수신기는 SK2_0 및 SK2_3을 보유하며, 이는 다시 모든 그룹에 적용된다).
다시, 제 1 및 제 2 선택키의 배분은 기초수 b에 대한 수체계 내에서 하위 그룹 지수(제 1 선택키 SK1에 대해) 그리고 위치 지수(제 2 선택키 SK2에 대해)의 표시에 따라 결정된다. 도 14는 제 1 및 제 2 선택키 양자에 대해 이중 수체계에서 자리수의 표시를 제공한다.
위에서 주어진 발신기 알고리즘의 단계 2에서, 임시 어드레스 키(Xi,Yi)는 임의의 m-비트 시퀀스로 생성된다(m은 멀티캐스트 키(mk)에서의 비트 수). 여기에서 Xi는 제 1 어드레스 키로 사용되며, Yj는 제 2 어드레스 키로 사용된다. 게다가, 베이스(B)는 임의의 m-비트 시퀀스로서 무작위로 결정된다.
지수(Z0,Z1,Z2,Z3)는 Exp(B,Yi)로 계산되며, 지수 Exp(B,Xi)와 함께 중간키로 사용된다. 도 17에 도시된 것과 같은 이들 값들은 암호화되지 않고 방송되며, 그러므로 모든 수신기에 대해 액세스가능하다.
단계 4의 제 1 부분에서, 각 Xi는 d번 전송되며, 매번 다른 SK1로 암호화되며, 암호화를 위해 사용된 제 1 선택키(SK1)의 조합은 기초수(b)에 대해 수체계 내에서 하위그룹 지수의 표시에 따라 결정된다. 따라서, 단계 4의 제 2 부분에서, 각 제 2 어드레스 키 Yi는 d번 전송되며, 매번 다른 SK2로 암호화되고, 사용된 제 2 선택키(SK2)의 조합은 기초수 b에 대해 수체계 내에서 위치 지수의 표시에 따라 결정된다.
도 18에서, 전술한 분배 알고리즘에서 기인한 그룹 0의 수신기 사이에서의 어드레스 키의 분배가 주어진다. 제 1 실시예와는 다르게 알고리즘은 수신기 측에 어드레스 키를 임시로 저장하는 단계를 포함하는 것이 주목되어야 한다.
도 18에서 알 수 있는 것처럼, 그룹 0으로부터 수신기 사이의 제 1 및 제 2 어드레스 키의 분배는 각 하위 그룹에 대해, 특정 하위 그룹의 멤버가 보유하지 않는, 제 1 어드레스 키로부터 하나의 하위 그룹 제외키가 존재하도록 한다(예컨대, 하위 그룹 0의 모든 멤버들은 X0를 보유하지 않는 한편, 모든 다른 수신기들은 그러하다).
또한, 각 하위그룹 내의 각 수신기에 대해, 개별 수신기가 보유하지 않는 한편, 하위 그룹 내의 모든 다른 멤버는 보유하는, 제 2 어드레스 키로부터 하나의 위치 제외키가 있다(예컨대, 각 하위그룹(R0,R4,R8,R12)의 제 1 멤버는 Y0를 보유하지 않지만, 다른 모든 수신기들은 보유함).
다음에서, 도 19에 도시된 결합 벡터(62)에 따른 멀티캐스트 키(mk)의 암호화가 설명될 것이다. 도 20에서, 그룹 0에 포함된 수신기들은 표에 나열되며, 같은 열 안의 모든 수신기들은 동일한 하위그룹 제외키를 가지며, 같은 행 안의 모든 수신기들은 같은 위치 제외키를 가진다. 예컨대, 수신기(R12)는 X3 및 Y0를 보유하지 않는데, 즉 하위 그룹 제외키(X3) 및 위치 제외키(Y0)를 구비한다.
비인증된 수신기(예에서, R3,R6,R11,R12,R13)의 제외키 쌍(예, 하위그룹/위치 제외키) 각각으로부터, 수학적 조합은 전송 알고리즘의 단계 3에서 Exp(Zi,Yk)로 계산된다. 멀티캐스트 키(mk)는 이에 따라 생성된 결합 키를 사용하여 귀납적으로 암호화된다. 도 21은 그룹 0에 대해 암호화된 것처럼 대응하는 귀납적으로 암호화된 멀티캐스트 키(mk)를 도시한다. 이러한 패키지는 이후 암호화된 패킷(mk*)을 제공하기 위해 그룹 0의 모든 그룹키를 사용하여 더 암호화된다. 이 유형의 대응 패킷은 각 그룹에 대해 결정된다.
인증된 수신기(R5)(도 23a) 및 비인증된 수신기(R11)(도 23b)에서 암호화된 멀티캐스트 키(mk*)의 해독이 설명될 것이다.
수신기(R5)는 그룹 0의 그룹키(GK1,GK2)를 보유한다. R5는 하위그룹 제외키(X1)를 제외한, 모든 제 1 어드레스 키(X)와 위치 제외키(Y1)를 제외한, 모든 제 2 어드레스키(Y)를 더 보유한다. R5는 모든 수신기로서, (모든 제 1 어드레스 키(X)와 제 2 어드레스 키(Y)를 가진 베이스(B)의 지수화로 인해 계산된) 전술한 지수를 더 보유한다.
이 정보를 사용하여, 수신기(R5)는 다음을 계산할 수 있다:
Z0,Y3로부터 Exp(Z0,Y3)
Z1,Y2로부터 Exp(Z1,Y2)
Z2,Y3로부터 Exp(Z2,Y3)
Z3,Y0로부터 Exp(Z3,Y0)
그러나, R5가 Y1을 보유하지 않으므로, Exp(Z3,Y1)를 직접 계산할 수 없다. 그러나, R5가 X3을 보유하므로, 그럼에도 불구하고 Exp(Z3,Y1)을 Exp(Exp(B,Y1),X3)로서 계산할 수 있다. 따라서 수신기 R5는 mk*를 해독할 수 있는데, 이는 모든 필요한 키를 획득할 수 있기 때문이다. 수신기 R5는 그러므로 멀티캐스트 키(mk)를 획득할 수 있다.
이제 도 23b를 보면, 수신기 R11는 하위 그룹 제외키(X2)와 위치 제외키(Y3)를 제외한 그룹키(GK1,GK2) 및 모든 어드레스 키를 보유한다. R11는 모든 이용가능한 지수를 더 보유한다.
mk*의 생성동안 사용된 키들 중에서, R11는 다음을 계산할 수 있다
Z1,Y2로부터 Exp(Z1,Y2)
Z3,Y1으로부터 Exp(Z3,Y1)
Z3,Y0로부터 Exp(Z3,Y0)
R11은 또한 Y3를 보유하지 않더라도 Exp(Z0,Y3)를 계산할 수 있다. R11이 X0를 보유하므로, Exp(Exp(B,Y3),X0)를 계산할 수 있다.
그러나, R11은 Exp(Z2,Y3)를 계산할 수 없다. 한편으로, R11은 위치 제외키 Y3를 보유하지 않는다. 다른 한편으로, R11은 하위 그룹 제외키(X2)를 보유하지 않는다. 따라서, X11이 Exp(Z2,Y3)를 계산할 방법이 없다.
그러므로, R11은 mk*를 해독할 한 키가 부족하며, 따라서 멀티캐스트 키(mk)를 획득할 수 없다.
전술한 실시예에 대해 많은 가능한 변형예가 있다.
제 1 변형예는 모든 실시예의 전송 알고리즘의 단계 1에서 완전한 결합 벡터의 방송 단계를 제거했다. 대신, 결합 벡터에 대한 변경만이 전송된다.
다른 변형예는, 예를 들어 인터넷과 같은 컴퓨터 네트워크와 같은, 느린 "마지막 마일"과의 연결을 유도하며, 수신기들은 비교적 낮은 대역폭 채널(예, 모뎀)에 의해 액세스 포인트에 연결된다. 이러한 경우, 액세스 포인트는 단계 2 및 3의 필터링을 수행할 수 있으며 느린 마지막 마일 채널에 대해 사용자에 관한 b2d+m 비트만을 전송한다.
다음에서, 대역폭, 메모리 및 계산의 수에 대해, 사용자의 수(n), 키 및 블록 크기(m), 및 내부 파라미터(g,b,d)에 따른, 제 2 실시예의 요구를 살펴본다:
서버측 | 사용자측 | |
베이스 키 | 2(b-1)d+g | |
방송 대역폭[비트] | ||
작업 공간[비트] | N+m(3bd+2) | b2d+m(4bd+1) |
임의 비트 | m(2bd+1) | 0 |
지수화 | 2bd+αN | ≤b2d(평균 αb2d) |
암호화/해독[블록] |
제 1 실시예에서처럼, 또한 제 2 실시예는 이용가능한 자원에 따른 자유 파라미터(b,d,g)를 조정하는 것에 대해 일부 재량을 남겨 둔다.
제 2 실시예는 많은 수(백만 내지 십억)의 잠재적 사용자를 가진 시나리오를 위해 사용될 수 있다. 이들 상황에서, 서버에 의해 저장될 베이스 키의 수는 중요한 인자이다(필요한 방송 대역폭 이외의).
따라서, 방송 대역폭의 점근적으로(asymtotically) "좋은" 행동의 제한 하에서 베이스 키의 전체수를 최적화할 것을 제안한다. 사용자(g)에 대해 그룹 베이스 키(G)의 전체수와 그룹 베이스 키의 수는 다음 조건을 충족시켜야 한다(이는 그룹이 그룹 베이스 키의 집합의 g-요소 하위집합에 의해 확인되어야 하기 때문이다):
이항식의 대칭으로 인해 거의 최적의 선택(일부의 경우 최적의 해법은 G=2g-1이지만 간단함을 위해, 이 사례를 무시한다)은 G=2g이며 g는 를 충족시키는 가장 작은 자연수이다. 스털링 근사(Stirling's approximation)를 사용하면 이는 다음을 유도한다.
베이스 키의 전체수는 이후 대략 이며, 따라서 베이스 키 수와 요구된 방송 대역폭에 대한 적합한 작업 지점을 찾는 것은 다음 문제를 야기한다.
주어진 N에 대해, 및 를 "동시에 최소화한다".
명백히, 이들 식을 모두 동시에 최소화하는 (b,d)를 선택하지 않으며, 따라서 방송 대역폭과 베이스 키 수 사이의 트레이드-오프가 있다. N의 다른 값에 대해, (b,d)에 대한 합리적인 선택은 쉽게 발견될 수 있지만, 가장 가능한 점근적 행동(그러나, 이는 일부 특별한 N에 대한 하위-최적 선택일 수 있다)을 가진 일반적인 답변을 제공을 시도하자.
점근적으로 최상의 방송 대역폭 소비는 인 경우 달성된다. 베이스 키의 수에 대한 식에서의 d를 로 대체하면, 최소화 문제인 다음을 유도하며,
mim
이는 b=3에 의해 풀이된다. b를 고정된 상태로 유지하면, 최소 방송 대역폭은 식 의 해답에 대응한다. b=3에 대해, 최적의 d를 찾기 위한 최고의 법칙은 다음의 공식으로 주어진다:
결과 근사값을 삽입할 때
b=3,d
표 1에서 다음의 프로토콜의 점근적 행동을 획득한다.
서버측 | 사용자측 | |
베이스 키 | ||
방송 대역폭[비트] | ||
작업 공간[비트] | N | |
임의 비트 | 0 | |
지수화 | ||
암호화/해독[블록] |
일례로서, 건당과금 서비스의 환경(N=2·108)을 건당과금 서비스를 위한 2백만 가입자로 간주한다.
위에 주어진 법칙에 따라서, 내부 파라미터에 대한 최선의 선택은 b=3, d=5, g=7이다. 멀티캐스트 키와 베이스 키의 키 크기는 m=256 비트로 선택되었다고 라고 가정하자. 다음 표에서, 추가적 가정 α=0.95이 또한 결합되었다:
서버 측 | 사용자 측 | |
베이스 키 | 44 | 27 |
방송 대역폭 | 7MB | |
작업 공간 | 24MB | 38kB |
임의 비트 | 125,000 | 0 |
지수화 | 107 | 최대 59,000 |
암호화/해독[블록] | 107 | 최대 60,000 |
추가적인 예로서, 예컨대, 인터넷과 같은 컴퓨터 네트워크에서의 멀티캐스트 소통량을 고려한다.
매우 큰 시나리오에 대해, 잠재적 사용자의 수가 N=232, 즉 최대로 이용가능한 IP-어드레스의 수라고 생각하자. 위에서 주어진 법칙은 b=3, d=6, g=8을 제안한다. 멀티캐스트 키와 베이스 키의 키 크기는 m=256 비트로 설정되고 α는 0.999로 설정된다(이는 4백3십만 사용자들이 같은 멀티캐스트 시간 슬롯에서 같은 컨텐츠의 구매를 시도한다는 것을 의미한다). 요건 목록은 이제 다음과 같다:
서버 측 | 사용자 측 | |
베이스 키 | 52 | 32 |
방송 대역폭 | 6.4MB(마지막 마일에 대해 0.37MB) | |
작업 공간 | 512MB | 156kB |
임의 비트 | 370,000 | 0 |
지수화 | 4.3·106 | 평균 530 |
암호화/해독[블록] | 4.4·106 | 평균 2,000 |
마지막 두 행에서, 디피-헬맨 지수화와 블록-암호화 단계의 평균 수치를 제공하였는데, 이는 참가 사용자들이 그룹에 대해 통계적으로 잘 분포되도록 가정될 수 있기 때문이다. 방송 대역폭 엔트리에서, 전술한 변형을 사용할 때의 잠재적 이익이며, 느린 마지막-마일 채널이 지시되는 경우, 단계 2와 3의 필터링이 액세스 포인트에서 수행되는 경우이다.
전술한 예에서 증명하는 것처럼, 제안된 프로토콜은 놀랍도록 낮은 수의 베이스 키를 사용하여, 비교 가능하게 낮은 대역폭 소비를 가진(예를 들어, 256 비트 키와 같은 높은 보안 레벨에서조차) 많은 수의 사용자에 대해 멀티캐스트 서비스를 허용한다.
위의 실시예에서, 스크램블링된 컨텐츠 데이터와 암호화된 멀티캐스트 키 정보를 모두 방송하는, 오직 하나의 발신기(S)만이 가정되었다. 데이터의 동일한 방송 스트림 내의 이 정보를 전송하는 것이 바람직한 한편, 한 쪽의 스크램블된 컨텐츠 데이터에 관한 키 정보가 실제로 예를 들어, 다른 채널에 대해 또는 다른 발신기 구성체에 의해 분리되어 전송될 수 있는 다른 실시예들이 존재할 수 있다.
전술한 설명이 방송 시스템과 방법의 예를 도시하는 한편, 이들 예는 단지 예시 목적으로 선택되었으며 본 발명의 범위를 한정하는 것으로 해석되어야 한다. 전술한 시스템 및 방법에 대한 많은 변경 및 확대가 가능하다. 예를 들어, 중간 크기 또는 대형 시나리오에 대해 주어진 사용자의 범위는 바람직한 선택이지만, 당업자는 알고리즘이 다른 크기의 시나리오에 대해 사용될 수 있음을 이해할 것이다.
본 발명은 메시지의 선택적 멀티캐스트에 대한 시스템, 방송 시스템 및 선택적 멀티캐스트에 대한 방법에 관한 것으로서, 적어도 하나의 발신기 및 복수의 수신기를 포함하는 시스템 내의 메시지의 선택적 멀티캐스트를 위한 방법 등에 이용가능하다.
Claims (19)
- 메시지의 선택적 멀티캐스트를 위한 시스템으로서,- 적어도 하나의 발신기(S), 그리고 그룹 키(GK1,GK2,...)의 베이스 집합 및 어드레스 키(X0,X1,...Y0,Y1,...Z0,Z1,...)의 베이스 집합을 제공하기 위해, 상기 발신기(S)와 결합된 키 제공 수단(26,52,54)을 구비하며, 암호화된 메시지(mk*)를 전송하기 위한 전송 수단(16)을 구비하며,- 상기 시스템은 복수의 수신기(RO,R1,...)를 더 포함하며, 상기 수신기는 복수의 그룹의 구성체이며, 액세스 수단(42,50)은 개별 수신기 어드레스 키 집합 및 하나 이상의 그룹 키(GK)와 액세스하기 위한 상기 수신기 각각과 연관되며,- 상기 하나 이상의 그룹 키(GK)는 같은 그룹의 모든 수신기에 대해 동일하며,- 상기 각각의 수신기 어드레스 키 집합들은 어드레스 키의 상기 베이스 집합의 서브셋이며,- 그리고 상기 수신기 어드레스 키 집합들은 동일한 그룹의 수신기의 모든 쌍에 대해 각 쌍단위로 다르며,- 각 개별 수신기에 대해, 상기 어드레스 키의 상기 베이스 집합에서 하나 이상의 제외 키(X0,X1,...,Y0,Y1,...,Z0,Z1,...)가 존재하며, 이는 상기 수신기의 수신기 어드레스 키 집합에 포함되지 않으며,- 상기 시스템은 상기 수신기 각각에 관한 인증 정보를 저장하기 위해 인증 저장 수단(30)을 더 포함하며,- 상기 시스템은 상기 메시지(mk)로부터 복수의 암호화된 메시지(mk*)를 생성하기 위한 암호화 수단(24)을 더 포함하며,- 상기 암호화된 메시지(mk*) 각각은 단지 키의 결합으로부터 모든 키를 사용하여 해독될 수 있는 방법으로 키의 조합을 통해 암호화되며,- 상기 암호화된 메시지(mk*) 각각은 수신기의 상기 그룹으로부터 대상 그룹(G0,G1)을 대상으로 하며, 상기 키의 조합은 상기 대상 그룹의 하나 이상의 그룹 키를 포함하며,- 상기 조합들은 상기 대상 그룹의 비인증된 수신기의 하나 이상의 제외 키를 더 포함하는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 1항에 있어서, 복수의 상기 수신기 어드레스 키 집합들은 다른 그룹의 수신기에 대해 동일한, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 1항 또는 제 2항 중 한 항에 있어서, 상기 암호화 수단(24)은 상기 키 조합을 사용하여 상기 메시지를 귀납적으로 암호화하기 위해 구성되는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 1항 내지 제 3항 중 어느 한 항에 있어서, 상기 시스템은- 상기 어드레스 키의 베이스 집합을 생성하기 위한 어드레스 키 생성 수단(26),- 그리고 상기 어드레스 키를 상기 수신기에 선택적으로 전송하기 위한 선택적 키 전송 수단(28)을 더 포함하는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 4항에 있어서,- 상기 키 제공수단(26,52,54)은 암호 키(SK0,SK1,..)의 선택 베이스 집합을 저장하기 위해 구성된 상기 발신기에 저장 수단(54)을 포함하며,- 상기 수신기 각각은 수신기 선택 키 집합을 저장하기 위한 저장 수단(50)을 포함하며,- 상기 수신기 선택 키 집합 각각은 상기 선택 베이스 키 집합의 서브셋이며,- 동일한 그룹의 수신기의 상기 선택 키 집합은 각 쌍 단위로 각자 포함되어 있지 않으며,- 다른 그룹의 수신기의 복수의 수신기 선택 키 집합은 동일하며,- 상기 선택 키 전송 수단(28)은 하나 이상의 상기 선택 키(SK1,SK2,...,SK1_0,SK1_1,...,SK2_0,SK2_1,...)를 가진 상기 어드레스 키(X0,X1,...,Y0,Y1,...,Z0,Z1,...)를 암호화하기 위해 구성된, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 1항 내지 제 6항 중 어느 한 항에 있어서,- 각 수신기(R)에 대해, 어드레스 키의 상기 베이스 집합에 포함된 오직 하나의 제외 키가 있으며, 이는 상기 수신기의 수신기 어드레스 키 집합 내에 포함되지 않으며,- 상기 제외 키는 상기 수신기와 같은 그룹의 잔여 수신기의 상기 수신기 어드레스 키 집합에 포함되는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 5항 또는 제 6항에 있어서,- 각 그룹은 최대한 bd 수신기를 포함하며, b≥2는 정수 기본수이며 d≥1은 차원수이며,- 상기 선택 베이스 키 집합은 b*d 선택 키이며,- 각 수신기의 수신기 선택 키 집합은 (b-1)*d 선택 키를 포함하며,- 각 수신기의 수신기 선택 키 집합은 기본 b에 대한 수체계에서 수신기 수(r)의 표시에 대응하며(0≤r≤bd-1), r의 각 자리수는 d개의 다른 선택 키들 중 하나로 표시되는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 7항에 있어서,- 상기 어드레스 베이스 키 집합은 bd 어드레스 키를 포함하며,- 상기 어드레스 키 각각은 d회 전송되며, 각 회수는 선택 키의 전송 조합에서 다른 하나로 암호화되며,- 각 어드레스 키에 대한 상기 전송 조합은 기본 b에 대한 수체계로 키 번호(t)의 표시에 대응하며(0≤t≤bd-1), t의 각 자리수는 d개의 다른 선택 키들 중 하나로 표시되는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 1항 내지 제 5항 중 한 항에 있어서,- 각 수신기에 대해 어드레스 키의 상기 베이스 집합에서 적어도 2개의 제외키가 있으며, 이들은 대응하는 수신기 어드레스 키 집합에 포함되지 않으며 제외 키들 중 각 조합은 각 그룹 내에서 고유한, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 1항 내지 제 5항 또는 제 9항 중 어느 한 항에 있어서,- 어드레스 키의 상기 베이스 집합은 제 1 어드레스 키(SK1_0,SK1_1,..) 및 제 2 어드레스 키(SK2_0,SK2_1,...)로 분할되며,- 상기 그룹(G0,G1)들은 복수의 하위 그룹들로 분할되며,- 상기 수신기 어드레스 키 집합들은 제 1 어드레스 키의 수신기 집합 및 제 2 어드레스 키의 수신기 집합을 포함하며,- 동일한 하위그룹 내의 각 수신기의 수신기 어드레스 키 집합은 제 1 어드레스 키의 동일한 수신기 집합을 포함하며,- 각 수신기의 수신기 어드레스 키 집합은 상기 수신기의 하위그룹 내에 고유한 제 2 어드레스 키의 수신기 집합을 포함하는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 10항에 있어서,- 각 하위그룹에 대해, 제 1 어드레스 키의 상기 수신기 집합에 포함되지 않은 상기 제 1 어드레스 키(X0,X1,...) 중에 하나의 하위 그룹 제외 키가 존재하며, 상기 하위그룹 제외 키는 상기 그룹의 나머지 하위 그룹의 수신기의 제 1 어드레스 키의 수신기 집합에 포함되며,- 각 수신기에 대해, 제 2 어드레스 키의 상기 수신기 집합에 포함되지 않은 상기 제 2 어드레스 키(Y0,Y1,...) 중의 오직 하나의 위치 제외 키만이 존재하며, 상기 위치 제외 키는 상기 하위그룹의 나머지 수신기의 제 2 어드레스 키의 수신기 집합에 포함되며,- 상기 암호화 수단(24)은 상기 제외 키가 상기 그룹의 상기 비-인증된 수신기의 상기 하위그룹 제외 키 및 상기 위치 제외 키로부터 계산된, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 11항에 있어서,- 상기 암호화 수단(24)은 상기 제외 키가 상기 하위 그룹 제외 키와 상기 위치 제외 키의 귀납적 지수화(recursive exponentiation)에 의해 계산되도록 구성된, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 10항 내지 제 12항 중 어느 한 항에 있어서,- 각 그룹은 최대 b2d개의 수신기를 포함하며, b≥2는 정수 기초수이며 d≥1은 정수 차원수이며, 각 그룹은 각 하위그룹 내에 최대 bd개의 수신기를 구비한 최대 bd개의 하위 그룹을 포함하며,- 상기 선택 베이스 키 집합는, b*d 제 1 선택 키(SK1_0,SK1_1,...)와 b*d 제 2 선택 키(SK2_0,SK2_1,...)를 가진, 2*b*d 선택 키를 포함하며,- 각 수신기의 수신기 선택 키 집합은 (b-1)*d 제 1 선택키 및 (b-1)*d 제 2 선택키를 포함하며,- 각 수신기의 수신기 선택 키 집합 내에 제 1 선택키 집합은 기초 b에 대한 수체계 내에서 수신기 수(r)의 표시에 대응하며(0≤r≤bd-1), r의 각 자리수는 d개의 다른 선택키 중 하나로 표시되며,- 각 수신기의 수신기 선택 키 집합 내의 제 2 선택키 집합은 기초 b에 대한 수체계 내에서 하위 그룹 수(s)의 표시에 대응하며(O≤s≤bd-1), s의 각 자리수는 d개의 다른 선택키들 중 하나로 표시되는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 제 13항에 있어서,- 상기 어드레스 베이스 키 집합은 bd 제 1 어드레스 키(X0,X1,...) 및 bd 제 2 어드레스 키(Y0,Y1,...)를 포함하며,- 상기 어드레스 키 각각은 d번 전송되며, 매번 선택키의 전송 조합 중 다른 하나로 암호화되며,- 각 어드레스 키에 대한 상기 전송 조합은 기초 b에 대한 수체계 내에서 키 번호(t)의 표시에 대응하도록 선택되며(0≤t≤bd-1), t의 각 자리수는 d개의 다른 선택키들 중 하나로 표시되는, 메시지의 선택적 멀티캐스트를 위한 시스템.
- 방송 시스템에 있어서,- 발신기(S)로서, 스크램블링된 컨텐츠 메시지(F1*,F2*,F3*,...)를 방송하며, 상기 컨텐츠 메시지는 적어도 하나의 스크램블링 키(m1,m2,m3,...)로 스크램블링되는, 발신기(S),- 상기 스크램블링된 메시지를 수신하기 위한 복수의 수신기(R),- 및 상기 스크램블링 키(m1,m2,m3,...)를 인증된 수신기에 선택적으로 전송하기 위해 청구항 제 1항 내지 제 14항 중 어느 한 항에 기재된 시스템(10)을 구비한, 방송 시스템.
- 적어도 하나의 발신기(S) 및 복수의 수신기(R)를 포함하는 시스템 내의 메시지의 선택적 멀티캐스트를 위한 방법으로서, 상기 수신기는 복수의 그룹(G0,G1)으로 분할되며, 상기 방법은- 그룹 키(GK)의 베이스 집합을 제공하는 단계,- 어드레스 키(Zj,Xj,Yj)의 베이스 집합을 제공하는 단계,- 상기 수신기 각각에 대해 하나 이상의 그룹 키를 제공하는 단계로서, 동일한 그룹의 수신기 모두는 동일한 그룹 키가 제공되는, 그룹키 제공 단계,- 상기 수신기 각각에 수신기 어드레스 키 집합을 제공하는 단계로서,- 상기 수신기 키 집합 각각은 어드레스 키의 상기 베이스 집합의 서브셋이며,- 각 수신기에 대해 어드레스 키의 상기 베이스 집합 중에 적어도 하나의 제외 키(Zj,Xj,Yj)가 있으며, 이는 대응하는 수신기 어드레스 키 집합에 포함되지 않은, 수신기 어드레스 키 집합을 제공하는 단계,- 비인증된 수신기와 인증된 수신기에 대한 정보를 획득하는 단계,- 각각이 수신기의 대상 그룹을 대상으로 하는, 복수의 암호화된 메시지(mk*)를 생성하기 위해 상기 메시지(mk)를 처리하는 단계로서,- 상기 암호화된 메시지(mk*) 각각은 상기 키 조합 중에 모든 키를 사용하여 오직 해독될 수 있도록 키의 조합을 사용하여 암호화되며,- 상기 조합은 대상 그룹의 하나 이상의 그룹키를 포함하며,- 상기 조합은 상기 대상 그룹의 비인증화된 수신기의 복수의 제외키를 포함하는, 메시지를 처리하는 단계,- 상기 암호화된 메시지를 상기 발신기로부터 상기 수신기로 전송하는 단계를 포함하는, 적어도 하나의 발신기(S) 및 복수의 수신기(R)를 포함하는 시스템 내의 메시지의 선택적 멀티캐스트를 위한 방법.
- 제 16항에 있어서,- 상기 어드레스 키 집합은 상기 발신기에서 생성되며,- 상기 어드레스 키 집합 중 상기 어드레스 키는 상기 수신기로 선택적으로 전송되며,- 상기 어드레스 키 집합은 한정된 수의 메시지를 전송하기 위해 사용되는, 적어도 하나의 발신기(S) 및 복수의 수신기(R)를 포함하는 시스템 내의 메시지의 선택적 멀티캐스트를 위한 방법.
- 제 16항 또는 제 17항 중 하나에 있어서,- 상기 수신기 어드레스 키 집합을 제공하는 단계는 상기 암호화된 메시지를 전송하는 단계 이후에 수행되는, 적어도 하나의 발신기(S) 및 복수의 수신기(R)를 포함하는 시스템 내의 메시지의 선택적 멀티캐스트를 위한 방법.
- 제 18항에 있어서,- 상기 암호화된 메시지는, 수신기 어드레스 키의 완전한 집합을 저장하지 않고, 수신과 동시에 상기 수신기 어드레스 키를 사용함으로써 상기 수신기에서 해독되는, 적어도 하나의 발신기(S) 및 복수의 수신기(R)를 포함하는 시스템 내의 메시지의 선택적 멀티캐스트를 위한 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP04102207.0 | 2004-05-19 | ||
EP04102207 | 2004-05-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070015204A true KR20070015204A (ko) | 2007-02-01 |
Family
ID=34968580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020067024156A KR20070015204A (ko) | 2004-05-19 | 2005-05-17 | 중대형 시나리오 및 낮은 사용자측 요구를 위한 멀티캐스트키 발행 방식 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20080019528A1 (ko) |
EP (1) | EP1757010A1 (ko) |
JP (1) | JP2007538454A (ko) |
KR (1) | KR20070015204A (ko) |
CN (1) | CN1998180A (ko) |
WO (1) | WO2005114901A1 (ko) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10256587A1 (de) * | 2002-12-04 | 2004-06-17 | Philips Intellectual Property & Standards Gmbh | Datenverarbeitungseinrichtung, insbesondere elektronisches Speicherbauteil, und hierauf bezogenes Verschlüsselungsverfahren |
US8165302B2 (en) * | 2005-06-07 | 2012-04-24 | Sony Corporation | Key table and authorization table management |
US8176317B2 (en) * | 2006-01-19 | 2012-05-08 | Helius, Inc. | System and method for multicasting IPSec protected communications |
KR100746037B1 (ko) * | 2006-02-28 | 2007-08-06 | 삼성전자주식회사 | 도메인에 포함된 그룹들의 키를 구성하는 방법 및 장치 |
JP5051429B2 (ja) * | 2006-11-14 | 2012-10-17 | 日本電気株式会社 | 暗号鍵管理方法、そのシステム及びそのプログラム |
JP2008205625A (ja) * | 2007-02-16 | 2008-09-04 | Toshiba Corp | 無線通信システムとその通信制御方法および通信システム |
DE102007012751B4 (de) * | 2007-03-16 | 2008-11-20 | Siemens Ag | Vorrichtung, System, Konfigurationsverfahren und Konfigurationsvorrichtung |
US8320561B2 (en) * | 2007-08-08 | 2012-11-27 | Qualcomm Incorporated | Key identifier in packet data convergence protocol header |
US8447039B2 (en) * | 2007-09-26 | 2013-05-21 | Cisco Technology, Inc. | Active-active hierarchical key servers |
US8396222B2 (en) * | 2008-03-10 | 2013-03-12 | Nds Limited | Key distribution system |
US8256007B2 (en) * | 2008-03-25 | 2012-08-28 | Northrop Grumman Systems Corporation | Data security management system and methods |
US9049181B2 (en) * | 2009-09-18 | 2015-06-02 | Nec Corporation | Network key update system, a server, a network key update method and a recording medium |
CN102170357B (zh) * | 2011-05-31 | 2013-09-25 | 北京虎符科技有限公司 | 组合密钥动态安全管理系统 |
WO2013042022A1 (en) * | 2011-09-20 | 2013-03-28 | Koninklijke Philips Electronics N.V. | Management of group secrets by group members |
US9240980B2 (en) * | 2011-09-27 | 2016-01-19 | Koninklijke Philips N.V. | Management of group secrets by group members |
US9298942B1 (en) | 2013-12-31 | 2016-03-29 | Google Inc. | Encrypted augmentation storage |
US9591479B1 (en) * | 2016-04-14 | 2017-03-07 | Wickr Inc. | Secure telecommunications |
US10541814B2 (en) | 2017-11-08 | 2020-01-21 | Wickr Inc. | End-to-end encryption during a secure communication session |
US10778432B2 (en) | 2017-11-08 | 2020-09-15 | Wickr Inc. | End-to-end encryption during a secure communication session |
US11101999B2 (en) | 2017-11-08 | 2021-08-24 | Amazon Technologies, Inc. | Two-way handshake for key establishment for secure communications |
US10855440B1 (en) | 2017-11-08 | 2020-12-01 | Wickr Inc. | Generating new encryption keys during a secure communication session |
US11176058B2 (en) * | 2020-01-22 | 2021-11-16 | Arm Limited | Address decryption for memory storage |
CN112152796B (zh) * | 2020-08-25 | 2022-12-23 | 南方电网科学研究院有限责任公司 | 一种基于密钥动态协商的组播方法及相关装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL106796A (en) * | 1993-08-25 | 1997-11-20 | Algorithmic Res Ltd | Broadcast encryption |
US6049878A (en) * | 1998-01-20 | 2000-04-11 | Sun Microsystems, Inc. | Efficient, secure multicasting with global knowledge |
JP3841337B2 (ja) * | 2001-10-03 | 2006-11-01 | 日本放送協会 | コンテンツ送信装置、コンテンツ受信装置およびコンテンツ送信プログラム、コンテンツ受信プログラム |
US7340603B2 (en) * | 2002-01-30 | 2008-03-04 | Sony Corporation | Efficient revocation of receivers |
-
2005
- 2005-05-17 JP JP2007517560A patent/JP2007538454A/ja active Pending
- 2005-05-17 WO PCT/IB2005/051598 patent/WO2005114901A1/en not_active Application Discontinuation
- 2005-05-17 US US11/569,088 patent/US20080019528A1/en not_active Abandoned
- 2005-05-17 KR KR1020067024156A patent/KR20070015204A/ko not_active Application Discontinuation
- 2005-05-17 EP EP05742509A patent/EP1757010A1/en not_active Withdrawn
- 2005-05-17 CN CNA2005800157492A patent/CN1998180A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP1757010A1 (en) | 2007-02-28 |
US20080019528A1 (en) | 2008-01-24 |
CN1998180A (zh) | 2007-07-11 |
JP2007538454A (ja) | 2007-12-27 |
WO2005114901A1 (en) | 2005-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20070015204A (ko) | 중대형 시나리오 및 낮은 사용자측 요구를 위한 멀티캐스트키 발행 방식 | |
Stinson et al. | Key preassigned traceability schemes for broadcast encryption | |
US8005225B2 (en) | Hierarchical threshold tree-based broadcast encryption method | |
CN1157021C (zh) | 多节点加密与密钥传送 | |
EP0641103B1 (en) | Method and apparatus for key distribution in a selective braodcasting system | |
US7200752B2 (en) | Threshold cryptography scheme for message authentication systems | |
US20020191796A1 (en) | Symmetric and asymmetric encryption method with arbitrarily selectable one-time keys | |
US20070172067A1 (en) | System for selective data transmission | |
KR100670017B1 (ko) | 조합에 기반한 브로드캐스트 암호화 방법 | |
EP0874496A2 (en) | Cryptographic processing apparatus, cryptographic processing method, and storage medium storing cryptographic processing program for improving security without greatly increasing hardware scale and processing time | |
CN114362928B (zh) | 一种用于多节点间加密的量子密钥分发与重构方法 | |
CN111416706A (zh) | 基于秘密共享的量子保密通信系统及其通信方法 | |
Pal et al. | Efficient and secure key management for conditional access systems | |
Parmar et al. | A Comparative Evaluation of Algorithms in the Implementation of an Ultra‐Secure Router‐to‐Router Key Exchange System | |
WO2002045340A2 (en) | Threshold cryptography scheme for message authentication systems | |
CN115603902B (zh) | Cca安全的sm9匿名广播加密方法 | |
CN107317675A (zh) | 一种可发送私人信息的广播加密方法 | |
Narayanan et al. | Practical pay TV schemes | |
CN112367159B (zh) | 一种面向医疗数据安全存储的混合加、解密方法及系统 | |
Hussein et al. | An enhanced ElGamal cryptosystem for image encryption and decryption | |
Matsuzaki et al. | Light weight broadcast exclusion using secret sharing | |
Sathyanarayana et al. | Group Diffie Hellman key exchange algorithm based secure group communication | |
US20240031144A1 (en) | Method for protecting payload data | |
CN117335962A (zh) | 一种一对多动态群组加密通信系统及方法 | |
Nguyen et al. | A new cryptography scheme for selective broadcasting |
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 |