GET FREE XXX PASSWORDS
FREE ACCESS to adult pay sites!
Follow Our 6 EASY STEPS and
Have A Password In Minutes!!
FREE MOVIE SITE
No Charge Ever
JOIN
NOW
TeenieGal.com - 100% FREE!
Over 100,000 TEEN PHOTOS 50,000 XXX VIDEO FEEDS!!!
Amateur galleries NATURALLY ADD UP TO 5 INCHES TO YOUR DICK!!CLICK HERE! Multi-girl gallery
Lexikon


Einführung
Ein wenig Systemverständniss setze ich aber schon voraus, da es sonst ein hoffnungsloses
unterfangen sein würde euch das alles beizubringen. Kommen wir zum grundsätzlichen Aufbau einer
Irdeto Chipcard. Wie man erkennen kann hat die Chipcard 6 Anschlüsse ( Pins ), wovon aber nur
5 Anschlüsse genutzt werden. So klein die Chipcard auch ist um so mehr Technik steckt da drin.
Auf diesen kleinen Microchip hat ein kompletter 'PC' platz. Dieser beinhaltet eine CPU (Rechner)
einen EEPROM (beschreibarer Speicher) einen ROM ( fester Speicher fürs Betriebssystem ) und eine
serielle Schnittstelle (Kommunikation mit der Aussenwelt). Nun fragt ihr euch natürlich, wie soll
ich denn mit so einer Chipkarte in Kommunikation treten. Natürlich mit eurem PC den ihr zu Hause
bestimmt stehen habt. Euer PC besitzt auch im Normalfall 2 Serielle Schnittstellen ( RS232 ).
An diesen Schnittstellen ( Interface ) hängt normalerweise ein Modem oder eine serielle Maus dran.
Am Computer werden diese Schnittstellen mit COM1 und COM2 bezeichnet. So - ich hoffe ihr könnt
ein wenig mit dem Lötkolben umgehen um euch ein Gerät zu bauen welches halt benötigt wird um mit
eurer Chipkarte in Kontakt zu treten. Falls ihr nicht in der Lage sein solltet euch selbst so
ein Gerät zu bauen wird es leider teuer, denn im Versandhandel ( Satshops ) kosten solche Geräte
wie Smartmouse oder Mastermouse bummelige 99.00 DM ( 45.00 Euro ). Aber wie gesagt wir sind ja
nicht Dumm und bauen uns solch ein Gerät selbst. Den Schaltplan findet ihr auf der Download Seite.
Einige Tage später.........
Ich hoffe ihr habt nun euer Smartmouse aufgebaut, somit können wir dann weiter machen was das
Programmieren bzw. Kommunizieren mir eurer Irdeto Chipkarte betrifft. Erst einmal was
Grundsätzliches zu der Schnittstelle. Es handelt sich ja wie gesagt um eine
Serielle Schnittstelle und das bedeutet das die Daten Bitweise nacheinander Gesendet bzw. Empfangen werden.
Ein Bit kann ein Zustand von 0 oder 1 ( 0 Volt / 5 Volt ) annehmen. Die Kommunikation erfolgt
dann auch noch im Halbduplex Verfahren, dies bedeutet das entweder Gesendet oder Empfangen wird,
beides Gleichzeitig geht nicht. Im konkreten fall sieht das so aus, der PC sendet von seiner
Seriellen Schnittstelle eine Bitfolge zur Schnittstelle der Chipkarte
z.B. 0000000100000001010100000110101001001.....). Nachdem er damit fertig ist erwartet er
wiederum eine Antwort von der Chipkarte ( z.B. 111010100011101110101101001111.....). Um nun den
Überblick nicht zu Verlieren schreiben wir die Daten die Gesendet werden sollen bzw. Empfangen
werden nicht im Binärform sondern in Hexadezimal.
Wie sieht nun so ein Befehlskommando welches zur Chipkarte gesendet werden soll aus. Ein Kommando
beginnt immer mit Byte 01, danach kommt die Befehlsklasse, welche Angibt was man mir der
Chipkarte vorhat ( Abfragen, Beschreiben, Löschen usw. ). Die Befehlsklasse ist auch nur ein
Byte lang ( 1 Byte = 8 Bit ). Nach der Befehlsklasse ( Class ) kommt der Befehl ( Instuction ).
Der Befehl ( Instuction ) ist auch nur ein Byte gross. Nach dem Befehl folgen 2 Bytes und zwar
Referenz 1 und Referenz 2. Was dieses auf sich haben werden wir später erläutern. So nach den
beiden Bytes folgt nun eine Längenangabe die Angibt wieviel Bytes noch folgen werden.
Die Längenangabe ist auch nur ein Byte gross. Falls nun die Befehlsklasse es vorgibt folgt nun
ein Datenteil, dessen Länge und Inhalt von dem Abhängt was man mit der Chipkarte vorhat.
Abschliessend folgt nun noch ein Byte welches die Checksumme aller vorangegangenen Bytes bildet.
Die Checksumme errechnet sich indem man jedes Byte nimmt und mit dem nachfolgenden Byte eine XOR
Verknüpfung macht. Als Startwert wird der wert 3F genommen. Die nachfolgenden Programme mit denen
wir Arbeiten werden errechnen diesen Wert automatisch, so das wir dieses vernachlässigen können.
So könnte nun also so eine Bytefolge aussehen:
01 01 00 00 00 13 0A 2A 1D 00 00 0D 40 02 03 36 95 02 03 35 81 6F 56 D5 0A AD.

