When using HTTP Live Streaming Encryption (HLSe) the content is encrypted with the AES 128 standard, and the manifest contains a link to a key that allows the decryption of the HLS content. This alone is not providing complete security, since once the key is obtained, the content can be easily decrypted and redistributed. There are few mechanisms in place that allow protection of the key, such as serving it over HTTPs, or different token authentication models. HLSe does secure the content against most standard users trying to get the content, but is not considered DRM level content protection. {{ site.product_short }} supports HLS encryption in Brightcove Players. For more information on Brightcove Player support, see Brightcove Player System Requirements. Also check out the limitations section below.
Apple HTTP Live Streaming (HLS), independent of encryption, is a video serving protocol that uses different bit rates. {{ site.product_short }} supports creating multiple renditions that switch intelligently between renditions as network bandwidth changes and as service fluctuates. HLS essentially breaks a video into a sequence of small file downloads, each loading one short chunk, or segment, of the video at a time over HTTP.
{{ site.product_short }} supports encryption of video renditions for Apple HLS so that publishers can protect long form video content delivered to devices via HLS. HLS encryption protects content by adding AES to our standard HLS solution. When implementing encryption for Apple HLS, {{ site.product_short }} both encrypts each of the small file segments of the video and securely delivers the files that handle rendition selection.
In addition to utilizing the AES specification for encrypting electronic data, HLS encryption further protects content in the following manner:
encryption_key_rotation_period
in custom ingest profiles.encryption_method
and encryption_key_rotation_period
fields to each of the HLS renditions defined in your ingestion profile:
{
"media_type": "video",
"reference_id": "ts0",
"format": "ts",
"type": "segmented",
"audio_codec": "aac",
"audio_bitrate": 64,
"video_codec": "h264",
"encryption_method": "aes-128",
"encryption_key_rotation_period": 10,
"video_bitrate": 450,
"decoder_bitrate_cap": 771,
"decoder_buffer_size": 1028,
"keyframe_rate": 0.5,
"max_frame_rate": 30,
"width": 480,
"height": 270,
"h264_profile": "baseline"
HLS encryption delivers secure multiple bitrate encoding wherein each rendition and each segment of each rendition is protected in multiple ways. HLS encrypted videos are available for play on desktop and mobile devices when the first rendition of a video is uploaded and encrypted. Once implemented, all videos uploaded thereafter will be protected using HLS encryption. HLS encryption adds no detectable change to playback of videos on devices. HLS encryption only affects the HLS renditions of a video file, it has no impact on MP4 renditions.