should consist of the following three steps instead of
two steps.
1. Assignment step: Assign versions of the con-
tent/key to currently known innocent devices
2. Forensic Analysis step: Based on the recovered
forensic evidences, trace to the traitors
3. Revocation step: loop to step 1 but exclude the
currently discovered traitors.
The newly added step 3 brings in differentrequire-
ments on the design. For the assignment task, now
one must consider new assignment after revocations.
For the second task, now one must consider traceabil-
ity after revocation, and the overall traceability over
the lifetime of the tracing system. We have stud-
ied carefully the NNL tracing and JL tracing scheme
and compare their differences on the design principles
when carrying out the above two tasks. Our studies
reveal fruitful insights on how to design a more effi-
cient traitor tracing system in the future.
3.1 Assignment: Tree vs. Matrix
Even though they were designed for two different at-
tacks, we believe there are other underlying reasons
why the tree-based NNL scheme has traceability of
O(T
3
) while the matrix-based JL scheme achieves su-
perlinear O(T) traceability.
As one can imagine, in a tree-based system, any
two devices may share many keys. For example,
any two neighboring devices share all the keys ex-
cept their leaf keys. During traitor detection process,
it takes many forensic testings in order to distinguish
two neighboring subsets (or devices). On contrast, in
a matrix-based system like JL scheme, any two de-
vices may share much fewer keys. For example, sup-
pose a Reed-Solomon code < n, k, d > is used to as-
sign the keys to devices, any two devices have at least
d different keys where d is the Hamming distance of
the Reed-Solomon code and d is made as big as pos-
sible. In this type of design, any two devices are as-
signed maximally apart. This contributes to the supe-
rior traceability achieved in JL scheme. As a design
principle, it seems an efficient tracing scheme needs
to assign the keys to devices in a way that makes any
two devices share as few key as possible.
3.2 Detection: Dynamic vs. Static
From traitor detection process point of view, it is easy
to see that NNL tracing process is dynamic in na-
ture while JL scheme is static in nature. In NNL
tracing, when it identifies the traitorous subset at the
current level, tracing moves down to the next lower
level. New forensic MKBs will be constructed based
on the new partition at the new level. This process is
repeated until it reaches the leaf level and an actual
traitor can be identified. As one can see, the tracing
reacts to the previous testing results.
On contrast, the matrix-based JL scheme is static.
In the matrix, each column corresponds to a movie
content. Different columns clump different devices
together. The tracing agency recovers a sequence of
pirated evidences from different columns, each pro-
viding to license agency some forensic information.
It is not required to react to the previous forensic re-
sults. As a result, MKBs can be produced way ahead
of time. All those MKBs are guaranteed to provide
forensic information. This provides some advantage
for operation in real world.
As to traitor detection at each step, NNL tracing
attempts to find one suspect subset and further split
into two smaller subsets. On contrast, JL scheme em-
ploys a detection algorithm which tries to detect a
coalition of suspects all together. As shown in (Jin
et al., 2008), it is a much more efficient detection ap-
proach than detecting traitors one by one.
3.3 Continuous Traceability and
Revocation Capacity
In a matrix-based tracing system, when there are revo-
cations, a licensing agency producing a multi-column
key block must spread the variant keys across all the
columns. For example, in a 256 X 255 matrix, sup-
pose the licensing agency has 256 variant keys (q =
256) that has to spread across 4 columns. So it would
encrypt only 64 unique movie variant keys in the 255
un-compromised key cells in the first column. In
other words, more than one cell (4 in this example)
would encrypt the same variant key. In effect, this re-
duces the original q; the effective q is q/c, where c is
the number of columns. In this example, the effective
q is reduced from 256 to 64. As shown in (H. Jin and
Nusser, 2004), in reality the extra bandwidth restrict
the number of variants. Here that number is reduced
even more by revocation. And our example has been
the minimal case; the situation gets much worse as re-
vocation continues over the life of the system and the
number of columns in the key blocks gets larger and
larger.
However, if the licensing agency can react to re-
sults from previously recovered movies, some of the
inefficiencies of multi-column key blocks can be re-
moved. For example, suppose the tracing agency has
recovered a pirated key (or content version) corre-
sponding to one media key variant and has deduced
that attackers have at least one tracing key in a four-
SECRYPT 2009 - International Conference on Security and Cryptography
272