Parameter und Kommandos
Zunächst einmal ein paar Grundsätzliche Dinge, die unabdingbar für ein weiteres Verständnis sind.
Es gibt auf jeder Card eine Anzahl von Parametern die sich z.T. auslesen lassen und sich von Card zu Card
unterscheiden können. Da wären die.....

Asciiseriennummer :Das ist die Nummer, die auf jeder Card mitsamt Barcode aufgedruckt ist. Es gibt hier
verschiedene Varianten. Früher wurden von allen Irdeto Providern Cards mit den Nummern 0000 xxxx xxx oder
0001 xxxx xxx benutzt. Um zu unterbinden, dass deutsche d-boxen ins Ausland exportiert werden, wurden hierzulande
Karten der Serien C0001 / C0002 und C1000 samt passendem C-Cam eingeführt. Diese Cards laufen nicht in original
Irdeto Cams und umgekehrt. In diesem Fall muss auf All-Cam umgerüstet werden. Im Dezember 1998 kamen noch die
Serien C8000 und C9000 hinzu.

Hexseriennummer : Jede Card hat eine 3 byte lange Hexnr. Aus dieser kann die Asciinr. berechnet werden. Sie
kennzeichnet die Karte eindeutig und wird im folgendem kurz s0 genannt.

Provider : Irdeto Karten bieten Platz für zwei verschiedene Pay-Tv Anbieter. Der erste wird dabei mit
Provider 00 (in Deutschland ehemalig DF1), der zweite Provider 10 (in Deutschland Premiere World) bezeichnet.

ProviderID : Im jungfräulichem Zustand, d.h. wenn die card auf dem betreffendem Provider noch kein Abo hatte,
haben Irdetocards meist festgelegte Provider ID's wie 000300/000400 oder 000100/000200. Erst wenn ein Abo abgeschlossen
wird, wird eine eindeutige ebenfalls 3 byte lange ProviderID auf die card geschrieben. Dazu ist der Masterkey, auch
Key 00 genannt, absolut notwendig. Über die Provider ID kann die Card z.B bei Keyupdates angesprochen werden.
Sie wird im folgenden für Provider 00 - p2 und für Provider 10 - p3 gennant.

Provider Group : Das sind die ersten zwei bytes der Provider ID. Sie wird von den Anbietern genutzt, um mit
einem Befehl mehrere Karten anzusprechen. Für Provider 00 gilt: p0 , für Provider 10 :p1.

Channel ID : Jedes Programm sendet "auf" einer oder mehrerer Channel ID mit dazu passendem Key.Mindestens
eine ID/Key Kombination muss davon "geöffnet" sein um das Progamm zu sehen. Die Channel Id hat 2 byte
z.B 007f oder 61b1.

Keys : Es ist immer ein gültiger Key zu einer Channel ID nötig um das Progamm zu entschlüsseln.
Dieser ist 9 byte lang, wobei das erste byte des Keys seine Nummer angibt. Z.B.: 10 02 AB 64 23 C2 A5 76 DE ist ein
kompletter Key 10. Es gibt einen speziellen Key, den

