保利威
关键断点
case “demux”:
r.demuxer.push(e.data, e.decryptdata, e.initSegment, e.audioCodec, e.videoCodec, e.timeOffset, e.discontinuity, e.trackSwitch, e.contiguous, e.duration, e.accurateTimeOffset, e.defaultInitPTS)
}
t.frag.decryptdata
i.baseuri
btoa(String.fromCharCode.apply(null, i.key));
Array.prototype.map.call(i.iv, x => (‘00’ + x.toString(16)).slice(-2)).join(‘’);
l.postMessage({
========================================================
baidubce.com
关键断点:
for (var o = JSON.parse®, f = o.encryptedVideoKey, c = u[“default”].utils.utf8.toBytes(“72Fhskjglp8qjpqx”), h = new u[“default”].ModeOfOperation.ecb©, p = [], m = 0; m < f.length; m += 2)
p.push(parseInt(f[m] + f[m + 1], 16));
var y = h.decrypt§
, _ = u[“default”].utils.utf8.fromBytes(y)
========================================================
阿里
关键断点
1.Network 地方勾选Disable cache
关键字 i._sce_dlgtqredxx FOR地方下断点
btoa(String.fromCharCode.apply(null, new Uint8Array(i._sce_dlgtqredxx)))
中公关键断点
o.loadsuccess = function(t, e, i, r) {
if (void 0 === r && (r = null),
i.isSidxRequest)
return this._handleSidxRequest(t, i),
void this._handlePlaylistLoaded(t, e, i, r);
if (this.resetInternalLoader(i.type),
“string” != typeof t.data)
throw new Error(‘expected responseType of “text” for PlaylistLoader’);
if (1 == this.hls.urlencode) {
var n = new Date
, a = this.toDate(n.getFullYear()) + “.~” + this.toDate(n.getMonth() + 1) + “,.” + this.toDate(n.getDate()) + “,().”
, o = N.a.enc.Base64.stringify(N.a.enc.Base64.parse(t.data))
, s = O.a.decrypt(o, N.a.enc.Utf8.parse(a), {
iv: N.a.enc.Utf8.parse(a),
mode: N.a.mode.CBC,
padding: N.a.pad.Pkcs7
});
t.data = s.toString(N.a.enc.Utf8)
}
核心 t.data = s.toString(N.a.enc.Utf8)