2014-11-22 47 views
0

嗨,我想解密在YouTube頁面中的簽名。我通過原始簽名下面的函數,因爲它在那裏在youtube html5player js(http://s.ytimg.com/yts/jsbin/html5player-en_US-vflr38Js6/html5player.js)。但此函數只是刪除第一個和最後一個兩個人物。我錯過任何步驟請賜教。謝謝。Youtube解碼簽名不能按預期工作

var ar = { 
    KF: function(a, b) { 
     a.splice(0, b); 
    }, 
    Xm: function(a) { 
     a.reverse(); 
    }, 
    BT: function(a, b) { 
     var c = a[0]; 
     a[0] = a[b % a.length]; 
     a[b] = c; 
    } 
}; 

function br(a) { 
    a = a.split(""); 

    ar.BT(a, 63); 
    ar.KF(a, 1); 
    ar.Xm(a, 43); 
    ar.BT(a, 46); 
    ar.KF(a, 2); 
    ar.Xm(a, 0); 
    ar.KF(a, 3); 
    return a.join("") 
}; 

console.log(br("6A51A51911872F6C22D0BD925F0AC6865F8BBB63AE24.8933FFE6E311091075A664E5B940181409139CEAE0")); 

原單:

6A51A51911872F6C22D0BD925F0AC6865F8BBB63AE24.8933FFE6E311091075A664E5B940181409139CEAE0 

結果:

A51911872F6C22D0BD925F0AC6865F8BBB630E24.8933FFE6E3110910756664E5B940181409139CEA 

預期的結果是類似下面的東西:

8C06A0DDD566FD3C3B278CFD2BFE39AFD8A0B5C3.3AFF1E5C1C378DB9751628A61FEE0130041F556F 

回答

0

解密的簽名是正確的。你做得很對,但總是記得使用最新的算法來解密加密簽名。在這裏我可以看到您使用的是舊的HTML5 js播放器文件。因此,如果您使用的是舊文件,那麼解密後的簽名將不適用於視頻。

+0

嘿謝謝你的回覆。這是最新的html播放器js我可以在源代碼中找到..你能告訴我什麼新的html5播放器js看起來像? – 2014-11-22 10:28:17

+0

錯了。這是最新的文件://s.ytimg.com/yts/jsbin/html5player-zh_CN-vflEhuJxd/html5player.js。對於最新的HTML5播放器js文件,您已解析網頁並檢查網頁源代碼中的ytplayer.config的js組件。 – Akhilesh 2014-11-22 10:32:49

+0

嗨,我首先強迫youtube使用html5,但ytplayer.config只顯示swf文件...並且第二我用你的新玩家,只有相同的功能..但仍然我的視頻不下載,我得到403錯誤空白文件 – 2014-11-22 10:45:11