Masterkey Dieser wird unbedingt benötigt, wenn die ProviderId gewechselt wird. Ist der Masterkey
ungültig, was im übrigen auch bei benutzten 0300/0400er der Fall ist, akzeptiert die Karte kein eigentliches
Keyupdate mehr! Das bedeutet ,dass ihr keinen Key mehr auf die Card schreiben solltet, da dieser dann 100% NICHT mehr
funktioniert. Nach einem Keywechsel könnt ihr eine solche Karte in der Regel abschreiben.

Date: Jeder Provider hat ein fortlaufendes Date: Provider 00 - t0, Provider 10 - t1. Dieses ist 2 byte lang,
z.B 02A3. Das richtige Date ist ernorm wichtig z.B. beim Schreiben eines Keys.

Ablauf der Kommunikation mit der DBOX
Die Kommunikation mit der Karte erfolgt seriell halbduplex über eine Datenleitung. Die Übertragungsrate ist vom
CAM abhängig; alte CAM's 9600 blaues CAM 9200 Baud. Die Taktfrequenz ist 6 MHz bei alten und 5,6 MHz bei
blauen CAM's. Der Rest kann in ISO 7816 nachgelesen werden. Beim Einschalten der Box werden erst mal alle
möglichen Kartendaten mit Class 2 Kommandos (01 02 ...) abgefragt; Serial, ProviderID's, usw. Zu jedem Kanal
existieren mehrere gültige ChanelID/Key Paare. Nach dem Umschalten auf einen verschlüsselten Kanal werden
dann die jeweiligen ChanelID's mit ihren zugehörigen Keys mit Class 5 Kommandos (01 05 ...) abgefragt. Antwortet
die Karte mit 01 05 9D ... ist alles ok und der Kanal wird mit dem zurückgelieferten Entschlüsselungskey
entschlüsselt. Bei einer anderen Antwort wird die nächste ChanelID/Key getestet, bis alle durch sind. Später wird
ca. alle 20 Sekunden ein neuer Entschlüsselungskey von der Karte mittels 01 05 ... abgefragt.
In größeren Abständen werden ECM's mit Class 1 Kommandos (01 01 ...) gesendet. Diese werden vom CAM
gefiltert, und nur die an die Karte adressierten ECM's werden durchgelassen. Die Adresse kann dabei die Hex
Serial, die ProviderID oder die ProviderGroup sein. Wenn die ProviderGroup adressiert wurde, wird mit dem Nano
CB 32 .. eine 256 Bit (32 Byte) Maske für die Auswahl der einzelnen Karten aus dieser Gruppe verwendet. Die
möglichen Antworten der Karten sind weiter unten zu finden.

Struktur der Kommandos

Die Kommandos bestehen aus einem Header, dem Datenteil und einer Checksumme.
01
Class
Instruction
Referenz 1
Referenz 2
Länge
Datenteil
Checksum

Class
00:???
01:ecm
02:get
04:set
05:keyreq

Instruction :Von Class abhängig
Referenzen :Von Class abhängig
Länge :Anzahl der Bytes im Datentei
Datenteil :ist für alle Klassen unterschiedlich.
Checksum :XOR Verknüpfung aller Bytes des Kommandos, Startwert 3F


Class 0 Kommandos
Keine Ahnung was das ist.
Bei meiner C9000:

Instruction Referenz 1 Referenz 2 Funktion
00 00 00 Reset
01 00 00 liefert 03h Bytes
04 00 01 liefert ASCII Serial+ ?
05 00 01 erwartet 15h Bytes
08 00 00 Liefert 0Fh Byte
09 00 00 Gibt den Wert 00 00 FF FF FF zurück

Class 1 Kommandos
Das sind die ECM’s.
Instruction: 00
Referenz1: 00
Referenz2: 00

Datenteil
Adresstyp Adresse Länge Nanos Signatur


Adresstyp (Byte)
02
Provider 00, 2 Bytes -> Providergroup (p0)
03
Provider 00, 3 Bytes -> ProviderID (p2)
0A
Provider 10, 2 Bytes -> Providergroup (p1)
0B
Provider 10, 3 Bytes -> ProviderID (p3)
C3
Hexseriennummer, 3bytes (s0)


Adresse (4 Byte)
Wenn die Adresse kürzer ist, wird hinten mit 00 aufgefüllt

Länge (Byte)
Länge aller Nanos + Signatur modulo 0x3F

