Answers.Body: <p>If you can get a Widevine level 3 response from the license server, there have been successful DFA attacks used to extract the key. Levels 2 and 1 have never been broken.</p>
  <p>It works on Android because Android includes a secure enclave that prevents keys from leaking.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-04-05T15:14:23.143Z
Answers.LastActivityDate: 2020-12-26T07:36:21.133Z
Answers.LastEditDate: 2020-12-26T07:36:21.133Z
Answers.UserDisplayName: SlimSCSI
Body: <p>I can watch the live stream video from android device but can't watch on Windows. 
  Is it possible to download and decrypt it with FFMPEG ?</p>
  
  <p>the sample playlist</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="urn:mpeg:dash:schema:mpd:2011"
       xmlns:xlink="http://www.w3.org/1999/xlink"
       xmlns:cenc="urn:mpeg:cenc:2013"
       xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd"
       profiles="urn:mpeg:dash:profile:isoff-live:2011"
       type="dynamic"
       minimumUpdatePeriod="PT4.974S" 
       publishTime="2019-04-05T08:58:38Z" 
       availabilityStartTime="2019-03-29T01:42:08Z" 
       timeShiftBufferDepth="PT40.0S"
       suggestedPresentationDelay="PT8.0S" 
       minBufferTime="PT6.0S"&gt;
      &lt;ProgramInformation&gt;
          &lt;Title&gt;abcdefg.smil&lt;/Title&gt;
      &lt;/ProgramInformation&gt;
      &lt;Location&gt;https://xxx.yyy.zzz/liveedge_ezdrm/abcdefg.smil/manifest_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==.mpd&lt;/Location&gt;
      &lt;Period id="0" start="PT0.0S"&gt;
          &lt;AdaptationSet id="0" group="1" mimeType="video/mp4" maxWidth="1280" maxHeight="720" par="16:9" frameRate="25" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1"&gt;
              &lt;ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc" cenc:default_KID="67e5babd-0e78-5cd0-bccd-bae46f10b3c6"/&gt;
              &lt;ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed" value="Widevine"&gt;
                  &lt;cenc:pssh&gt;AAAAM3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABMiC3NpbGVudF9tYXJ5SOPclZsG&lt;/cenc:pssh&gt;
              &lt;/ContentProtection&gt;
              &lt;SegmentTemplate timescale="90000" media="chunk_ctvideo_cfm4s_rid$RepresentationID$_cs$Time$_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s" initialization="chunk_ctvideo_cfm4s_rid$RepresentationID$_cinit_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s"&gt;
                  &lt;SegmentTimeline&gt;
                      &lt;S t="56785491720" d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                      &lt;S d="360000"/&gt;
                  &lt;/SegmentTimeline&gt;
              &lt;/SegmentTemplate&gt;
              &lt;Representation id="p0va0br818380" codecs="avc1.4d401e" width="640" height="360" sar="1:1" bandwidth="818380" /&gt;
              &lt;Representation id="p0va0br1258291" codecs="avc1.4d401e" width="854" height="480" sar="1:1" bandwidth="1258291" /&gt;
              &lt;Representation id="p0va0br1887436" codecs="avc1.4d401f" width="960" height="540" sar="1:1" bandwidth="1887436" /&gt;
              &lt;Representation id="p0va0br2537779" codecs="avc1.4d401f" width="1280" height="720" sar="1:1" bandwidth="2537779" /&gt;
              &lt;Representation id="p0va0br463974" codecs="avc1.4d4015" width="426" height="240" sar="1:1" bandwidth="463974" /&gt;
              &lt;Representation id="p0va0br131891" codecs="avc1.42c00c" width="320" height="180" sar="1:1" bandwidth="131891" /&gt;
          &lt;/AdaptationSet&gt;
          &lt;AdaptationSet id="1" group="2" mimeType="audio/mp4" lang="th" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1"&gt;
              &lt;AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/&gt;
              &lt;ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc" cenc:default_KID="67e5babd-0e78-5cd0-bccd-bae46f10b3c6"/&gt;
              &lt;ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed" value="Widevine"&gt;
                  &lt;cenc:pssh&gt;AAAAM3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABMiC3NpbGVudF9tYXJ5SOPclZsG&lt;/cenc:pssh&gt;
              &lt;/ContentProtection&gt;
              &lt;SegmentTemplate timescale="48000" media="chunk_ctaudio_cfm4s_rid$RepresentationID$_cs$Time$_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s" initialization="chunk_ctaudio_cfm4s_rid$RepresentationID$_cinit_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s"&gt;
                  &lt;SegmentTimeline&gt;
                      &lt;S t="30285595824" d="192528"/&gt;
                      &lt;S d="191472"/&gt;
                      &lt;S d="192528"/&gt;
                      &lt;S d="191472"/&gt;
                      &lt;S d="192528"/&gt;
                      &lt;S d="191472"/&gt;
                      &lt;S d="192528"/&gt;
                      &lt;S d="191472"/&gt;
                      &lt;S d="192528"/&gt;
                      &lt;S d="191472"/&gt;
                  &lt;/SegmentTimeline&gt;
              &lt;/SegmentTemplate&gt;
              &lt;Representation id="p0aa0br65536" codecs="mp4a.40.2" audioSamplingRate="48000" bandwidth="65536"&gt;
          &lt;/Representation&gt;
          &lt;/AdaptationSet&gt;
      &lt;/Period&gt;
      &lt;UTCTiming schemeIdUri="urn:mpeg:dash:utc:direct:2014" value="2019-04-05T08:58:38Z"/&gt;
  &lt;/MPD&gt;
  </code></pre>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-04-05T13:14:09.170Z
