1. LAS sends content key Ks-1 generated in section
3.2 to CDS.
2. CDS encrypts content with Ks-1. Furthermore
CDS generates H(DC) and sends it to LAS.
3. LAS generates digital signature within H(DC)
H(DC) and sends SIGs(H(DC)) to CDS.
4. CDS sends encrypted content SE(DC, Ks-1) and
Issue Certification Code SIGs(H(DC)) to STB.
5. STB adds SE(DC, Ks-1) and SIGs(H(DC)) to
Content Using Info..
If the line on which the content distributes is
multicast, all Ks-x (0<x<m) are the same.
3.4 Content Viewing
At content viewing, legitimacy of content use is
checked by content viewing program. We show
procedure of this program as follows:
1. SE(DC, Ks-1a), SIGs(H(DC)), g, p and g
t
mod p
(in case of multicast, g
t{f(ID2a)+ ... + f(IDma)}
mod p
too) are inputted into client program. Furthermore
ID1a is automatically inputted into this program.
2. Client program generates f(ID1a) from ID1a
through transforming function. This program
generates Ks-1a = g
tf(ID1a)
mod p (in case of
multicast, g
t{f(ID1a)+f(ID2a)+ ... + f(IDma)}
mod p) from
f(ID1a) and Content Key Seed.
3. Client program decrypts SE(DC, Ks-1a) with Ks-
1a and obtain DC.
4. Client program verifies Issue Certification Code
SIGs(H(DC)) with DC and verifying key of LAS.
5. If verification of Issue Certification Code is
succeeded, STB can let user view content.
However DC without encryption does not
remained in recordable file.
When user views copied content on PP, viewing
program installed in PP runs with same procedure.
3.5 Content Viewing
We show copying content procedure in figure 5.
1. STB send g and p to PP.
2. PP generates public key for DH g
f(ID1b)
mod p
from g, p and automatic inputted ID1b. PP
encrypts public key with digital signature
PE1b(g
f(ID1b)
mod p|| SIG1b(g
f(ID1b)
mod p)) and
sends it to STB.
3. STB generates Copying Request for PP H(g
f(ID1b)
mod p ||SIG1a[SIGs(H(DC))||H(g
f(ID1b)
mod p)]
and sends it to LAS.
4. LAS checks Copying Request whether the
number of copies is less than limited number or
not. If Checking is succeeded, LAS generates
Copy Permission SIGs(H(g
f(ID1b)
mod p)) and
sends it to STB. Furthermore LAS records a part
of Copying Request
SIG1a[SIGs(H(DC))||H(g
f(ID1b)
mod p)] into Copy
Record and reduces the remained number of
copies.
5. STB generates Re-encryption Key K1a-1b, Re-
encryption Key Seed g
f(ID1a)
mod p and Re-
encrypted Content SE(DC, K1a-1b) using
Content Using Info., Account Info., ID1a and
PP’s public key. In this time, if STB does not
obtain Copy Permission, STB cannot generate
these data.
6. STB sends g
f(ID1a)
mod p, SE(DC, K1a-1b) and
Issue Certification Code SIGs(H(DC)) to PP.
7. PP can view content under the procedure which is
same as section 3.4.
Only STB can copy content for PP. For
verification of STB which can copy content, STB
Certification Code is used. Copying program verifies
STB with this code. We show procedure of this
program as follows:
1. Copying program generates Content Key Ks-1a
from ID1a and Content Key Seed.
2. Copying program verifies Account Info.
Account||SIGs(Account).
3. Copying program decrypts STB Certification
Code with Ks-1a. This program verifies STB
comparing decrypted data of STB Certification
Code with Account Info.
4. Copying program decrypts SE(DC, Ks-1a) with
Ks-1a and obtains DC.
5. Copying program verifies Issue Certification
Code SIGs(H(DC)) with decrypted DC.
6. Copying program generates Copy Request for PP
H(g
f(ID1b)
mod p) ||SIG1a[SIGs(H(DC))||H(g
f(ID1b)
mod p)] from public key of PP for DH and sends
it to LAS.
7. LAS checks Copying Request whether the
number of copies is less than limited number or
not. If Checking is succeeded, LAS generates
Copy Permission SIGs(H(g
f(ID1b)
mod p)) and
sends it to Copying Program in STB.
8. After verification of Copy Permission, copying
program generates Re-encryption Key K1a-1b
and Re-encryption Key Seed g
f(ID1a)
mod p.
9. Copy program re-encrypts DC with K1a-1b.
Furthermore copy program generates Re-
encrypted Content SE(DC, K1a-1b) and Re-
encryption Key Seed g
f(ID1a)
mod p and sends it to
PP with Issue Certification Code.
4 SIMULATION
In this chapter, we show the result of evaluation.
Environment of simulation is following:
SECRYPT 2007 - International Conference on Security and Cryptography
430