Discussion:
Testing of CPRM on SD Card
Midhun A
2007-07-28 08:08:01 UTC
Permalink
Hi All,

Our product development requires that we use the CPRM security
feature of SD card for protecting our material. I have been searching
the web for a SD host controller / Software which is CPRM capable, so
that we can write/read an encrypted SD card with the testing keys
provided by the 4C Entity) and test our prototype. But I could find
none. There are IP cores but no manufactured chips.

Has anybody of you done similar stuff ? How do I go about testing
the CPRM feature of the SD card on our prototype ?

Thanks,
Midhun.
Sriram, Kannan
2007-07-30 05:50:58 UTC
Permalink
Midhun,

There is no open-source implementation of CPRM (SD-Audio/ SD-Bind
standards). So first of all, you need to license keys from 4C (device
keys, media keys etc) and do your own implementation.

The keys that you can download from 4C site are for test purposes only,
and you can't use them to test on a real COTS SD-card. If you really
want to try those dummy keys on an SD-card, I suggest you purchase a few
"development/ test only" SD-cards from popular SD-Card manufacturers
that have been specifically encrypted using those 4C dummy keys.

Regards,
Sriram.
-----Original Message-----
From: linux-arm-kernel-bounces at lists.arm.linux.org.uk
[mailto:linux-arm-
kernel-bounces at lists.arm.linux.org.uk] On Behalf Of Midhun A
Sent: Saturday, July 28, 2007 5:08 PM
To: linux-kernel at vger.kernel.org;
linux-arm-kernel at lists.arm.linux.org.uk;
linux-mtd at lists.infradead.org
Subject: Testing of CPRM on SD Card
Hi All,
Our product development requires that we use the CPRM security
feature of SD card for protecting our material. I have been searching
the web for a SD host controller / Software which is CPRM capable, so
that we can write/read an encrypted SD card with the testing keys
provided by the 4C Entity) and test our prototype. But I could find
none. There are IP cores but no manufactured chips.
Has anybody of you done similar stuff ? How do I go about testing
the CPRM feature of the SD card on our prototype ?
Thanks,
Midhun.
-------------------------------------------------------------------
List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-
kernel
FAQ: http://www.arm.linux.org.uk/mailinglists/faq.php
Etiquette: http://www.arm.linux.org.uk/mailinglists/etiquette.php
Alan Cox
2007-07-30 12:57:23 UTC
Permalink
On Mon, 30 Jul 2007 11:20:58 +0530
Post by Sriram, Kannan
Midhun,
There is no open-source implementation of CPRM (SD-Audio/ SD-Bind
standards). So first of all, you need to license keys from 4C (device
keys, media keys etc) and do your own implementation.
Also remember that if you do your own implementation in the kernel you
will be required to publish the source code under the GPL and that will
not be permitted with the CPRM licensing. Thus you will need to do all
the work in user space.
Midhun A
2007-07-30 14:53:42 UTC
Permalink
Hey All,

Thanks a lot for the replies. I have the development keys. But the
algorithm and some intellectual property needs to be licenced from the
4C entity guys to implement it. As of now I just want to test the CPRM
functionality. So licensing the algo for a prototype testing is a huge
cost.

That is why I was looking for an already implemented solution -
hardware/software - so that I can just test. If it does not suite our
needs, then I have just paid for a chip only and not for a whole
license.

Seems like there is no other way out than shelling out money for the
license. :(

Thanks anyways,
Midhun.
Post by Alan Cox
On Mon, 30 Jul 2007 11:20:58 +0530
Post by Sriram, Kannan
Midhun,
There is no open-source implementation of CPRM (SD-Audio/ SD-Bind
standards). So first of all, you need to license keys from 4C (device
keys, media keys etc) and do your own implementation.
Also remember that if you do your own implementation in the kernel you
will be required to publish the source code under the GPL and that will
not be permitted with the CPRM licensing. Thus you will need to do all
the work in user space.
Alan Cox
2007-07-30 15:11:14 UTC
Permalink
On Mon, 30 Jul 2007 20:23:42 +0530
Post by Midhun A
Hey All,
Thanks a lot for the replies. I have the development keys. But the
algorithm and some intellectual property needs to be licenced from the
4C entity guys to implement it. As of now I just want to test the CPRM
functionality. So licensing the algo for a prototype testing is a huge
cost.
Good good, the higher the better and the less this evil stuff gets used.
Sriram, Kannan
2007-07-31 01:40:14 UTC
Permalink
-----Original Message-----
From: Alan Cox [mailto:alan at lxorguk.ukuu.org.uk]
Sent: Tuesday, July 31, 2007 12:11 AM
To: Midhun A
Cc: Sriram, Kannan; linux-kernel at vger.kernel.org; linux-arm-
kernel at lists.arm.linux.org.uk; linux-mtd at lists.infradead.org
Subject: Re: Testing of CPRM on SD Card
On Mon, 30 Jul 2007 20:23:42 +0530
Post by Midhun A
Hey All,
Thanks a lot for the replies. I have the development keys. But
the
Post by Midhun A
algorithm and some intellectual property needs to be licenced from
the
Post by Midhun A
4C entity guys to implement it. As of now I just want to test the
CPRM
Post by Midhun A
functionality. So licensing the algo for a prototype testing is a
huge
Post by Midhun A
cost.
If you have the development keys, then you should typically have the
dummy "secret constant" used in the C2 algorithm as well. Contrary to
popular belief, the C2 algorithm by itself is not proprietary, just the
256 byte secret constant used inside the C2 algorithm. Also, if you want
to just "test" CPRM, you have all the stuff you need (not the real
stuff, but stuff that you can validate using your development keys) in
the name of dummy keys. Some sample input/ output data as well as
related dummy keys and the C2 algorithms are all available at the 4C
website for free download.

I had once (long ago) validated CPRM purely using stuff downloaded from
4C (free download). But my setup was not Linux; rather on a DSP
simulator platform, and was "low level".

But if you are looking for a quick test using a real SD-card, then like
I said, your development keys won't help. You need a real set of valid
"production keys" and these I bet are very hard to get!
Good good, the higher the better and the less this evil stuff gets
used.

Loading...