Apple FairPlay KSM (Key Security Module) module Java based implementation as per FairPlay Streaming Programming Guide.
Implements full KSM functionality:
- Receive an SPC message from an app running on an Apple app/device and parse it.
- Check the SPC's certificate hash value against the AC.
- Decrypt the SPC payload.
- Verify that the Apple app/device is using a supported version of FPS software.
- Decrypt the session key and random value block in the SPC payload.
- Check the integrity of the SPC message.
- Encrypt the content key.
- Assemble the contents of the CKC payload.
- Encrypt the CKC payload.
- Construct the CKC message and send it to the app on the Apple device.
- Renting and leasing [In progress]
- Offline playback [In progress]
- Error codes [In progress]
FAQ
-
Can the development credentials in the FairPlay Streaming Server SDK be used for streaming protected content using FPS secure key delivery?
https://developer.apple.com/library/content/qa/qa1967/_index.html#//apple_ref/doc/uid/DTS40017673
-
How to debug FairPlay Streaming?
https://developer.apple.com/library/content/technotes/tn2454/_index.html