I am a programmer who is doing research into whitebox cryptography.

What I hope to do is to use WBC for an DRM application however as some of us may know, WBC is theoretically impossible therefore I am currently trying to find out how other people have been using WBC and learn from their examples.

thank you!


I hope you already found it, but a good starting point for research on this subject would be whiteboxcrypto.com

It took me a while to understand exactly how white-box is used some sort of securely - not so much because the key can be recovered from the white box - but because one can isolate the white-box and use it's encrypt or decrypt functionality to do whatever they want, without even needing the key (See also this question).

The way DRM is implemented in practice is as a mix of standard obfuscation techniques (tricks to make code unreadable) and white-box crypto (a cryptographic algorithm implemented as a network of encoded lookup tables$^*$). Standard obfuscation techniques are a quite effective way of protecting DRM, but they have a big flaw: they cannot really protect the key in cryptographic algorithms. White-box crypto can do exactly that, but is not very effective in protecting access to itself. Combined however they are pretty good.

Of course, neither general obfuscation techniques nor white-box techniques currently are impossible to crack - they just make it a lot harder (more expensive) to do.

$^*$ Assuming you are using symmetric algorithms like AES or DES


Not the answer you're looking for? Browse other questions tagged or ask your own question.