Digital rights management (DRM) or technological protection measures (TPM) are tools used to prevent the leakage of copyrighted digital content and proprietary software. DRM technology often involves the usage of codes which are meant to either prohibit copying or limit the number of devices which can access a certain product. Microsoft PlayReady, Apple FairPlay, Google Widevine, Adobe PrimeTime, Marlin, etc. are some of the leading players in providing DRM services.
A DRM license is a set of technological encryptions and usage rules for the protection of copyrighted content and preventing their illegal distribution or modification. Limited duration licenses (LDLs) are licenses which have a short duration (a few minutes) with the RealTimeExpiration restriction enabled. This means that the video player must enforce the restriction at the beginning of a playback session as well as at regular intervals during the playback. The RealTimeExpiration requires the video player to check for expiration in real time and the LDLs are frequently renewed. For example, if a player receives an LDL for one minute, the license is renewed 30 seconds after playback using a proactive license acquisition triggered by the app. After one minute, the player automatically binds to the second license for another minute of playback. This continued license verification allows utmost security of DRM video protection on OTT platforms.
As licenses expire every minute, it is advisable to manually clean up the data store using the Removal Date Object. The license server can choose to include this policy in the license when it is delivered to the client. LDLs can be applied both as persistent or non-persistent licenses. Persistent licenses are those which are stored in non-volatile memory (local license store on a hard drive or in NAND memory) and last for the lifetime of the store or until the time-based restriction on the license is reached. They can be used to playback content even while the device is offline. It is recommended to use LDLs as non-persistent licenses or apply the ‘Remove Date’ object if used as a persistent license, in order to maintain a clean data store.