Nanos
Nano/Länge Inhalt Funktion
10 09 1 Byte Keynummer + 8 Byte Keyinhalt
z.B: 10 09 10 25 AC 98 ED B1 65 45 36
Dies schreibt den Key 10
Schreibt neuen Key
11 06 2 Byte Channel Id + 2 Byte Datestamp + 1 Byte Zeitraum
(01=1Tag, FE=254 Tage, FF=ewig) + 1 byte unbekannt(meist 00)
z.B: 11 06 00 7F 02 A4 FE 00
Öffnet eine Channel ID für
einen bestimmten Zeitraum
16 02 2 Byte , z.B. 31 00 Schreibt 2 Byte um das Date
1F 03/46/CC 3 Bytes / 6 Bytes / 12 Bytes
z.B. 1F 03 00 12 34 setzt den
D-Box Pincode auf 1234
Setzen eines PINs (Adresse 0-3)
Adresse 0 = D-Box Pin
Adresse 1 = Jugend Schutz Pin
Adresse 2 = Homeshopping Pin
Adresse 3 = ??? Pin
Adresse > 3: siehe Plainkey-FAQ
(Vorsicht! Karte kann zerstört werden!)
28 0D Prov00: 00 00 +8byte Masterkey +3byte neue ProviderID
Prov10: 11 00 +8byte Masterkey +3byte neue ProviderID
Schreibt neue ProviderID.
Masterkey wird benötigt.
40 02 Date z.B: 40 02 02 A4 setzt Date
50 09 1 Byte Keynummer + 8 Byte Keyinhalt
z.B: 50 09 0A 25 AC 98 ED B1 65 45 36
Dies schreibt den Key 0A
Schreibt neuen Key
( höhere Priorität )
51 06 2 Byte Channel Id + 2 Byte Datestamp + 1 Byte Zeitraum
(01=1Tag, FE=254 Tage, FF=ewig) + 1 byte unbekannt(meist 00)
z.B: 51 06 00 7F 02 A4 FE 00
Öffnet eine Channel ID für
einen bestimmten Zeitraum
( höhere Priorität )
52 06 6 Byte, z.B. 52 06 00 00 00 00 00 00 Schreibt 6 Byte um das Date
54 00   Löscht alle ChanId's, setzt alles auf FF FF
56 02 2 Byte , z.B 31 00 Schreibt 2 Byte um das Date
5F 03/46/CC 3 Bytes / 6 Bytes / 12 Bytes
z.B. 5F 03 00 12 34 setzt den
D-Box Pincode auf 1234
Setzen eines PINs (Adresse 0-3)
Adresse 0 = D-Box Pin
Adresse 1 = Jugend Schutz Pin
Adresse 2 = Homeshopping Pin
Adresse 3 = ??? Pin
Adresse > 3: siehe Plainkey-FAQ
(Vorsicht! Karte kann zerstört werden!)
62 03 3 Byte Ländercode Setzt Ländercode
68 0D Prov00: 00 00 +8byte Masterkey +3byte neue ProviderID
Prov10: 11 00 +8byte Masterkey +3byte neue ProviderID
Schreibt neue ProviderID. Masterkey wird benötigt.
91 06 2 Byte Ch.ID + 2 Byte Date + 00 00 Löscht ChannelId
94 00   Löscht alle ChanId's, setzt alles auf FF FF
90 02 2 Byte, meist 01 E2 schreibt das date auf die Karte
A9 02/0A 00 Bytes Löscht Masterkey
CB 20 32 Byte ProviderId Matrix selektiert einzelne Card d.Group


Antworten vom Class 01 Kommando
01 01 00 00 3FCommand accepted
01 01 70 00 00Command not accepted???
01 01 71 00 00Command not accepted, falsche Provider ID
01 01 72 00 00Command not accepted, falsche Provider Group
01 01 7B 00 00Command not accepted, falsche Provider ID/Group/Signatur???
01 01 7C 00 00Command not accepted, falsche Signatur


Class 2 Kommandos

