from what I gather, when using PHDS, the per-content encryption key is built from the common-key and the content ID (which in PHDS seems to be the filename).
When fetching the file manifest (<file>.f4m), a new license is returned every time.
When fetching the actual file segments (<file>SegX-FragY), no "session" information or similar is sent. However, the resulting file is never the same between downloads.
However, even if the files differ between fetches, it seems that if I cache the segments, serving the same identical segmentes to different users, the different license have no problem decrypting them.
Is this something which I can depend on? I.e, I let the manifest requests through every time, so each client gets a their own license. As long as the common-key remains the same, is it safe to cache the segment files, thus allowing us to use regular HTTP caches in front of the FMIS server in order to scale better?
The diffs in the segment files, how is this explained? Is this the result of different IVs?
Also, does the development version of FMIS server have any limitation in regards to number of connections or otherwise? The RTMP functionality has max 10 simultanous connections if I recall correct, but the same does not seem to apply for HDS/PHDS. Just want to check if this is the case, or if something in our testing is broken.
Yes, common-key ( a file) and Content ID (any string uniquely representing your content) is used to generate final encryption key.
When fetching f4m file, a drm meta is generated which embeds the license (so client (AIR app/Flash app) need not to contact the license server). DRM is either embedded into the F4m or served seperately. This is unique per content.
Actual content file are encrypted with the encryption key and is thus cachable. DRM meta-data has all the info about the kind of clients it is acceptable and time-validity of embedded license as enforced by the policy file on the server.
Thats good, I should thus be able to cache every segment without any problem, nice!
Can I serve the license seperatly with FMIS4.5, with a seperate Flash Access server? If so, how?
Any info on the max-connections?
There are two modes :
1. Flash Access
With PHDS, license is always embedded in the drm meta-data
While in FlashAccessV2(V3) protection scheme, drm meta includes the license server url (from where license has to be fetched).
In FMS, under apache=>conf=>httpd.conf you can set proper protectionscheme .
for encryption settings for FlashAccessV2(V3)