Custom DRM implementation
paulocoutinhox opened this issue · 5 comments
Hi,
Today we use at our startup an ePub library that support default ePub DRM pattern specs. So, for all encrypted file, we receive the crypted data as byte array and return the byte array decrypted with our custom DRM solution.
How i can do the same using Readium2?
In my case i need know the encrypted data and a way to return the decrypted data using our function.
Can anyone help me?
Thanks.
Hi,
DRM solutions from Readium is the LCP Readium
https://www.edrlab.org/readium-lcp/
I am from Brazil and we are EDRLab partner to apply LCP DRM
We have a marketplace in develop
https://dualbooks.digital/
Using LCP DRM to distribute ebooks
We can talk about your needs
Hello,
You can use a custom DRM as described in the Content Protection proposal.
But, if i read correctly, it need a server like LCP, no?
In my DRM case, everything is local.
I don't find anything about how to implement without server/lcp.
Can you help me understand?
No, it has nothing to do with LCP.
You need to provide the Streamer
with a specific implementation of the ContentProtection
interface. In that implementation, you'll build a custom Fetcher
which will be able to decrypt your data bytes.
You can look at the LCP implementation as a reference example:
https://github.com/readium/kotlin-toolkit/blob/main/readium/lcp/src/main/java/org/readium/r2/lcp/LcpContentProtection.kt
https://github.com/readium/kotlin-toolkit/blob/main/readium/lcp/src/main/java/org/readium/r2/lcp/LcpDecryptor.kt
Closing as there's nothing to do on architecture
. Feel free to open discussions on the Kotlin or Swift repos if you have some questions related to the implementation.