Abfragekommandos für auf der Smartcard gespeicherte Daten.
Instruction Referenz1 Referenz2 Funktion
00 XX XX Get Cards ASCII Serial Number
01 XX XX Get Cards HEX Serial Number
02 XX XX Get Cards Country Code
03 XX 00 Get Provider00 ID
03 XX 01 Get Provider10 ID
04 00 00 Länge 01 Byte (00 - 05) gibt 3Ch Bytes wieder
Provider 00 ChID+DATE+LÄNGE..
04 00 01 Länge 01 Byte (00 - 05) gibt 3Ch Bytes wieder
Provider 10 ChID+DATE+LÄNGE..
05 00 00 Byte Länge (1 oder 2), Byte (0-E) [Byte (0)]
07 00 00 Länge 00h - 20h , schreibt 20 Bytes in den Buffer
08 00 00 gibt 20h Bytes des Buffers wieder
09 03 00 Länge (40), ???
0A 00 00 Länge (2), xx xx; check ??? pin > 51:nok 50:ok
0A 00 01 Länge (2), xx xx; check Jugendschutzpin > 51:nok 50:ok
0A 00 03 Länge (2), xx xx; check dboxpin > 51:nok 50:ok
0A 01 00 Länge (4), xx xx yy yy; set Kanalsperre pin x:old y:new
0A 01 01 Länge (4), xx xx yy yy; set Jugendschutzperre pin x:old y:new
0A 01 03 Länge (4), xx xx yy yy; set dboxpin x:old y:new
0B 00-03 00 Get Cards Country Code other way
0C 00 00-02 Nullen?
0D XX XX Nullen + 4 Byte Signatur bei < C8000
0E 02 00 Read Card File 1
0E 03 00 Read Card File 1
0F XX 00/01 Get Cards Serial Number in ASCII + Prov0ID + random? (nicht c9)
10 00 00/01 ???
13 XX 00-05 ???
17 00 00/01 ???


Antworten vom Class 02 Kommando
01 02 00 00Command accepted
01 02 00 50Command not accepted
01 02 54 00Command not accepted
01 02 55 00Command not accepted
01 02 41???
01 02 67Länge falsch
01 02 69???
01 02 6Breferenz falsch
01 02 6Dfalscher instruction code
01 02 6Efalsche instructionclass
01 02 6Fno diagnostics


Class 3 Kommandos

Personalisierung, oder auch Programmier-Modus
Können nur eingesetzt werden wenn die Karte genullt bzw. geeFFt wurde.

Instruction Referenz 1 Referenz 2 Inhalt Funktion
01 00 00 15 (Länge), 16 Bytes (ASCII-Serial), S1
ASCII-Serial = Antwort von 01 02 00 03 00 00
Beginn der Personalisierung
02 00 00 0D (Länge), 8 Bytes (scheint egal zu sein), S1  
05 00 00 25 (Länge), 32 Bytes (00 Bytes), S1 der Message-Buffer gelöscht
07 00 00 3B (Länge), 24Bytes, 16Bytes (00 Bytes), 2Bytes, 11Bytes, 1Byte, S1
24 Bytes = Antwort von 01 02 03 03 00 00
2 Bytes = Antwort von 01 02 0F 00 00 00 -> 2 Bytes hinter Provider ID
11 Bytes = Antwort von 01 02 0C 00 00 00
1 Byte = Antwort von 01 00 01 00 00 00 das 8. Byte
 
07 00 01 3B (Länge), 24Bytes, 16Bytes (00 Bytes), 2Bytes, 11Bytes, 1Byte, S1
24 Bytes = Antwort von 01 02 03 03 01 00
2 Bytes = Antwort von 01 02 0F 00 01 00 -> 2 Bytes hinter Provider ID
11 Bytes = Antwort von 01 02 0C 00 01 00
1 Byte = Antwort von 01 00 01 00 00 00 das 8. Byte
 
0B 00 00 1C (Länge), 23Bytes, S1  
0C 00 00 05 (Länge), S1 Beenden der Personalisierung


Antworten des Class 3 Command
01 03 00 61 ii 00 xx Sig falsch (ii=Instruction)
01 03 xx 00 ii 00 00 00 xx Sig richtig


Class 4 Kommandos

01 04 01 00 00 00: Aktiviert write protection (Schreibschutz)
01 04 00 00 00 00: Fragt nach "write protected".
Antwort 01 04 40 - nein
Antwort 01 04 41 - ja

Mit Class 4 Kommandos scheint man z.B. auch die ASCIISerial ändern zu können.
01 04 00 00 00 14 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 43 36 35 31 30 36 41 20 20 20
Change the 10 "x"s to the ascii serial number. Leave off the last "y".
Sollte dies nicht funktionieren, ändere die letzten Bytes nach 43 so:
43 37 30 32 32 32 41 20 20 20 or
43 36 33 39 30 36 41 20 20 20
Funktioniert nur bei Karten ohne Schreibschutz.