Comments.Text: asking for assistance hacking an encrypted stream? cheeky.
Comments.UserDisplayName: Mark
Tags: <ffmpeg>
Title: How to decrypt DASH mp4protection with ffmpeg
UserDisplayName: Alkitab Suhano
ThreadText: # How to decrypt DASH mp4protection with ffmpeg
  
  (Asked by: username_0 on 2019-04-05)
  
  I can watch the live stream video from android device but can't watch on Windows.
  Is it possible to download and decrypt it with FFMPEG ?
  
  the sample playlist
  
  ```
  <?xml version="1.0" encoding="UTF-8"?>
  <MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="urn:mpeg:dash:schema:mpd:2011"
       xmlns:xlink="http://www.w3.org/1999/xlink"
       xmlns:cenc="urn:mpeg:cenc:2013"
       xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd"
       profiles="urn:mpeg:dash:profile:isoff-live:2011"
       type="dynamic"
       minimumUpdatePeriod="PT4.974S" 
       publishTime="2019-04-05T08:58:38Z" 
       availabilityStartTime="2019-03-29T01:42:08Z" 
       timeShiftBufferDepth="PT40.0S"
       suggestedPresentationDelay="PT8.0S" 
       minBufferTime="PT6.0S">
      <ProgramInformation>
          <Title>abcdefg.smil</Title>
      </ProgramInformation>
      <Location>https://xxx.yyy.zzz/liveedge_ezdrm/abcdefg.smil/manifest_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==.mpd</Location>
      <Period id="0" start="PT0.0S">
          <AdaptationSet id="0" group="1" mimeType="video/mp4" maxWidth="1280" maxHeight="720" par="16:9" frameRate="25" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
              <ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc" cenc:default_KID="67e5babd-0e78-5cd0-bccd-bae46f10b3c6"/>
              <ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed" value="Widevine">
                  <cenc:pssh>AAAAM3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABMiC3NpbGVudF9tYXJ5SOPclZsG</cenc:pssh>
              </ContentProtection>
              <SegmentTemplate timescale="90000" media="chunk_ctvideo_cfm4s_rid$RepresentationID$_cs$Time$_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s" initialization="chunk_ctvideo_cfm4s_rid$RepresentationID$_cinit_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s">
                  <SegmentTimeline>
                      <S t="56785491720" d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                      <S d="360000"/>
                  </SegmentTimeline>
              </SegmentTemplate>
              <Representation id="p0va0br818380" codecs="avc1.4d401e" width="640" height="360" sar="1:1" bandwidth="818380" />
              <Representation id="p0va0br1258291" codecs="avc1.4d401e" width="854" height="480" sar="1:1" bandwidth="1258291" />
              <Representation id="p0va0br1887436" codecs="avc1.4d401f" width="960" height="540" sar="1:1" bandwidth="1887436" />
              <Representation id="p0va0br2537779" codecs="avc1.4d401f" width="1280" height="720" sar="1:1" bandwidth="2537779" />
              <Representation id="p0va0br463974" codecs="avc1.4d4015" width="426" height="240" sar="1:1" bandwidth="463974" />
              <Representation id="p0va0br131891" codecs="avc1.42c00c" width="320" height="180" sar="1:1" bandwidth="131891" />
          </AdaptationSet>
          <AdaptationSet id="1" group="2" mimeType="audio/mp4" lang="th" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
              <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
              <ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc" cenc:default_KID="67e5babd-0e78-5cd0-bccd-bae46f10b3c6"/>
              <ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed" value="Widevine">
                  <cenc:pssh>AAAAM3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABMiC3NpbGVudF9tYXJ5SOPclZsG</cenc:pssh>
              </ContentProtection>
              <SegmentTemplate timescale="48000" media="chunk_ctaudio_cfm4s_rid$RepresentationID$_cs$Time$_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s" initialization="chunk_ctaudio_cfm4s_rid$RepresentationID$_cinit_w43695283_qYXBwaWQ9dHJ1ZWlkdjImdHlwZT1saXZlJnZpc2l0b3I9bW9iaWxlJnVpZD00MzM1MTE1MA==_mpd.m4s">
                  <SegmentTimeline>
                      <S t="30285595824" d="192528"/>
                      <S d="191472"/>
                      <S d="192528"/>
                      <S d="191472"/>
                      <S d="192528"/>
                      <S d="191472"/>
                      <S d="192528"/>
                      <S d="191472"/>
                      <S d="192528"/>
                      <S d="191472"/>
                  </SegmentTimeline>
              </SegmentTemplate>
              <Representation id="p0aa0br65536" codecs="mp4a.40.2" audioSamplingRate="48000" bandwidth="65536">
          </Representation>
          </AdaptationSet>
      </Period>
      <UTCTiming schemeIdUri="urn:mpeg:dash:utc:direct:2014" value="2019-04-05T08:58:38Z"/>
  </MPD>
  
  ```
  
  **Tags:** ffmpeg
  
  > **Comments:**
  > **username_1**: asking for assistance hacking an encrypted stream? cheeky.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2019-04-05. Score: 1
  
  If you can get a Widevine level 3 response from the license server, there have been successful DFA attacks used to extract the key. Levels 2 and 1 have never been broken.
  
  It works on Android because Android includes a secure enclave that prevents keys from leaking.
  
  
  ---
  
  