Beruflich Dokumente
Kultur Dokumente
Nachdem Sky mal wieder etwas an der Verschlüsselung geändert hat, ist es neuerdings nötig, dass man
neben der reinen Smartcard auch noch die Parameter BoxID, ins7e sowie k1_unique ermitteln bzw.
berechnen muss. Wie die funktioniert, wird im Folgenden erläutert.
Voraussetzungen
Sky v13 Smartcard
OSCam 1.20_svn Build: r11572 oder neuer mit passendem Smartcard Reader
Original Sky Receiver
Viel Rechenleistung, Details siehe Abschnitt K1_unique berechnen
2. ins7e ermitteln
Bevor die Sky Hardware wieder abgebaut werden kann, muss noch die sogenannte CWE abgelesen
werden, woraus dann später die ins7e extrahiert wird. Dazu beim Sky Receiver vom Typ Pace
TDS866NSDX (siehe Typenschild auf dem Gehäuseboden) auf die „MENÜ“ Taste auf der
Fernbedienung drücken, danach unter dem Punkt „Einstellungen“ das „Service-Menü“, dort
„Smartcard/Jugendschutz“ und dort schließlich den Punkt „CA Diagnose“ auswählen. Hier nur der
Eintrag neben „CWE“ von Bedeutung. Dieser erstreckt sich über mehrere Zeilen. Darin ist die
sogenannte ins7e Payload enthalten. Je nach Receiver Typ beginnt die Payload anders, siehe Tabelle
1.
Seite 1 von 7
BigBear46, v1.0 2020-02-16
Sky Receiver Typ Beginn der ins7e
Pace TDS866NSDX 42733510
Humax PDR iCord HD 42740301
Humax iHD Fox / iHD PVR 42741311
Vodafone TV Center 53710500
Sky Q 6E736B21
Tabelle 1 - ins7e Beginn
Hat man den Anfang der ins7e in der abgelesenen CWE gefunden, sind die darauffolgenden 24 Stellen
(der Teil in Tabelle 1 ist darin eingeschlossen) der erste Teil der ins7e. Besser zweimal prüfen ob man
wirkliche keinen Fehler beim Abschreiben gemacht hat. Der zweite Teil ist mit
0000000000010202030002020203 immer gleich. Mit beiden Teilen zusammen hat man nun die
52-stellige ins7e Payload.
3. BoxID berechnen
Aus der zuvor ermittelten ins7e kann nun die BoxID „berechnet“ werden. Dafür kopiert am aus der
ins7e den Bereich von der 17. bis 24. Stelle (jeweils einschließlich). Von diesem Extrakt nimmt man die
ersten beiden Stellen und addiert +80 in HEX und ersetzt die ersten beiden Stellen des Extrakts mit
dem so errechneten Ergebnis. Damit hat man jetzt die 8 stellige BoxID berechnet.
Wer nicht mit dem Hexadezimalsystem vertraut ist, kann dafür entweder einen Taschenrechner oder
ein Onlinetool wie dieses hier nutzen: https://www.calculator.net/hex-calculator.html
Einfach unter „Hexadecimal Calculation—Add, Subtract, Multiply, or Divide“ die ersten beiden Stellen
des Extrakts ins erste Feld eingeben, daneben die Rechenoperation „+“ auswählen, in das Feld daneben
„80“ eingeben und auf „Calculate“ klicken und schon wird das Ergebnis angezeigt.
K1_unique ermitteln
Nachdem nun bereits ins7e Payload und BoxID ermittelt wurden, geht es in diesem Abschnitt um die
Ermittlung des k1_unique Keys. Also den Schlüssel, den man neuerdings braucht um zusammen mit
der Sky v13 Smartcard einen Sender zu entschlüsseln.
1. Oscam einrichten
Die Smartcard muss jetzt in einen Kartenleser gesteckt werden, der mit einem Linux Receiver
verbunden ist (interne Kartenleser gehen logischerweise aus), auf welchem Oscam 1.20_svn Build:
r11572 oder neuer läuft. In meinem Fall war das die VU+ Solo2. Je nach Linux Receiver/Kartenleser
müssen die Parameter „protocol“ und/oder „device“ evtl. angepasst werden, aber diese Kenntnis setze
Seite 2 von 7
BigBear46, v1.0 2020-02-16
ich hier mal voraus. Auch vorausgesetzt wird eine funktionierende Oscam Konfiguration für den
eigenen Linux Receiver.
Für eine VU+ Solo2 mit v13 Smartcard im oberen internen Kartenleser steckend ergibt sich folgende
oscam.server:
[reader]
label = V13
protocol = internal
device = /dev/sci1
caid = 09C4
boxid =
ins7e =
ins7e11 = 14
k1_unique =
detect = cd
mhz = 450
cardmhz = 2700
group =1
emmcache = 1,1,2,0
blockemm-unknown =1
blockemm-u =1
blockemm-s =1
blockemm-g =1
saveemm-u =1
disablecrccws =1
Hinter die gelb markierten Paramter „boxid =“ und „ins7e =“ muss noch die
zuvor ermittelte BoxID sowie die ins7e Payload eingetragen werden. Danach wird das ganze
gespeichert und die Smartcard wird auf der Status Seite des Oscam Webinterface als „CARDOK“
angezeigt. Siehe Abbildung 1, in gelb markiert.
Abbildung 1 – CARDOK
Jetzt wird der Linux Receiver auf den Sender Sky Krimi HD geschaltet. Im Zweifel vorher einen
Sendersuchlauf durchführen, damit die Frequenz des Senders auch wirklich die aktuelle ist!
Seite 3 von 7
BigBear46, v1.0 2020-02-16
2. ECW ermitteln
Anschließend oben auf „Live Log“ klicken. Hier dann unten auf „Show Settings“ und schließlich in der
Zeile „Switch Debug from[…]“ auf „4“ (in Abbildung 2 rot eingerahmt) klicken, in das Feld „Search01“
(in Abbildung 2 gelb eingerahmt) den Wert „55 01 83“ eintragen und auf „Save“ klicken. Der Haken bei
Parameter „Beep“ ist optional, er hat nur zur Folge, dass der Browser einen Piepton von sich gibt, jedes
Mal, wenn der gesuchte Wert im Live Log gefunden wird.
Nun einige Sekunden warten bis im Live Log erstmals der gesuchte Wert „55 01 83“ erscheint. Die
betreffende Zeile wird blau markiert, siehe Abbildung 2. Nun den Live Log mit Klick auf die Schaltfläche
„Stop Log“ (grün eingerahmt in Abbildung 2) einfrieren.
Wichtig ist, dass der Wert „55 01 83“ gefunden wird, da damit belegt wird, dass die zuvor ermittelten
Werte für BoxID und ins7e korrekt sind und die Smartcard im sogenannten Mode 83 arbeitet.
Ist das gegeben, wird im Live Log die Zeile mit „crypted CW is: […]“ (schwarz eingerahmt in Abbildung
2) gesucht. Angenommen dort steht „crypted CW is: 1F934523CD5E6A6F0000000000000000“. So
Seite 4 von 7
BigBear46, v1.0 2020-02-16
würde die ECW lauten: „1F934523CD5E6A6F“. Die 16 Nullen am Schluss werden also ignoriert.
Genauso könnte dort stehen „crypted CW is: 00000000000000001F934523CD5E6A6F“. In dem Fall
würden die ersten 16 Nullen ignoriert werden. Der ECW wird kopiert und zusammen mit Datum und
Uhrzeit in einer Textdatei separat gespeichert. Bitte nicht abschreiben um Tippfehler auszuschließen!
Die prinzipielle Vorgehensweise habe ich aus dem Thread hier vom User shiring abgeleitet, danke für
die Vorlage.
4. DCW ermitteln
Nun wird noch der passende DCW zu dem zuvor kopierten ECM Hash benötigt. Dafür wird ein Oscam
Log von einer Sky v13 Smartcard benötigt, die zu dem Zeitpunkt, an dem man den ECM Hash ermittelt
hat, bereits den zu diesem Zeitpunkt eingestellten Sender entschlüsselt hat. Diese Loge wird
freundlicherweise hier von anderen Usern für den Sender Sky Krimi HD bereitgestellt.
https://www.digital-eliteboard.com/threads/ecw-dcw-sammel-und-anfragethread-v13-nur-sky-
krimi-hd.484436/page-21
Meist wird nur in den Abendstunden für eine gewisse Zeit geloggt. Daher ist es wichtig, dass ECW und
ECM Hash zuvor innerhalb des Zeitraum diesen Logs ermittelt wurden. Hat ein User dann ein Log für
den Zeitraum, in dem ECW und ECM Hash ermittelt wurden, hochgeladen, so lädt man diesen runter,
entpackt ggf. und öffnet in dann mit einem Texteditor. Dort sucht man dann mit Strg + F (unter
Windows zumindest ) nach dem zuvor im Schritt 3. ECM Hash ermitteln gespeicherten ECM Hash.
Abbildung 3 zeigt beispielhaft wie der Log schematisch aufgebaut ist. Im blau eingerahmten Bereich
steht jeweils der ECM Hash und daneben im grün eingerahmten Bereich der passende DCW.
Aus die DCW zum zuvor beispielhaft genannten ECM Hash „1FF2E4432871129A01EA1A135286BB78“
würde also lauten „D6FE6C5EFFF1D9CE“. Analog wie bereits beim ECW werden auch hier die 16 Nullen
vor oder hinter dem DCW ignoriert.
Seite 5 von 7
BigBear46, v1.0 2020-02-16
Abbildung 3 - DCW Log
K1_unique berechnen
Nachdem nun ECW und DCW ermittelt wurden, kann daraus der k1_unique Key erraten werden. Dieser
Vorgang des Erratens läuft über das Programm Hashcat automatisiert ab. Je nach Rechenleistung
dauert dieser Vorgang zwischen wenigen Stunden und einigen Monaten bis Jahre bei schwacher
Rechenleistung. Zudem spielt Glück hier eine entscheidende Rolle. Mit viel Glück muss Hashcat nur
wenige Prozent aller möglichen Kombinationen, aus denen der Key bestehen kann, probieren, ehe der
passende Key gefunden wird. So kann es dann vorkommen, dass der k1_unique Key dann bereits nach
wenigen Minuten bis Stunden gefunden ist.
Um einen Eindruck zu bekommen, welche Rechenleistung wie lange braucht, habe ich in Tabelle 2 die
Rückmeldungen von einigen Usern aufgelistet.
Fortschritt bei Fund sagt aus wie viel Prozent aller möglichen Kombinationen ausprobiert werden
mussten, ehe der richtige Key gefunden wurde. Das ist, wie bereits erwähnt, vermutlich reiner
Zufall/Glück. Aus diesem Fortschritt und der Zeit die bis dahin verging habe ich dann per Dreisatz auf
die Zeit interpoliert, welche theoretisch nötig wäre um 100 % der möglichen Kombinationen
durchzuarbeiten.
Da nicht jedem von uns derart leistungsfähige Computer lokal zur Verfügung stehen, kann man sich
entsprechende Rechenleistung Cloud basierend, also in Rechenzentren, auf Stundenbasis mieten.
Google Cloud Platform, Amazon Web Services (AWS) und IBM Cloud sind hier wahrscheinlich die
größten Anbieter derartiger Dienstleistungen. Da das aber prinzipiell Anbieter für den professionellen
kommerziellen Einsatz sind, ist deren Angebot ziemlich groß und die Verwaltung folglich recht
umfangreich um nicht zusagen kaum überschaubar für den (Halb)Laien. Dafür gibt es bei Google
Seite 6 von 7
BigBear46, v1.0 2020-02-16
300 USD Startguthaben, mit denen man Rechenleistung mieten kann. Darauf geht dieser Thread ein:
https://www.digital-eliteboard.com/threads/hashcat-bei-google-cloud-und-meine-
erfahrung.485923/ Vielen Dank an dieser Stelle an moosbewohner und alle User die sich dort
beteiligen.
Alternativ kann man sich bei https://vast.ai/ Rechenleistung mieten, hier ist der Prozess bzw. dessen
Verwaltung etwas schlanker, siehe hier: https://www.digital-eliteboard.com/threads/bruteforce-mit-
vast-ai-step-by-step-how-to-fuer-deppen-wie-mich.484487/ Auch hier nochmal Danke an den User
shiring für seine Mühe. Vast.ai ist eine Möglichkeit von vielen, ich nenne sie hier exemplarisch, da sie
recht häufig genutzt wird und vielfach erwiesenermaßen zum Ziel führt.
Ich werde hier jetzt nicht nochmal den Vorgang im Detail Schritt für Schritt beschreiben, das ist in den
Threads bereits vielfach geschehen. Daher hier nochmal der grob die Schritte die nötig sind:
In dem Befehl ist der schwarz markierte Bereich durch den zuvor ermittelten ECW und der grün
markierte Bereich durch den zuvor ermittelten DCW zu ersetzen, bevor Hashcat auf dem Server damit
gestartet wird. Hashcat speichert den k1_unique in der Datei cracked.txt nachdem der Key gefunden
wurde.
Hashcat kann man zwischen durch auch unterbrechen ohne, dass der bis dahin erzielte Fortschritt
verloren geht und von vorne begonnen werden muss. Dafür die Taste „C“ drücken. Damit arbeitet
Hashcat bis zum nächsten sogenannten Checkpoint und stoppt dann. Dabei wird eine .restore Datei
erstellt. Mit dieser Datei kann der Vorgang zu einem späteren Zeitpunkt fortgesetzt werden, auch auf
einem anderen Computer. Dazu einfach den Befehl „hashcat –restore“. Hierfür muss die .restore Datei
natürlich im betreffenden Ordner vorhanden sein. So kann man den Vorgang in mehreren Teilstücken
laufen lassen, wenn man bspw. den Server wechselt aus welchen Gründen auch immer. Manche Server
haben eine schlechte Performance oder man startet bei Google Cloud Platform bis das Startguthaben
aufgebraucht ist und geht dann auf einen anderen Server über.
Seite 7 von 7
BigBear46, v1.0 2020-02-16