Class 5 Kommandos

Mit Class 5 Kommandos werden die Entschlüsselungskeys abgefragt.

Instruction: 00
Referenz 1: 00
Referenz 2: 00 oder 02

Datenteil
Chanel ID Provider Keynum 00 Länge Nanos Signatur

Chanel ID (2 Byte)z.B. 75 30
Provider (1 Byte)00 oder 10
Keynum (1 Byte)Nummer des benötigten Keys
Länge (1 Byte)Länge der Nanos + Signatur
Nanos Es werden nur zwei Nanos benutzt
40 02 xx xx (set date)
78 12(länge) 10 zz 16byte 2 Keys?
zz=12/13
Signatur (5 Byte)

Antworten vom Class 05 Kommando
kommt manchmal bei Abfrage auf Key 11 Prov 10
01 05 90 00 00 kein Zugriff erlaubt
01 05 90 00 00 00 02 00 A9 No access to this ChanID - missing ChanID?
01 05 93 00 3F 00 02 00 95 ist Key und Id ok, aber Id ist abgelaufen
01 05 9C 00 00 Masterkey Falsch
01 05 9D 00 yy Command accepted - Key ist drauf und Id ist gültig
01 05 9E 00 00 Entwertet - ChID nicht aktiv
01 05 9E 00 00 00 02 00 A7 Key ist falsch/expired oder Id Not activated?
01 05 9F 00 00 Key nicht drauf (er steht auf ??)
01 05 A0 00 00 noch nicht aktiviert - Falsches Bouquet - Provider ungleich 00 oder 10


Bei einer ok Antwort wird der ermittelte Key zurückgegeben:
01 05 9D 00 38 yy 00 Länge Daten
yy=00:01 wenn zz=13:12 in Request nach Nano 78 12
Länge (Byte)=0x12


Chanel ID Provider zz 0xFF 0xFF Key

Chanel ID (2 Byte)2byte CH-ID wie im Request
Provider (1 Byte)00 oder 10 wie im Request
zzaus req
key (8 Byte)


Class 6 Kommandos

Personalisierung, oder auch Programmier-Modus
Können nur eingesetzt werden wenn die Karte genullt bzw. geeFFt wurde.

Instruction Referenz 1 Referenz 2 Inhalt Funktion
01 00 00 15 (Länge), 16 Bytes (ASCII-Serial), S1
ASCII-Serial = Antwort von 01 02 00 03 00 00
 
02 00 00 0D (Länge), 8 Bytes (scheint egal zu sein), S1  
03 00 00 2A (Länge), 16 Bytes, 2 Bytes, 18 Bytes (00 Bytes), 1 Byte, S1
16 Bytes = Antwort von 01 02 01 03 00 00
2 Bytes = Variabel -> 2 Bytes und 18 Bytes werden Codiert,
Antwort auf 01 02 01 03 00 00 muß
24. Byte = 18/58/98/D8 sein.
19. Byte muß zwischen 02 und 20 sein.
1 Byte = Antwort von 01 00 01 00 00 00 elftes Byte
schreibt die HEX-Serial
04 00 00 29 (Länge), 13 Bytes, 8 Bytes (Pins= 00), 15 Bytes, S1
13 Bytes = Antwort von 01 02 02 00 00 00
(letzten 3 Bytes(CoCo) Weglassen)

15 Bytes = Antwort von 01 02 01 03 00 00
 
06 00 02 45 (Länge), 64Bytes (00 Bytes), S1 schreibt codiertes Cardfile (64 Bytes)
für Provider ID 00, Codierung unbekannt
06 00 03 45 (Länge), 64 Bytes (00 Bytes), S1 schreibt codiertes Cardfile (64 Bytes)
für Provider ID 10, Codierung unbekannt
08 00 00 05 (Länge), S1 Beenden der Personalisierung, dann r0
0A 00 00 0B (Länge), 6 Bytes (00 Bytes), S1  


Antworten des Class 6 Command
01 06 00 61 ii rr rr 00 xx Sig falsch (ii=instruction, rr=referenz)
01 06 xx 00 01 00 00 00 xx Sig richtig


