1. 程式人生 > >關於西瓜視訊加密演算法的總結

關於西瓜視訊加密演算法的總結

前段時間遇到一個視訊加密的網站。西瓜視訊

首先先通過抓包軟體抓取介面,一般抓取的介面都是json,

介面就不給你們寫了,自己可以用抓包軟體抓取,,

我們請求URL,記得加cookie 得到結果如下圖,只有一部分

可以看出視訊的地址是

但不是真實的地址。真實地址是通過加密演算法算出來,

以上就是視屏的真實地址,但是他有以上好幾個引數獲取

1首先要獲取視訊的唯一id、

可以在以上獲取

tag_id 就是視屏的唯一id

2,然後獲取r值(r值就是隨機數去後面的)

r = str(random.random())[2:]

然後計算s值

# 計算s值

url = 'http://i.snssdk.com/video/urls/v/1/toutiao/mp4/%s' % vid
n = urlparse(url).path + '?r=' + r
sb = bytes(n, encoding="utf8")
c = binascii.crc32(sb)
呼叫函授計算s值
def right_shift(self, val, n):
   return val >> n if val >= 0 else (val + 0x100000000) >> n
s = self.right_shift(c, 0)

計算完成然後憑藉地址進行請求

# 拼接url
url = url + '?r=%s&s=%s' % (r, s)

請求的地址如下

我們找不到視訊地址

他的視訊地址進行base64加密了,

最後一步匹配地址然後進行解密就OK了

解密得到真實的地址,然後我們就可以下載了。。。。。