2016-05-23 2 views
1

Für zensierte Videos wie zB vevo benutzt du Tube Signatur-Chiffre, um seine Signatur zu dekodieren. Sie können auf diesen Link verweisen, um zu verstehen, was ich sage.Kann mir jemand bei der Entschlüsselung der You-Tube-Signatur für zensierte Videos helfen

YouTube signature decipher with an working example for VB.Net

Bitte öffnen und den Link oben lesen, die Frage zu verstehen.

Aber vor kurzem hat youtube seine js Datei änderte ihren Verschlüsselungscode Link-

https://s.ytimg.com/yts/jsbin/player-en_US-vflGaNMBw/base.js

zu ändern, nachdem die e.sig i die nr Funktion

nr=function(a){ 
    a=a.split(""); 
    mr.qv(a,69);mr.qv(a,26);mr.NC(a,38);mr.qv(a,8);mr.qv(a,22);mr.y9(a,1); 
    return a.join("") 

Java Script ist nicht zu sehen zu finden, meine Muttersprache, so kann ich diese Funktion nicht verstehen.

Allerdings kann ich eine verschlüsselte und entschlüsselte Sigaturen von einem Online-Youtube-Video-Downloader nach dem Download-Link zur Verfügung stellen.

verschlüsselte Signatur

-3E2D315C8113141CBBA08986DC4898B7190B7278.6349B6F283A287624084AF146535A2FEF0596458

entschlüsselte Signatur

097F54F65B8282E9E1C04DB6235C18C4DF52176B.0341321C5E755A7B7151ADABEDCBC1F5B0592A47

+0

Ich denke, dass Sie anfangen konnten, indem Sie mehr über ** mr ** und diese zwei Buchstabenfunktionenfunktionen fanden ...Sie alle scheinen das Array ** a ** und einen int-Parameter zu erhalten und müssen etwas damit machen. versuchen Sie, diese Funktionen in den minimierten Quellen zu finden ... Dort können Sie einige Hinweise finden, was getan werden muss, vorausgesetzt, Sie möchten dies auf einem benutzerdefinierten Client reproduzieren ... Bearbeiten: Posten Sie die Funktionen hier, wenn Sie Hilfe benötigen, um herauszufinden sie heraus ...;) –

+0

@joaoBeno die js-Datei hat alle Funktionen – Sumit

Antwort

0

So wird die Funktion

nr=function(a){ 
    a=a.split(""); 
    mr.qv(a,69);mr.qv(a,26);mr.NC(a,38);mr.qv(a,8);mr.qv(a,22);mr.y9(a,1); 
    return a.join("") 
} 

einfach das ein in eine Reihe von Zeichen explodieren, dann gibt es diese Funktionen:

var mr = { 
    qv: function(a, b) { 
     var c = a[0]; 
     a[0] = a[b % a.length]; 
     a[b] = c 
    }, 
    y9: function(a, b) { 
     a.splice(0, b) 
    }, 
    NC: function(a) { 
     a.reverse() 
    } 
}; 
  • QV: Er empfängt das a Array, speichern es ist Zuerst Wert auf c var, dann den ersten Wert als Modulo b Wert und eine Länge, dann setzen Sie den b Wert auf a Array als c Wert.
  • y9: Er erhält das a Array und von 0 ... Grundsätzlich entfernen Sie das erste Element des Arrays auf Ihrer Funktion ...
  • NC Start b Elemente entfernen: einfach die a Array zurück.

Ich glaube, Sie brauchen, um die Änderungen zu verfolgen qv zu Zeichenfolge tun ... versuchen und sehen, ob Sie einen Haltepunkt in der es auf Firefox-Debugger einstellen (ich würde für diese Angelegenheit nicht gestoßen Chrome ...: D) und sehen, ob es Ihren verschlüsselten Schlüssel am Ende bekommt, oder wenn es mehr Code darin gibt ...

Verwandte Themen