Kartenantworten und deren Bedeutung

3. & 4. Byte der AntwortBedeutung
00 00Commando erfolgreich
00 021. Byte des CardCmds falsch (!=0x01)
00 03Checksumme falsch
00 20Class nicht unterstützt (Klassen 0-6 unterstützt)
00 70Instruction Class0 nicht unterstützt V1.2
00 50Instruction nicht unterstützt 0000 Karten
00 40Instruction Class4 nicht unterstützt V1.2
50 00Pin ist richtig
51 00Pin ist falsch
6D 00Instruction nicht unterstützt 8000 Karten
6B 00Referenz nicht unterstützt 8000 Karten
00 51Referenz nicht unterstützt 0000 Karten
67 00Längenbyte falsch 8000 Karten
69 85Benutzungsbedingungen nicht erfüllt
70 00String wurde an eine andere Kartenserial adressiert
71 00String wurde an eine andere Providergruppe adressiert
72 00unbekannte Adressierungsart
74 00Gruppenadressierung aber ID nich selektiert
75 00Commando wurde durch Regionlockout abgelehnt
79 00Speicher wurde erfolgreich geschrieben
7B 00String wurde an eine andere ProviderID adressiert
7C 00falsche Signatur
7D 00Provider wurde mit falscher Keynummer gewechselt
7E 00falsche Addressierungsart
7F 00Parameter liegt ausserhalb der Spezifikation
80 00ChannelID table is full
90 00ChannelID nicht in ChannelIdTbl Class05
93 00ChannelID ist abgelaufen
9E 00falsche Signatur für Class 05 cmd
9F 00Schlüsselnummer ist falsch
A0 00falsche Providernummer Class 05
40 00Karte ist nicht schreibgeschützt
41 00Karte ist schreibgeschützt


Wie erstelle ich nun ein CRD File und öffne damit einen Fernsehkanal ?
Angenommen wir möchten ein nun ein verschlüsseltes Fernsehprogramm auf unserer Karte freischalten.
Der Fernsehsender heisst z.B. TV 0815. Aus irgendeiner Quelle z.B. durch loggen oder einer Internetseite
wissen wir welche ChannelID + Key bei diesem Kanal abgefragt werden. In unserem Beispiel ist es die
Channel ID 02 33 und der Key 0A, und der Provider ( Anbieter ) sei der Provider 10. Wenn wir unsere Karte
mit cardmaster auslesen sehen wir z.B. das Provider 10 bei uns die ProviderID 22 44 F4 besitzt. Daraus
ergibt sich logischerweise das die Providergroup ( die ersten 2 Bytes der ProvID ) die 22 44 ist. Um nun die
ChannelID auf unserer Karte frei zu schalten ist ein ECM Kommando nötig ( Class 01 ). Also fängt unser String
wiefolgt an:

01 01 00 00 00 ??

Die Fragezeichen stehen für die länge der nachfolgenden Bytes inclusive der 5 Byte langen Signatur, die können
wir aber erst einsetzen wenn wir wissen wie lang der String wird, also erst später. Als nächstes folgt der Adresstyp.
Wir wollen unsere Karte mit der Providergroup ansprechen also:

01 01 00 00 00 ?? 0A 22 44 00 00 ??

Das Byte 0A sagt ja aus (siehe oben) das wir die Providergroup vom Anbieter 10 ansprechen. Danach folgen
die 2 Bytes der Providergroup und 2 Bytes 00. Diese stehen deshalb dort da der Adressbereich immer 4 Bytes
beinhalten muss. Die Fragezeichen dahinter geben ebenfalls die länge von den nachfolgenden Bytes an, die
wir ja auch nicht kennen. Als nächstes wir das Datum ( Date ) gesetzt. Das Date entnehmen wir auch vom
Ausgabebildschirm von Cardmaster. Wichtig, es muss das Date vom Provider 10 sein, in unserem Beispiel ist
es 03 12. In unserem Beispiel kommt dann also folgendes Nano dazu:

01 01 00 00 00 ?? 0A 22 44 00 00 ?? 40 02 03 12

