US7672456B2 - Anti-pirate method for the distribution of digital content by pro-active diversified transmission, associated transmitting device and portable receiving object - Google Patents

Anti-pirate method for the distribution of digital content by pro-active diversified transmission, associated transmitting device and portable receiving object Download PDF

Info

Publication number
US7672456B2
US7672456B2 US10/499,475 US49947505A US7672456B2 US 7672456 B2 US7672456 B2 US 7672456B2 US 49947505 A US49947505 A US 49947505A US 7672456 B2 US7672456 B2 US 7672456B2
Authority
US
United States
Prior art keywords
information
receivers
receiver
values
function
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related, expires
Application number
US10/499,475
Other versions
US20050254644A1 (en
Inventor
Jacques Patarin
Nicolas Courtois
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thales DIS France SA
Original Assignee
Gemalto SA
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 Gemalto SA filed Critical Gemalto SA
Publication of US20050254644A1 publication Critical patent/US20050254644A1/en
Application granted granted Critical
Publication of US7672456B2 publication Critical patent/US7672456B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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/083Key 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/0833Key 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • H04N21/63345Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/606Traitor tracing

Definitions

  • This invention proposes a new system for transmission of image decryption keys (or of the image itself) which offers numerous advantages: the system is relatively simple to implement and can react quickly if pirate cards should appear (flexibility).
  • the new method is characterised by very reasonable rates which are compatible with the speed limitations imposed by the communication channels.
  • this length can be as short as just 64 bits.
  • the invention therefore concerns a method to make the same information (K c ) available to several receivers belonging to a group (G) of receivers, each receiver storing information (SA i ) specific to it, characterised in that it comprises the following steps:
  • function (E K ) is a cryptographic encryption function and (K) a secret key used by this function.
  • the values (b i ) are sent encrypted with a key (K i ) specific to each receiver of a certain group (G) of receivers.
  • each value (SA i ) is a secret value known by the receiver of index i.
  • each (b i ) consists of two values b 1i and b 2j and equally the information specific to each receiver consists of two values SA i et SA j , such that each receiver, identified by the pair of indices (i,j), combines the corresponding values b 1i and b 2j with the values SA i and SA j to calculate values K c1 and K c2 using said relation, which are in turn combined to access the information K C .
  • the information K c is a key used to decrypt a digital content such as a television image.
  • the information K c can be used for several minutes by the receivers, the information K is sent several seconds in advance and the values b i are sent regularly, starting several days in advance.
  • certain receivers find at least some of their values b i in a list of values prestored in the receivers.
  • the invention also concerns a portable receiver object belonging to a group (G) of portable objects and comprising information processing means and information storage means, the storage means storing information (SA i ) which is specific to the portable object and a given function (f), characterised in that it comprises:
  • the invention concerns a transmitter device to make the same information (K c ) available to several receivers belonging to a group (G) of receivers, each receiver storing information (SA j ) specific to it, characterised in that it comprises:
  • FIG. 1 represents a receiver as a smartcard type portable object
  • FIG. 2 represents an associated transmitter device.
  • K c represent the information decryption key. This key has, for example, a lifetime of 10 minutes and may require between 64 and 128 bits.
  • K c the information decryption key. This key has, for example, a lifetime of 10 minutes and may require between 64 and 128 bits.
  • This receiver has, here, at least two values specific to it: an encryption key K i , and a secret value SA i .
  • the transmitter will send the secret key K to all the receivers.
  • K has been transmitted, they will all, using this sole value K and their different values SA i and b i , be able to recalculate the same value K c .
  • a one-way function is one which can be calculated in one direction with no particular information, but which cannot be calculated in the inverse direction, except possibly if certain parameters are known. It is in particular a hashing function such as MD5 or SHA.
  • G be a group of legitimate receivers.
  • the objective is to transmit to them (and only them) a content K c , consisting of all types of information (data, program, cryptographic key, etc.), especially a digital content.
  • the content K c may in particular be a key to access a pay-TV program.
  • the content K c is identical for all the receivers and, typically, it will change very rapidly to avoid fraudulent redistribution.
  • the basic principle of the invention is to transmit K c to all legitimate receivers via another key K sent in cleartext, so that each receiver has a means of calculating K c using K, which is completely different from that used by the other receivers. Generally, this means will be a value b i , transmitted well in advance, which it finds in its memory.
  • K c f ( K,b i ,SA i ).
  • K will be transmitted a few seconds or a few minutes before K c is made available.
  • the values SA i do not have to be secret: they can be public.
  • Variant 2 For certain applications, when the values SA i are secret, the values b i can be transmitted in cleartext to the receivers.
  • Variant 3 Function E instead of being an encryption function, can be more generally a one-way function using a key K, for example a cryptographic hashing function such as SHA-1.
  • Variant 4 Prestorage of values b i Rather than transmitting the values b i , they can be precalculated and prestored in the receiver, for example in flash memory, on the hard disk, CD-ROM or DVD. They can also be broadcast locally, for example via the building cable or microwaves.
  • each receiver has, instead of the value SA i which was specific to it, two values SA i et SA j , so that several receivers can have the same SA i or the same SA j , but not the same SA i and the same SA j simultaneously.
  • Each receiver is therefore characterised by a pair of indices (i, j) specific to it.
  • each receiver can have two encryption keys. K i and K j , so that several receivers can have the same K i or the same K j , but not the same K i and the same K j simultaneously.
  • the keys K i can be used to transmit the values b i to the receivers secretly (except in the variant where the values b i are public).
  • K c K c1 # K c2 .
  • the advantage of this 2 nd version is that fewer values b i are transmitted than with the 1 st version (since several receivers have the same values b 1i or b 2j ). Typically, it is possible to only transmit a number of b 1i and of b 2j approximately equal to the square root of the number of receivers.
  • Each value b i is therefore composed of one or more values: (b 1i , b 2j , b 3k , . . . ) and each receiver is characterised by a list of indices (i, j, k, . . . ) and corresponding addresses (SA i , SA j , SA k , . . . ).
  • the receiver characterised by the list (i, j, k, . . . ) uses the corresponding values (b 1i , b 2j , b 3k , . . . ) with (SA i , SA j , SA k , .
  • Each receiver will be identified by a list of indices, preferably unique, of the form (i), (i,j) or (i, j, k, . . . ) used to identify it (or to identify a small group of suspect receivers). Equally, we could say that the receiver is characterised by its group of keys or addresses according to two possible interpretations, which is its group (SA i , SA j , SA k , . . . ).
  • This setup can therefore be combined with any other traitor tracing setup with known secret key, for example that described in the article Tracing Traitors , Crypto'94, by Benny Chor, Amos Fiat, and Moni Naor.
  • the traditional traitor tracing protocol must specify how to distribute secrets (SA i , SA j , SA k , . . . ) to receivers and how to calculate the main key K C from the keys K Ci .
  • a new value of SA i may have to be sent to the legitimate receivers (in advance, and preferably encrypted with a secret key).
  • 3.3 Variants of the Generalised Setup All the variants described in paragraph 2.1 for the basic setup can also be applied to the replicated setup described in section 3.
  • Variant group 1 these variants consist in using other ways of distributing secrets (SA i , SA j , SA k , . . . ) to receivers.
  • Variant group 2 these variants consist in using other ways of calculating the main K C from keys K Ci .
  • Variant group 3 variants where key K used to calculate the various values (b 1i , b 2j , b 3k , . . . ) is not the same for all of these values. For example, one key can be used for all values b 1i and a different one for the values b 2j .
  • Variant group 4 variants where the function f(K, b i , SA i ) used for the values b 1i , b 2j etc. is not the same for all of these values. For example, one function can be used for the values b 1i used to calculate K c1 , and a different function for the values b 2j used to calculate K c2 .
  • Variant group 5 variants where the secret key K i used to transmit the values b 1i and the values b 2j is not the same for all receivers which use the same i, or differs for the values b 1i and the values b 2i .
  • FIG. 1 shows the general structure of a receiver 1 of type smartcard. It comprises information processing means or CPU 2 , various types of information storage means 3 , 4 , 5 (RAM, EEPROM, ROM), input/output means 6 allowing the card to communicate with a card reader terminal, and a bus 7 allowing these various parts to communicate together.
  • the card communicates with a remote transmitter device via the terminal (not shown).
  • FIG. 2 shows the general structure of a transmitter device 10 . It comprises information processing means or processor 11 , information storage means 12 which can be of various types (RAM, EEPROM, ROM), traditional input/output means 13 allowing the transmitter to communicate with the exterior, and a bus 14 allowing these various parts to communicate together.
  • the transmitter also comprises transmission means 15 especially designed to communicate according to the invention with all receivers with which it is associated. For a pay-TV system, these transmission means are designed to transmit images and at least the above-mentioned information K, especially through the use of radio waves.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention concerns an anti-pirate method for the distribution of digital content by pro-active diversified transmission, associated transmitter device and portable receiving object. The method, designed to make the same information (Kc) available to several receivers (1) belonging to a group (G) of receivers, each receiver storing information (SAi) specific to it, is characterized in that it includes the following steps: define a relation Kc=f(K, bi, SAi) where (f) is a given function, (K) is information common to all the receivers, and (bi) is information different for each receiver and for each value of the information (K); —enable each receiver to access information (bi) before making (Kc) available; and transmit the information (K) to all receivers, just before making (Kc) available; so that each receiver can calculate information (Kc) using said relation.

Description

BACKGROUND AND SUMMARY OF THE INVENTION
Numerous pay-TV channels currently fall victim to fraud. In particular, pirate cards are frequently used to view their channels. This invention proposes a new system for transmission of image decryption keys (or of the image itself) which offers numerous advantages: the system is relatively simple to implement and can react quickly if pirate cards should appear (flexibility).
If a pirate card is obtained, it is possible to find out from the exterior (i.e. just by observing its operation) what secrets it holds, which may possibly be used to find out from which real card it obtained these secrets, but especially to quickly disable all the pirate cards without disabling the legitimate cards. This is known as traitor tracing and in particular black box (traitor) tracing. Note that the invention proposed is extremely efficient and secure compared with the other systems proposed in the cryptographic literature (see references). Note also that this invention is not limited to television: the method can also be used whenever the same content must be transmitted to several authorised receivers.
The new method is characterised by very reasonable rates which are compatible with the speed limitations imposed by the communication channels. In addition, it stands out from other methods due to the very short length of the data K which is transmitted in real time in order to access the protected content: this length can be as short as just 64 bits.
The invention therefore concerns a method to make the same information (Kc) available to several receivers belonging to a group (G) of receivers, each receiver storing information (SAi) specific to it, characterised in that it comprises the following steps:
    • define a relation Kc=f(K, bi, SAi) where (f) is a given function, (K) is information common to all the receivers, and (bi) is information different for each receiver and for each value of the information (K);
    • enable each receiver to access information (bi) before making (Kc) available; and
    • transmit the information (K) to all receivers, just before making (Kc) available;
    • so that each receiver can calculate information (Kc) using said relation.
      Advantageously, the function (f) is such that knowing a (bi) and a (SAi), no algorithm is known which could be used to obtain the information (Kc) in a realistic time and with non negligible probability, when the information (K) is not known.
      Advantageously, function f is such that, knowing a certain number of (b1 . . . bn) for a certain subgroup (G′) of receivers, no algorithm is known which could be used, before knowing the current K, in a realistic time and with a non negligible probability, to produce a valid pair (bi, SAi) with a legitimate (SAi), i not being one of the receivers 1 . . . n of (G′).
Advantageously, the function f has the format:
f(K,b i ,SA i)=b i ⊕E K(SA i)
where EK is a function depending on information (K) and where ⊕ designates a group law.
Advantageously, function (EK) is a cryptographic encryption function and (K) a secret key used by this function.
Advantageously, the values (bi) are sent encrypted with a key (Ki) specific to each receiver of a certain group (G) of receivers.
Advantageously, each value (SAi) is a secret value known by the receiver of index i.
Advantageously, each (bi) consists of two values b1i and b2j and equally the information specific to each receiver consists of two values SAi et SAj, such that each receiver, identified by the pair of indices (i,j), combines the corresponding values b1i and b2j with the values SAi and SAj to calculate values Kc1 and Kc2 using said relation, which are in turn combined to access the information KC.
Advantageously, the information Kc is a key used to decrypt a digital content such as a television image.
Advantageously, the information Kc can be used for several minutes by the receivers, the information K is sent several seconds in advance and the values bi are sent regularly, starting several days in advance.
Advantageously, certain receivers find at least some of their values bi in a list of values prestored in the receivers.
The invention also concerns a portable receiver object belonging to a group (G) of portable objects and comprising information processing means and information storage means, the storage means storing information (SAi) which is specific to the portable object and a given function (f), characterised in that it comprises:
means to obtain access to information (bi) different for each portable object of the group (G) and for each value of the information (K); and
means to calculate information (Kc) using a relation Kc=f(K, bi, SAi) where K is information common to all the portable objects and transmitted to them.
Lastly, the invention concerns a transmitter device to make the same information (Kc) available to several receivers belonging to a group (G) of receivers, each receiver storing information (SAj) specific to it, characterised in that it comprises:
    • calculation means designed to calculate information (bi) using a relation Kc=f(K, bi, SAi) where (f) is a given function, (K) is information common to all the receivers and information (bi) is information different for each receiver and for each value of the information (K); and
    • transmission means designed to transmit to each receiver, a certain time before making (Kc) available, the information (bi) associated with it, and to transmit information (K) to all the receivers, just before making (Kc) available.
BRIEF DESCRIPTION OF THE DRAWINGS
Other details and advantages of this invention will appear during the following description of a preferred but non-limiting method of execution, and referring to the attached drawings in which:
FIG. 1 represents a receiver as a smartcard type portable object; and
FIG. 2 represents an associated transmitter device.
1 EXAMPLE OF SYSTEM 1.1 Description
We will consider a system for the distribution of the same information to numerous valid receivers. For example, a pay-TV system. Let Kc represent the information decryption key. This key has, for example, a lifetime of 10 minutes and may require between 64 and 128 bits. We will describe a method which enables the receivers to recalculate the new value of Kc every 10 minutes. Note that here, all the receivers will calculate the same value of Kc, although they will all have different secrets.
We will consider a receiver and call it “receiver of index i”. This receiver has, here, at least two values specific to it: an encryption key Ki, and a secret value SAi.
The organisation responsible for transmission will generate a secret key K, then calculate, for every index i, the following value:
b i =K c ⊕E K(SA i),
where E designates an encryption function, or more generally a one-way function, using a key K, and where ⊕ designates a group law (for example bit by bit XOR, or addition modulo 256), and it will transmit all these values bi, encrypted respectively with a key Ki. For example, it will regularly transmit all values bi several days in advance.
Consequently, a receiver which will be in reception mode will be able, several days in advance, to decrypt the value bi (using its key Ki).
Then, just a few seconds before the key Kc becomes useful, the transmitter will send the secret key K to all the receivers. This key can be very short, for example 64 bits. They will now be able to calculate Kc by calculating y=EK(SAi), then Kc=bi⊕y−1 (if the group operation is bit by bit XOR, then y−1=y).
Note that the “time” factor plays a very important role here: before transmitting K, none of the receivers can calculate the value of Kc, and they all have in memory different values bi and SAi. Then, as soon as K has been transmitted, they will all, using this sole value K and their different values SAi and bi, be able to recalculate the same value Kc.
Remember that a one-way function is one which can be calculated in one direction with no particular information, but which cannot be calculated in the inverse direction, except possibly if certain parameters are known. It is in particular a hashing function such as MD5 or SHA.
1.2 “Black Box Traitor Tracing”, or how to React if Pirate Cards should Appear
If pirate cards should appear, it is possible to react: firstly by detecting the secret(s) held in the card (see below), secondly by disabling all cards which have this (these) same secret(s) (see below). This can be done without changing the other cards in circulation, which will continue to operate.
1.3 Detection of Secret(s)
Firstly, assume that the secrets of a single true receiver are held in a pirate card. The valid cards will be separated into two groups with approximately the same number of elements: A and B. The true values bi for A and false values bi for B are then transmitted to the pirate card to find out whether it can still decrypt the images correctly. If yes, its secret belongs to A, otherwise it belongs to B. Then start again with two new subgroups. If there are approximately 2n possible indices i, it will take approximately n attempts to find the index in question.
Note that it is not necessary to read the secrets held in the card: it is sufficient to observe its operation. If several secrets are present on the same card, the method indicated can be used to detect a 1st secret. The transmission of values bi corresponding to this secret is then stopped, and a 2nd secret is detected, etc. It is also possible that the pirate card could hold the secrets of several true receivers, using the secrets in a complex manner: detection then becomes more difficult, but still generally possible as long as there are not too many secrets held in the pirate card.
1.3.1 Disabling Cards with this(these) Secret(s)
Simply stop transmitting the values bi corresponding to these secrets.
2 GENERAL BASIC SETUP
A broad summary of the basic principle at the centre of the invention will be given, and more general improvements, variants and versions derived from it will be described in the following chapters.
Let G be a group of legitimate receivers. The objective is to transmit to them (and only them) a content Kc, consisting of all types of information (data, program, cryptographic key, etc.), especially a digital content. The content Kc may in particular be a key to access a pay-TV program. The content Kc is identical for all the receivers and, typically, it will change very rapidly to avoid fraudulent redistribution.
The basic principle of the invention is to transmit Kc to all legitimate receivers via another key K sent in cleartext, so that each receiver has a means of calculating Kc using K, which is completely different from that used by the other receivers.
Generally, this means will be a value bi, transmitted well in advance, which it finds in its memory. Just before Kc must be made available to the receivers, a unique value K is transmitted to all the receivers in the group G, so that each receiver can calculate Kc using a function f which it has and which takes as input K, bi, and a value SAi specific to it. For every index i in the group of receivers, we therefore have:
K c =f(K,b i ,SA i).
The time when K must be transmitted to the receivers will have to be determined according to circumstances, to ensure that a defrauder cannot recalculate Kc or at least use it fraudulently, in the time between transmission of K and the time when Kc is made available. Generally, K will be transmitted a few seconds or a few minutes before Kc is made available.
2.1 Variants of the Basic Setup
Variant 1
For certain applications, the values SAi do not have to be secret: they can be public.
Variant 2
For certain applications, when the values SAi are secret, the values bi can be transmitted in cleartext to the receivers.
Variant 3
Function E, instead of being an encryption function, can be more generally a one-way function using a key K, for example a cryptographic hashing function such as SHA-1.
Variant 4—Prestorage of values bi
Rather than transmitting the values bi, they can be precalculated and prestored in the receiver, for example in flash memory, on the hard disk, CD-ROM or DVD. They can also be broadcast locally, for example via the building cable or microwaves.
3 GENERALISED SETUP
The above setup with these variants can be duplicated or replicated, which offers considerable improvements in terms of performance and detection of gangs of defrauders. We will first describe a duplicated version then later explain the general principle which allows the system to be used several times in parallel, and all the resulting benefits.
3.1 2nd Example of System
In this case, each receiver has, instead of the value SAi which was specific to it, two values SAi et SAj, so that several receivers can have the same SAi or the same SAj, but not the same SAi and the same SAj simultaneously. Each receiver is therefore characterised by a pair of indices (i, j) specific to it.
In addition, each receiver can have two encryption keys. Ki and Kj, so that several receivers can have the same Ki or the same Kj, but not the same Ki and the same Kj simultaneously. The keys Ki can be used to transmit the values bi to the receivers secretly (except in the variant where the values bi are public).
The organisation responsible for the transmissions will generate two secret values Kc1 and Kc2. They are then combined to access the main key Kc or to access the content directly. For example, we could have: Kc=Kc1 # Kc2, where # is a group law.
It then generates a key K and calculates all the values
b 1i =K c1 ⊕E K(SA i)
and b 2j =K c2 ⊕E K(SA j)
where E designates an encryption function or more generally a one-way function, using the key K and where ⊕ designates a group law, and it will then transmit all these values b1i encrypted with key K1i and all the values b2j encrypted with Kj. For example, it will regularly transmit all values b1i and b2j several days in advance.
Consequently, a receiver which will be in reception mode will be able, several days in advance, to decrypt the value b1i (using its key Ki) and the value b2j (using its key Kj).
Then, just a few seconds before the key Kc becomes useful, the transmitter will send the secret key K to all the receivers. They will now be able to calculate Kc by calculating y=EK(SAi), z=EK(SAj), then Kc1=b1i⊕y−1, Kc2=b2j⊕z−1, then and finally Kc=Kc1 # Kc2.
The advantage of this 2nd version is that fewer values bi are transmitted than with the 1st version (since several receivers have the same values b1i or b2j). Typically, it is possible to only transmit a number of b1i and of b2j approximately equal to the square root of the number of receivers.
3.2 The Replicated Generalised Setup.
Instead of duplicating the basic setup, it can more generally be replicated. Each value bi is therefore composed of one or more values: (b1i, b2j, b3k, . . . ) and each receiver is characterised by a list of indices (i, j, k, . . . ) and corresponding addresses (SAi, SAj, SAk, . . . ). The receiver characterised by the list (i, j, k, . . . ) uses the corresponding values (b1i, b2j, b3k, . . . ) with (SAi, SAj, SAk, . . . ) to decrypt the values Kci (Kc1, Kc2, Kc3, . . . ) which must be combined to calculate a key to access the content KC, or the content itself.
Each receiver will be identified by a list of indices, preferably unique, of the form (i), (i,j) or (i, j, k, . . . ) used to identify it (or to identify a small group of suspect receivers). Equally, we could say that the receiver is characterised by its group of keys or addresses according to two possible interpretations, which is its group (SAi, SAj, SAk, . . . ). This setup can therefore be combined with any other traitor tracing setup with known secret key, for example that described in the article Tracing Traitors, Crypto'94, by Benny Chor, Amos Fiat, and Moni Naor. In this case, the traditional traitor tracing protocol must specify how to distribute secrets (SAi, SAj, SAk, . . . ) to receivers and how to calculate the main key KC from the keys KCi. This must be carried out, depending on the setup used, so that for a certain number C of receivers which share their keys to build a pirate decoder, it is still possible to identify one or all of the pirates, or at least deactivate all the pirate decoders without, preventing non-pirate legitimate receivers from accessing the content. According to the method of the invention, as already explained above, there are many ways of finding the keys held in a pirate card, without disassembling the card, simply by observing its operation on a transmission in which only some of the values bi are correct. This black-box tracing property is kept in the generalisations of the basic setup, and it is therefore possible to stop transmitting the value of bi corresponding to one or more secrets SAi which are held in the pirate card. At the same time, a new value of SAi may have to be sent to the legitimate receivers (in advance, and preferably encrypted with a secret key).
3.3 Variants of the Generalised Setup
All the variants described in paragraph 2.1 for the basic setup can also be applied to the replicated setup described in section 3.
In addition, there are other groups of variants specific to the general duplicated or replicated setup:
Variant group 1: these variants consist in using other ways of distributing secrets (SAi, SAj, SAk, . . . ) to receivers.
Variant group 2: these variants consist in using other ways of calculating the main KC from keys KCi.
Variant group 3: variants where key K used to calculate the various values (b1i, b2j, b3k, . . . ) is not the same for all of these values. For example, one key can be used for all values b1i and a different one for the values b2j.
Variant group 4: variants where the function f(K, bi, SAi) used for the values b1i, b2j etc. is not the same for all of these values. For example, one function can be used for the values b1i used to calculate Kc1, and a different function for the values b2j used to calculate Kc2.
Variant group 5: variants where the secret key Ki used to transmit the values b1i and the values b2j is not the same for all receivers which use the same i, or differs for the values b1i and the values b2i.
DETAILED DESCRIPTION OF THE INVENTION
A brief description will now be given of the invention in its implementation using information processing devices. It concerns a method to make the same information (Kc) available to several receivers belonging to a group (G) of receivers, from a transmitter comprising information processing means and information storage means, each receiver comprising information processing means and information storage means, the storage means of the receiver storing information (SAi) specific to it, characterised in that it comprises the following steps:
    • define, in the information storage means of each receiver, a relation Kc=f(K, bi, SAi) where (f) is a given function, (K) is information common to all the receivers, and (bi) is information different for each receiver and for each value of the information (K);
    • enable the processing means of each receiver to access information (bi), before making (Kc) available; and
    • transmit the information (K) to all the receivers using the processing means of the transmitter, just before making (Kc) available; so that each receiver can calculate information (Kc) using said relation, via its processing means.
FIG. 1 shows the general structure of a receiver 1 of type smartcard. It comprises information processing means or CPU 2, various types of information storage means 3,4,5 (RAM, EEPROM, ROM), input/output means 6 allowing the card to communicate with a card reader terminal, and a bus 7 allowing these various parts to communicate together. The card communicates with a remote transmitter device via the terminal (not shown).
FIG. 2 shows the general structure of a transmitter device 10. It comprises information processing means or processor 11, information storage means 12 which can be of various types (RAM, EEPROM, ROM), traditional input/output means 13 allowing the transmitter to communicate with the exterior, and a bus 14 allowing these various parts to communicate together. The transmitter also comprises transmission means 15 especially designed to communicate according to the invention with all receivers with which it is associated. For a pay-TV system, these transmission means are designed to transmit images and at least the above-mentioned information K, especially through the use of radio waves.
Although specific embodiments of the invention have been described and illustrated, the invention is not to be limited to the specific forms or arrangements of parts so descried and illustrated. The invention is limited only by the claims.

Claims (13)

1. A method of operating a group (G) of receivers and transmitters to make the same information (Kc) available to several receivers (1) belonging to the group (G) of receivers, each receiver i in the group (G) comprising a central processing unit (2) and information storage means (3, 4, 5), the storage means storing information (SAi) specific to each receiver i, respectively, the method comprising:
enabling each receiver to access information (bi) before making (Kc) available; and
transmitting a secret key (K) to all receivers, just before making (Kc) available;
operating each receiver to calculate Kc from a pre-defined relation Kc=(K, bi, SAi) where (f) is a given function, (K) is a secret key common to all the receivers, and (bi) is information different for each receiver and for each value of the secret key (K).
2. The method according to claim 1, wherein the function (f) is such that knowing a (bi) and a (SAi), no algorithm is known which could be used to obtain the information (Kc) in a realistic time and with non negligible probability, when the secret key (K) is not known.
3. The method according to claim 1, wherein the function is such that, knowing a certain number of (b1 . . . bn) for a certain subgroup (G′) of receivers, no algorithm is known which could be used, before knowing the current K, in a realistic time and with a non negligible probability, to produce a valid pair (bk, SAi) with a legitimate (SAi), i not being one of the receivers 1 . . . n of (G′).
4. The method according to claim 1, wherein the function f has the format: f(K, bi, SAi)=bi⊕EK(SAi) where EK is a function depending on secret key (K) and where ⊕ designates a group law.
5. The method according to claim 4, wherein the function (EK) is a cryptographic encryption function and (K) a secret key used by this function.
6. The method according to claim 1, wherein the values (bi) are sent encrypted with a key (Ki) specific to each receiver of a certain group (G) of receivers.
7. The method according to claim 1, wherein each value (SAi) is a secret value known by the receiver of index i.
8. The method according to claim 1, wherein each (bi) consists of two values b1i and b2j and equally the information specific to each receiver consists of two values SAi et SAj, such that each receiver, identified by the pair of indices (i,j), combines the corresponding values b1i and b2j with the values SAi and SAj to calculate values KC 1 and KC 2 using said relation, which are in turn combined to access the information KC.
9. The method according to claim 1, wherein the information KC is a key used to decrypt a digital content.
10. The method according to claim 1, wherein the KC can be used for several minutes by the receivers, the secret key K is sent several seconds in advance and the values bi are sent regularly, starting several days in advance.
11. The method according to claim 1, wherein certain receivers find at least some of their values bi in a list of values prestored in the receivers.
12. A portable receiver object (1) belonging to a group (G) of portable objects and comprising information processing means (2) and information storage means (3, 4, 5), the storage means storing information (SAi) which is specific to the portable object and a given function (f), comprising: means to obtain access to information (bi) different for each portable object of the group (G) and for each value of the secret key (K); and means to calculate information (KC) using a relation KC=f(K, bi, SAi) where K is information common to all the portable objects and transmitted to them.
13. A transmitter device (10) to make the same information (KC) available to several receivers (1) belonging to a group (G) of receivers, each receiver storing information (SAi) specific to it, comprising: calculation means (11) designed to calculate information (bi) using a relation KC=f(K, bi, SAi) where (f) is a given function, (K) is information common to all the receivers and information (bi) is information different for each receiver and for each value of the secret key (K); and transmission means (15) designed to transmit to each receiver, a certain time before making (KC) available, the information (bi) associated with it, and to transmit secret key (K) to all the receivers, just before making (KC) available.
US10/499,475 2001-12-20 2002-12-19 Anti-pirate method for the distribution of digital content by pro-active diversified transmission, associated transmitting device and portable receiving object Expired - Fee Related US7672456B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR01/16585 2001-12-20
FR0116585A FR2835670A1 (en) 2001-12-20 2001-12-20 METHOD FOR ANTI-PIRATE DISTRIBUTION OF DIGITAL CONTENT BY PRO-ACTIVE DIVERSIFIED TRANSMISSION, TRANSCEIVER DEVICE AND ASSOCIATED PORTABLE RECEIVER OBJECT
FR0116585 2001-12-20
PCT/IB2002/005520 WO2003055131A2 (en) 2001-12-20 2002-12-19 Anti-pirate method for the distribution of digital content

Publications (2)

Publication Number Publication Date
US20050254644A1 US20050254644A1 (en) 2005-11-17
US7672456B2 true US7672456B2 (en) 2010-03-02

Family

ID=8870782

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/499,475 Expired - Fee Related US7672456B2 (en) 2001-12-20 2002-12-19 Anti-pirate method for the distribution of digital content by pro-active diversified transmission, associated transmitting device and portable receiving object

Country Status (11)

Country Link
US (1) US7672456B2 (en)
EP (1) EP1459474B1 (en)
JP (1) JP4363984B2 (en)
KR (1) KR100999188B1 (en)
CN (1) CN100449985C (en)
AU (1) AU2002353369A1 (en)
ES (1) ES2733018T3 (en)
FR (1) FR2835670A1 (en)
MX (1) MXPA04006122A (en)
RU (1) RU2304848C2 (en)
WO (1) WO2003055131A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8495755B2 (en) 2005-12-30 2013-07-23 International Business Machines Corporation Tracing traitor coalitions and preventing piracy of digital content in a broadcast encryption system

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2856539A1 (en) * 2003-06-17 2004-12-24 France Telecom Broadcasted information encryption and/or decryption tracing method, involves implementing secret cryptographic function by multiple decoders, each including memory storing mathematical description of function
FR2872651B1 (en) * 2004-07-01 2006-09-22 Viaccess Sa METHOD FOR TRANSMITTING A MESSAGE CONTAINING A DESCRIPTION OF AN ACTION TO BE EXECUTED IN A RECEIVER EQUIPMENT
US20100067692A1 (en) * 2006-12-11 2010-03-18 Mark Alan Schultz Picture-based visible anti-piracy system and method for digital cinema

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1048157B1 (en) * 1998-01-14 2004-05-06 Irdeto Access B.V. Method for transferring data from a head-end to a number of receivers
KR100667757B1 (en) 2004-07-07 2007-01-11 삼성전자주식회사 Method for self-enforcing and Method for transming and receiving Contents using the same
KR100860573B1 (en) 2006-12-01 2008-09-26 (재)대구경북과학기술연구원 Method for User Authentication

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Mayer et al. "Generalized Secret Sharing and Group-Key Distribution using Short Keys"; Jun. 1997, Compression and Complexity of Sequences 1997, Proceedings, avaiable at ieeexplore.ieee.org; pp. 30-44. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8495755B2 (en) 2005-12-30 2013-07-23 International Business Machines Corporation Tracing traitor coalitions and preventing piracy of digital content in a broadcast encryption system

Also Published As

Publication number Publication date
MXPA04006122A (en) 2005-03-31
AU2002353369A8 (en) 2003-07-09
CN1613227A (en) 2005-05-04
JP4363984B2 (en) 2009-11-11
AU2002353369A1 (en) 2003-07-09
KR100999188B1 (en) 2010-12-08
ES2733018T3 (en) 2019-11-27
KR20040079910A (en) 2004-09-16
RU2004122097A (en) 2005-03-27
US20050254644A1 (en) 2005-11-17
FR2835670A1 (en) 2003-08-08
WO2003055131A3 (en) 2003-11-27
CN100449985C (en) 2009-01-07
EP1459474B1 (en) 2019-04-10
JP2005513912A (en) 2005-05-12
WO2003055131A2 (en) 2003-07-03
EP1459474A2 (en) 2004-09-22
RU2304848C2 (en) 2007-08-20

Similar Documents

Publication Publication Date Title
Chor et al. Tracing traitors
CN101262599B (en) Method and system for data processing
US7769171B2 (en) Method for transmitting digital data in a local network
US8396218B2 (en) Cryptographic module distribution system, apparatus, and program
US6895504B1 (en) Enabling secure communications with a client
CN101448130B (en) Method, system and device for protecting data encryption in monitoring system
JPH0224694A (en) Maintenance key reproduction system using dispersion key generation data
CN101233755A (en) Multimedia data protection
WO2000049764A1 (en) Data authentication system employing encrypted integrity blocks
US6959089B1 (en) Method and apparatus for secure transmission of data
US20110271104A9 (en) Security device and building block functions
US8401190B2 (en) Portable security module pairing
KR20080099631A (en) Method for using contents with a mobile card, host device, and mobile card
US7926050B2 (en) Secure method to update software in a security module
US7672456B2 (en) Anti-pirate method for the distribution of digital content by pro-active diversified transmission, associated transmitting device and portable receiving object
CN109829322A (en) Number matchmaker's file real-time encryption and decryption method and system based on authorization message
CN102396241A (en) Method to secure access to audio/video content in a decoding unit
JP2005501481A (en) Local digital network and method for introducing new apparatus, and data broadcasting and receiving method in the network
CN111541652A (en) System for improving security of secret information keeping and transmission
JP2000322432A (en) Contents directory system
CN118013595B (en) Main control chip random cache confidentiality method and system
Dwork Copyright? Protection?
JP2001217828A (en) Method and system for authentication processing
CN118013595A (en) Main control chip random cache confidentiality method and system
JP2007324896A (en) Receiving device and cas module

Legal Events

Date Code Title Description
STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552)

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20220302