Das Nano 40 02 steht für Set Date und die 03 12 ist das Date. Jetzt folgt nur noch das Nano "öffne Channel ID"
welches 11 06 lautet. Bei diesem Nano kommen zuerst die 2 Bytes der Channel ID gefolgt vom Datum ab wann die
Channel ID geöffnet werden soll in unserem fall währe es der selbe tag wie vom Date. Danach folgt 1 Byte welches
den Zeitraum angiebt wie lange die ChannelID geöffnet bleiben soll 01 steht für ein Tag FE für 255 Tage und FF
steht für ewig. Das letzte Byte ist immer eine 00. Da das dass letzte Nano war, folgt nun nur noch die Signatur ( 5 Bytes )
die wir als s1 eintragen, da Cardmaster bei Karten kleiner c 8000 die Signatur selber findet.
Der fertige Strin sieht somit wiefolgt aus

01 01 00 00 00 17 0A 22 44 00 00 11 40 02 03 12 11 06 02 33 03 12 FF 00 s1

Die Checksumme nach der Signatur brauch nicht eingetragen werden, da Cardmaster sie selber errechnet.
Sollte der Bildschirm nachdem immer noch schwarz bleiben so liegt es wahrscheinlich daran, dass der Key 0A
entweder falsch ist oder noch nicht auf der Karte geschrieben wurde. In diesem fall bauen wir noch ein CRD File
welches nun noch den Key 0A schreibt.
Wichtig ist es nun aber das der 8 Byte Key den wir wieder irgendwoher erhalten mit dem Date der Karte
übereinstimmt und er auch für unsere Providergroup gedacht ist. Denn der Key wird innerhalb der Karte mit dem
Kartendatum und der Providergroup durch einen algoritmus entschlüsselt und dann erst auf das EEPROM der
Karte geschrieben. Also müssen wir nach einen Key 0A für UNSERE Providergroup suchen. Falls ihr nicht loggen
könnt, hilft euch das File Key All vom Downloadberreich. Da wir wohl nicht das Glück haben werden einen Key vom
aktuellen Tag zu erhalten, müssen wir unser Datum (Date) der Karte eben auf das Datum vom welchem der Key 0A
stammt anpassen. Vom Key All File erhalten wir nun z.B. folgenden String:

22 44 10 0AB0E876124AA886EA 0297 02 33

Dort erkennen wir das für die Providergroup ( 22 44 ) vom Provider 10 der Key 0A (B0 E8 76 12 4A A8 86 EA)
am tage 0297 gesendet wurde. Also stellen wir das Kartendatum von Provider 10 ersteinmal auf das Date 0297 um.
Dazu dient folgender String:

01 01 00 00 00 13 0A 22 44 00 00 0D 40 02 02 97 90 02 01 E2 s1

Das Nano 90 02 mit den Parametern 01 E2 bedeutet nichts anderes als das er das Date vom Nano 40 02 als
Kartendate für Provider 10 übernehmen soll.
Nachdem wir diesen String mit Cardmaster ausgeführt haben und einmal reset bei Cardmaster machen, müsste
das Date von Provider 10 in diesem Beispiel auf 02 97 stehen.
Was jetzt folgt liegt klar auf der Hand, wir lesen den Schlüssel 0A in die Karte ein. Dafür gibt es ja das Nano 10 09
im ECM Kommando. Dies CRD File sieht dann so aus:

01 01 00 00 00 1A 0A 22 44 00 00 14 40 02 02 97 10 09 0A B0 E8 76 12 4A A8 86 EA s1

Ich hoffe dieses CRD File bedarf keine erklährung mehr, ansonsten fangt noch mal von vorne an mit dem lesen.
Jetzt sollte dem Empfang des Fernsehsenders TV 0815 nichts mehr im wege stehen.

Ihr könnt auch alle Nanos zu einem String zusammenfassen. Das Date muss dann auch nicht extra auf die Karte
geschrieben werden. Es reicht wenn es einmal im String vorkommt. Zusammenfassend sieht dann der String
so aus:

01 01 00 00 00 22 0A 22 44 00 00 1C 40 02 02 97 11 06 02 33 03 12 FF 00 10 09 0A B0 E8 76 12 4A A8 86 EA s1

Hilfe ich habe eine Karte grösser C8000
Kein Problem, ihr müsst die CRD Files nicht umschreiben. Ihr könnt euch ja mal ein File erstellen mit dem
CRD Generator und sehen wie die fertigen Strings aussehen könnten.

Zurück

SECRET GUIDE TO XXX PASSWORDS

FREE MOVIE SITE!
NO CHARGE, EVER!

FREE XXX PASSWORDS!