You are on page 1of 30

Gbox cet inconnu..

guide pour débutants

Voilà un guide qui cherche à expliquer comment fonctionne et comment va configurer


le gbox.

Le Gbox est une émulation quasi parfaite mais pour décision de qui l’a développée,
elle n’est pas très discutée dans les forums de satellite et c’est pour cela que la
connaissance de celle-ci est très limitée.
Cherchons de comprendre ce qu’elle fait et surtout de quoi nous avons besoin pour
cette émulation.

Premièrement, elle supporte tous les codages utilisés jusqu’à maintenant par des
providers satellites mais la particularité principale est la possibilité de la partager par
réseau. On appelle tout simplement ceci, le cardsharing.

Voici quelques caractéristiques :

1. Le propriétaire de la carte a la priorité absolue, peu importe le nombre de clients


connectés qui ont accès à la vision de sa propre carte.
2. Chaque dbox communique directement avec le ou plusieurs dbox qui sont
enregistré dans son cwshare.cfg (on verra de quoi il s’agit)
3. Toutes les données sont complètement codées, c’est pour ce motif que le
système est assez sûr.
Autre chose, même si ce n’est pas utilisé, la possibilité d’envoyer des messages en
GSMS (gbox shot messaging service) à plusieurs clients qui sont dans la liste du
cwshare.

Le cardsharing gbox est un P2P qui fonctionne soit en


local comme sur internet.

Voyons un peu comment ça fonctionne et comment le configurer.


• Gbox, Gboxx86 où Gbox.exe – si utilisé sur dbox, PC Linux ou Windows
• cwshare.cfg – qui contient toutes les données relatives aux dreambox
connectés au sharing
• gbox_cfg – qui contient des données pour les contrôles des slots et de
l’émulation au niveau hardware
• ignore.list – qui contient les données des providers qu’ils ne veulent pas en
share
• knowns.ini – je ne sais pas et personnes a su me dire à quoi il sert
• softcam.cfg – configuration additionnelle de ce qui concerne les cartes mais
aussi à l’émulation en soit

Les clés des divers codages : nagra, conax, irdeto, seca, via et nds. Très
important pour la dernière, le fichier vient configuré avec les données de la
carte et du boxid.

Sommaire

• cwshare.cfg - page 3
• gbox_cfg - page 8
• fichiers temporaires du gbox - page 15
• softcam.cfg - page 19
• ignore.list - page 21
• fichier NDS - page 25
(3)

Passons maintenant à la configuration du cwshare.

Ceci est un exemple de 3 dbox soit en réseau local que par internet

# cwshare.cfg --- dbox1 --- Internet und Lokales Netzt


#
# My dbox2 (local IP =192.168.0.6)
# password
M: { mydbox2.homeip.net { AA242456 }}
I: { 04 }
X: { 09 }
W: { 01 01 01 } 1FFF
Y: { 1A 5B }
N: { 01 01 03 10 3500 4000 }
G : { 09190000 88AA }
#
# Internet Friends RX TX_Port password code
D : { friend1.homeip.net { 8200 8200 { B142AB11 { 5 5 }}}}
D : { friend2.homelinux.net { 8200 8200 { 81BFF901 { 5 5 }}}}
#
# other local boxes
D: { 192.168.0.51 { 8200 8200 { AB333441 { 5 5 }}}
D: { 192.168.0.52 { 8200 8200 { BA334B24 { 5 5 }}}

# cwshare.cfg --- dbox2 --- Lokales Netz


# password
M: { 192.168.0.51 { AB333441 }}
I: { 04 }
X: { 09 }
W: { 01 01 01 } 1FFF
Y: { 1B 5B }
N: { 01 01 03 10 3500 4000 }
G: { 09190000 88AA }

#
# other local boxes
D: { 192.168.0.6 { 8200 8200 { AA242456 { 5 5 }}}}
D: { 192.168.0.52 { 8200 8200 { BA334B24 { 5 5 }}}}

# cwshare.cfg --- dbox3 --- Lokales Netz


# password
M: { 192.168.0.52 { BA334B24 }}
I: { 04 }
X: { 09 }
(4)

W: { 01 01 01 } 1FFF
Y: { 1C 5B }
N: { 01 01 03 10 3500 4000 }
G: { 09190000 88AA }
# other local boxes
D: { 192.168.0.6 { 8200 8200 { AA242456 { 5 5 }}}}
D: { 192.168.0.51 { 8200 8200 { AB333441 { 5 5 }}}}

La ligne M contient ma propre adresse ip (si utilisée en sharing sur internet elle doit
contenir évidemment un nom de domaine puisque personne ne pourrait connaître
mon ip dans le moment même – le provider internet peut me changer l’ip chaque fois
que je me connecte).
AA242456 – est une password (les caractères utilisés sont de 0 à 9 et de A à F – des
valeurs en hexadécimale pour bien se comprendre et doivent comprendre 8
caractères).
Soyez attentif qu’il ne peut y avoir deux password identiques dans le sharing car si
ça devait être le cas, le gbox ne part pas.
Les lignes D contiennent des ip (si en lan) où des noms de domaine (par internet) de
tous ceux avec qui je veux faire du sharing. Le port d’entrée et de sortie (qui peuvent
ou nécessairement pas coïncider, au contraire dans le cas d’une carte nds il
conviendrait mieux avoir des ports différents).
La password du client qui est la même qu’on trouverait dans la ligne M du
cwshare.cfg de celui-ci et les droits 5 5 (je vous expliquerais plus tard comment ça
fonctionne).
Une petite précision concernant le port d’entrée. Celui-ci indique d’où le gbox attend
de recevoir les données et donc il va falloir l’ouvrir dans le NAT du routeur, il s’agit
d’un port UDP !!!
Le port de sortie (TCP), ne nécessite pas de l’ouvrir dans le NAT sur le routeur.
Une autre chose qu’il faut savoir, en Lan (réseau local), il n’y a pas besoin d’ouvrir
de ports.

La ligne I

I: { 06 }

Le paramètre I indique à combien distant mon gbox ira chercher les cartes à utiliser
pour mettre les chaines en clair.
Plus haute sera la valeure et plus distantes seront les cartes que le gbox ira
chercher.
Faisons un exemple:
mon dreambox est au niveau 0
un décodeur connecté directement à mon dreambox aura le niveau 1 (chaque ligne
D est un décodeur mais qui sera toujours au niveau 1 – I n’indique pas le nombre de
décodeurs mais la distance du mien).
(5)

Un décodeur non connecté au mien mais à une de mes lignes D sera le niveau 2 et
ainsi de suite. Plus haute sera la valeure de I et plus loin sera la distance que le gbox
ira chercher.
Il n’existe aucune valeure parfaite pour I, chacun doit trouver ce qui convient le
mieux à son sharing pour deux motifs:

- le gbox ne gère plus de 1024 cartes et donc à un certain moment dans la


recherche, celui-ci se plante.
- plus distantes seront les cartes, plus lente sera la réponse et plus il y aura de
saccades à la réception.

Je conseille donc de ne pas dépasser la valeure 4

# 01 repeat EMM’s
# 00 consider every EMM only once
# 01 restart pid on overflow
# 1* reset ENX on every channel change
# *1 check/reset ENX freezes on FTA
# *2 check/reset ENX freezes on PayTV
# *3 check/reset ENX freezes on FTA and PayTV
# 00 write nothing in 5ttack.txt
# 01 write into 5ttack.txt: password is wrong
# 02 write into 5ttack.txt: ID unknown
# 04 write into 5ttack.txt: IP is wrong
# 08 write into 5ttack.txt: port is worng
# 10 write into 5ttack.txt: share.stat
# 20 create online.log for online/offline logging
# 3F write everything. (combine bits for other combinations)
# 4000 send ecm again after 4 Seconds if no reply.
# 6000 resync decode after 6 Seconds if net decode failed
N: { 00 01 03 1F 4000 6000 }

Tenez bien compte de ces valeures N – vous pouvez varier les valeures 4000 et
6000 en les baissant un peu. Ces valeures indiquent après combien de secondes
(exprimés en millisecondes) vient envoyé un ECM si ont ne devrais pas obtenir de
réponse ou si le décryptage vient à échoué.

# Send ECM’s at maximum 5 cards (please use this as default)


X : { 05 }

- indique combien de cartes d’un même provider (si présent dans le share)
seront interrogées contemporairement (ne pas dépasser si possible 0A – qui
est égal à 16 cartes par provider). Il n’existe pas une bonne valeure, chacun
d’entre nous doit essayer plusieurs tentatives afin d’obtenir de bons résultats
pour son sharing.
- Si je mets une valeure de 05, le gbox prendra les 5 premières cartes qu’il
recevra (les plus rapides), celle qui me fera voir le canal X du provider Y et
la sixième carte sera automatiquement écartée.
(6)

- il convient donc de mettre une valeure basse et de regarder les chaines qu’ont
a plus l’habitude de regarder. Si toute fois vous n’êtes pas satisfait, vous
pouvez l’augmenter un peu et de voir les résultats.
- Tenez présent que plus la valeure est haute, plus seront les cartes
interrogées, plus la bande ne cessera d’augmenter et logiquement le sharing
sera plus mauvais.

# Send ECM’s in any case to these card ID’s, even they are more then X:
# some examples …
#G: { 17020000 1234 }
#G: { 0B000000 ABCD }
#G : { 05021510 AB34 }
#G: { 0D03A000 A234 }

Avec le G, nous pouvons indiquer quelle carte choisir par préférence pour décrypter
un provider. La première partie indique le type de crypte et de provider, la seconde le
boxID (c’est à dire le numéro avec lequel le gbox appelle chaque décodeur
connecté).
Le boxID qui vient se créer (je ne sais pas comment !!) en utilisant la password et le
nom de domaine de la ligne M, est unique dans tout le share (il ne peut y exister
deux boxID identiques).

# For W: please read the cwshare.txt, here only some examples


# use card 1 only for the following pids
#W: { 01 02 02 } 1022 100A 100B 102B 1009 101D 1029 1014 1011 101B
# don’t use card 2 for the following pids
#W: { 02 03 03 } 1008 1016

La lettre W par contre, indique pour quel pids la carte insérée dans le slot de votre
décodeur peut être utilisée ou pas.
Par exemple:
Je possède un abonnement basic (minimum) de Sky Italia, ma carte viendrait
interrogée par des clients même pour le cinéma et le sport, si j’indique pour quels
pids je suis ou pas habilité, je facilite le sharing de tous.

# S: is the same as W:, just using the SID instead of the ECMPID

Y: { 23 04 }

La valeure Y identifie le boxID duquel je veux écarter de mon share et donc de ne


pas le recevoir (attention, si je l’enlève, non seulement je ne le verrais pas mais ceux
connecté à moi non plus, sauf s’ils sharent avec une tierse personne que je n’ai pas).
Il est utilisé pour enlever les cartes plus lentes à donner les réponses, celles qui
viennent mourir au niveau 0 (pour ceux qui utilisent un serveur linux) et aussi si le
bouquet est le même que le notre.
Passons maintenant à l’explication des valeurs 5 5
Depuis les dernières versions Gbox, ont est passé à un autre système pour optimiser
le share NDS. Au lieu du 5 5, ont utilise par exemple A3 A3.
(7)

Comme je l’ai dis, le Gbox fonctionne comme un p2p, en autre termes, il permet de
faire du share avec qui je veux, non seulement les cartes que j’utilise dans mon
dreambox mais aussi (si autorisé) celles que je reçois par d’autres (on parle dans ce
cas du resharing).
Voilà pourquoi il y a les doubles valeures XX ZZ dans l’exemple ci-contre, elles
correspondent à A3 A3.
Dans ce cas, XX correspond aux cartes que je possède dans les slots de mon
dreambox et ZZ celles que je reçois par d’autres.
Je pourrais donc autoriser une personne à voir mes cartes mais pas celles que je
reçois des autres, dans ce cas je vais mettre A1 0
Si maintenant je veux lui faire voir les cartes que je reçois mais pas la mienne, je
mettrais 0 A1. C’est seulement celui qui possède la carte dans le slot qui décide à
combien distante elle pourra être resharée.
Pourquoi A devant ??
Parceque sinon je ne share pas la carte nds, si je mettais seulement 1 0, la personne
connectée à moi recevrait seulement une carte que je possède dans un slot mais
pas la nds.

Avec cette configuration les trois décodeurs se voient et font du share entre
eux.
(8)

Passons à la configuration du fichier gbox_cfg


# gbox config file
# Trace/Debug
# xx yz ; xx=00 no konsole output
# xx yz ; xx=01 konsole output
# xx yz ; y=0 debug output (don't use)
# xx yz ; y=1 no debug output
# xx yz ; z=0 ouput to konsole
# xx yz ; z=1 output to /var/tmp/debug.txt
# xx yz ; z=2 Output to UDP (to capture with gboxt
Z: { 01 12 } 192.168.1.29 8024

Le paramètre Z : il permet d’arranger au mode de présenter les informations relatives


au trafic.
- xx établit s’il venait à envoyer sur la console les données générées par le
gbox. En autre terme, si après avoir démarré par telnet le gbox, celui-ci fait
voir quelque chose ou pas (avec 00 on ne verra rien, avec 01 oui).
- Yz me permettent par contre d’établir si ont peut créer un outpout de debug
secondaire ou pas.
- Dans l’exemple, 01 10 signifie que je verrais tout simplement sur la console
- Le paramètre z sert en particularité de créer un fichier appelé debug.txt en
var/tmp où en /tmp, utile pour voir si le gbox ne part pas (puisqu’il indique la
cause qui bloque le gbox) alors il sera réglé à 1. Par contre s’il est à 2, il
permet d’envoyer le tout à un port UDP et plus précisément dans l’exemple
indiqué, au port 8024 et en particulier à mon PC windows en LAN avec ip
192.168.0.2
- L’envoi à un PC par le port UDP sert à se connecter sur un poste windows et
de voir ce que le gbox est en train de faire au moment précis.
- Je conseille de faire partir la première fois avec le tout afin de contrôler et
optimiser le gbox et ensuite de refermer le tout pour épargner le travail du
gbox (garder seulement l’envoi du tout seulement par UDP si on le désire)
(9)

# Task type
# 00 ** normal mode gbox mode (no season, use Multicam instead)
# 01 ** Season Emulation in a Irdeto allcam chid 0602 nonZ
# 10 ** Season Emulation in a Irdeto allcam chid 1702 nonZ
# 11 ** Season Emulation in a Irdeto allcam chid 1702 Z
# 12 ** Season Emulation in a Irdeto allcam chid 1722 Z
# 13 ** Season Emulation in a Irdeto allcam chid 1762 Z
# ** *1 Com port to use for season emulatiom (1 or 2)
# ** 0* Use CTS f_r RST detection
# ** 1* Use DCD f_r RST detection
# ** ** 9600 = Baudrate to be used (working only on dbox2)
W: { 00 00 } 9600

Le paramètre W je ne sais pas à quoi il sert, désolé 

# gbox working mode


# 00 pure Emu
# 01 pure SoftCam (when card inside), Emu (when no card inside)
# 02 pure Net Client
# 03 Mixed mode !!!!! always use this !!!!!
G: { 03 }

Laissez toujours G à 03 comme dans l’exemple

# Display ECM messages on Konsole


# 00 don't show any ECM's
# 01 show only valid ECM's
# 02 show valid and bad ECM's with complete data display
C: { 01 }

Le paramètre C établit s’il faut montrer (en modes variés établis dans le paramètre Z
qu’on a déjà vu) tout les ecm qui arrivent et partent du gbox

On mettant 00 on ne verra rien, avec 01 seulement les ecm qui sont bien parti à
destination, avec 02 soit ceux qui sont bien parti à destination et ceux qui ne le sont
pas. ( J’ai une carte basic de Sky en NDS et donc je ne peux voir le paquet cinéma).

# Display EMM messages on Konsole


# *0 don't show any EMM's
# *1 show only valid EMM's
# *2 show valid and bad EMM's with complete data display
# 1* Log any tier change on PW-Nagra-17xx cards into
/var/keys/pwupdate.log
M: { 00 }

Même chose que le paramètre C mais réservé aux emm

( 10 )

# AutoUpdate
# 00 is ignored (default)
# 01 enable AU
# 02 Auto AU !!!!! always use this !!!!!
A: { 02 }

Le paramètre A permet d’établir si les cartes dans les slots sont certifiées où pas à
accepter les mises à jours (rendez-vous compte qu’il existe un blocker software que
l’ont peut régler dans le softcam.cfg).
Pour les cartes nds de Sky, on m’a conseillé de régler à 01 pour recevoir les mises à
jour .

# Key update
# 01 update only new keys, default setting
# 02 update all keys (used for valid PMK checking)
U: { 01 }

Est utilisé pour la mise à jour des clés de l’émulation mais je ne sais pas comment
cela fonctionne, désolé. 

# Hash pids
# 00 hash all pids, DO NOT USE THIS OPTION, IT IS ONLY FOR TESTING
STUFF
# 01 hash only pids with implemented algos and available keys !!!!!
always use this !!!!!
H: { 01 }

Laissez ces données par défaut

# Key files folder


# 00 keyfiles in /var/keys
# 01 keyfiles in /var/tmp
T: { 00 }

Le paramètre T établit où se trouvent les clés pour l’ému. Par simplicité elles se
trouvent dans le répertoire keys avec les fichiers de configuration du gbox et donc,
laissez le paramètre T à 00

# On Screen Display for the Multysystemcam on com1/com2


# 00 No OSD (default)
# 01 display Smartcard messages in Neutrino
# 02 display Smartcard messages in Neutrino new nhttpd format
# 03 display Smartcard messages in Enigma
# mypass (use user=root and pass=mypass for nhttpd)
O: { 00 } 192.168.1.202

Le paramètre O établit s’il est nécessaire de faire apparaître un popup qui indique
quelles cartes sont introduites dans les slot du Dreambox afin de l’envoyé à un ip
bien précis.
( 11 )

Personnellement je laisse 00, donc, ne rien montrer. Si par contre quelqu’un aime
voir le popup sur l’écran de son téléviseur connecté au Dreambox, alors il doit
configurer le paramètre de la façon suivante :

O: { 03 } ip du dreambox (dans l’exemple 192.168.1.202) et insérer la password qu’il


utilise sur le dreambox à la place de “mypass”, sinon rien apparaît.

# Logger and NET-mode UDP port Init


# 00 do not init UDP port
# 01 Init UDP port for IP, port, UDP
L: { 00 } 192.168.1.29 8017

Le paramètre L établit si le logger inséré dans le gbox est actif, à quel ip et sur quel
port il enverra les données qui seront logguées.

Si on voudrait activer cette fonction (dans l’exemple, elle est disactivée 00) , on doit
configurer 01, l’ip du pc sur laquelle on enverra le flux des données et sur quel port
udp elles seront envoyées.
Successivement, le pc entamera un programme approprié gboxlog.

# demux, multicam/comport configuration


# *x ** ; x = device nummber to be used (0= default)
# D* ** ; force use of /proc/bus/gtx for cw write operations
(in the dbox2 the gbox writes directly the CW's, 00 is the
recommended mode ! No drivers are required) use D* ** ONLY if
you have Problems. 0* ** should be prefered !!!
# F* ** ; write CW's in both devices (used for PVR in STB04xxx devices)
# ** y* ; y=0001b (0x1*) use slot1 as Multicam (only on STB04xxx)
# ** y* ; y=0010b (0x2*) use slot2 as Multicam (only on STB04xxx)
# ** y* ; y=0011b (0x3*) use slot1 and slot2 as Multicams (only on
STB04xxx)
# ** *z ; z=0001b (0x*1) use com1 as Multicam
# ** *z ; z=0010b (0x*2) use com2 as Multicam
# ** *z ; z=0011b (0x*3) use com1 and com2 as Multicams
# ** yz ; yz=00110011b (0x33) use slot1+slot2+com1+com2 as
Multicams
# ** *z ; z=0100b (0x*4) invert CTS detection on com1
# ** *z ; z=1000b (0x*8) invert CTS detection on com2
# example: yz = 0x0A = 00001010 (use com2 with inverted CTS detection
line)
V: { F0 35 }

V établit quel type de slot est utilisé par le gbox (n’oubliez pas qu’il existe des
versions du gbox aussi pour Windows, Linux, dbox2, mips etc).
Le paramètre dans l’exemple sert pour faire lire les cartes dans les slots du
Dreambox.

( 12 )

# RS232 SSSP mode


# x debug messages, 1=on, 0=off
# y com port to use (0=none, 1=com1, 2=com2)
R: { 00 }

Aucune idée à quoi sert R 

On m’a suggéré cette explication du paramètre R :

« Le paramètre R : devrait être la possibilité d’adresser le flux des données par le port com du
pc (où du Dreambox je crois) à un décodeur externe connecté sur le même port.
Par exemple, si j’utilise le gbox avec un programmeur Phoenix sur pc et je connecte un Humax
5400, le deuxième port com du pc devrait fonctionner en utilisant justement SSSP.
Donc dans les propriétés du sharing du Humax, il y a la possibilité de choisir si on doit utiliser
HSIC (le plus commun) ou SSSP (donc le gbox). »

Donc pour l’instant, le test est en progression. 

Malheureusement je ne connais pas bien ces configurations et donc je ne les


commente pas, j’espère que par la suite avec l’aide de tous, on réussira à les
expliquer dans les moindre détails.

#
=============================================
================================
# extra options to override default seting in case you expirience Problems,
# normaly these setings are not required.
#
# cpu, api, cw write method
#
# 00 auto
# 01 80X86
# 02 MPC823
# 03 IBM STB04xxx
# 00 auto
# 01 ibm
# 02 api2
# 03 api3
# 00 cw write style = use internal routine (only dbox2)
# 01 cw write style = CA_SET_DESCR type1 (dbox2, vdr)
# 02 cw write style = CA_SET_DESCR type2
# 03 cw write style = CA_SET_DESCR type3
# 04 cw write style = 16 byte /proc/bus/gtx
# 05 cw write style = 4096 byte /proc/bus/gtx, cw offset=0x04D0
# xx write cw in 1st device with index=xx
# yy write cw in 2nd device with index=yy
# 01 means with .index=0 (default)
# 02 means with .index=1
( 13 )

# 03 means with .index=0 and .index=1


# .. any bitwise combination ...
# FF means with all 8 indexes (0-7)
#J: { 01 00 00 01 01 }

# Files, folders, devices


# folder/device comment
#
# Files, folders, devices
# folder/device comment
#
#F: { 01 } /var/tmp/pmt.tmp // pmt file
#F: { 02 } /var/tmp/emm.info // key update log file
#F: { 03 } /var/tmp/ecm.info // ecm info file
#F: { 04 } /var/tmp/atack.txt // atack info file
#F: { 11 } /var/keys // folder for config files
#F: { 12 } /var/tmp // folder for temporary file
#F: { 13 } /var/tmp // folder for keyfiles
#F: { 21 } /dev/dvb/adapter0/ca0 // ca device
#F: { 22 } /dev/dvb/adapter0/dvr0 // dvr device
#F: { 23 } /dev/dvb/adapter0/demux0 // demux device
#F: { 31 } /dev/dvb/adapter0/ca1 // second ca device to write cw's
(recording)
#F: { 41 } /dev/sci0 // STB04xxx slot1
#F: { 42 } /dev/sci1 // STB04xxx slot1
#F: { 43 } /dev/tts/0 // rs232 com1
#F: { 44 } /dev/tts/1 // rs232 com2
F: { 41 } /dev/sci0
F: { 42 } /dev/sci1
Ce paramètre sert à habiliter les slots du Dbox.
# For overclocking freaks, Clocking internal STB04xxx slots with:
# 1=7.80MHz 2=6.30MHz 3=5.25MHz 4=4.50MHz 5=3.94MHz 6=3.50MHz
7=3.15MHz
# Irdeto works fine on 7.8MHz, all other fine on 6.30MHz or 5.25MHz
# The Dream has not a clean clock signal, some cards that are sensitive
will
# refuse to work even on 3.5MHz, thats why 3.15MHz is the default value
there.
# On other STB04xxx recievers the same cards work with 6.30MHz
#
#F: { 51 } 02 // irdeto 6.30MHz
#F: { 52 } 03 // seca 5.25MHz
#F: { 53 } 03 // viaccess 5.25MHz
#F: { 54 } 03 // nagra 5.25MHz
#F: { 55 } 03 // crypto 5.25MHz
#F: { 57 } 03 // conax 5.25MHz
#F: { 58 } 03 // nds 5.25MHz
F: { 58 } 03

Ces valeures 02-03-04 etc servent de dire au dreambox ou au pc avec quel quarz la
carte doit être lue, en théorie, la valeure par défaut du NDS devrait être 03, donc

( 14 )
5.25 mhz mais on a aussi essayé d’utiliser 02, faisant donc ainsi lire la carte à 6.30
mhz.
1=7.80MHz 2=6.30MHz 3=5.25MHz 4=4.50MHz 5=3.94MHz 6=3.50MHz
7=3.15MHz

Cette F vient établie selon la carte qu’on utilise, dans ce cas, si la NDS était en
réalité une Irdeto, on devrait utiliser F: { 51 } 02

# force a name change of the season or sssp rs232 device


#F: { 45 } /dev/ttyS1

# set stay alive ping time in seconds (default is 300)


#F: { A0 } 300
# disable direct serial port I/O access on 80x86cpus (win and linux)
# direct port i/o is used to set unusual Baudrates, if you want to
# a 3.579MHz card in a 6.000MHz reader etc ...
#
# Enabled (A1=0) is the default setting, has always been !!!
#
# Disable (set to 1) it ONLY if you have problems with ioperm or you want
# to use a usb-to-rs232 smartcard reader
#
F: { A1 } 0
( 15 )

Fichiers temporaires du gbox

Quand le gbox est en fonction, il crée une série de fichiers qui permettent de voir le
fonctionnement et de le faire fonctionner d’une façon optimale ou aussi de
comprendre quesqu’il ne va pas..
Les fichiers vous les trouvez en /tmp où en /var/tmp et sont:

- gbox.ver
- share.onl
- share.info
- share.log
- share.stat
- attack.txt
- debug.txt
- ecm.info
- sc.info

Pas tout les fichiers viennent créé, tout dépend des configurations che vous avez
donné dans le fichier gbox_cfg et softcam.cfg

Examinons-les un par un.

gbox.ver

Dans ce fichier vous trouverez la version du gbox, comme ceci par exemple.
02.1B

Ce fichier contient une seule donnée: la version du gbox utilisée. Dans ce cas, c’est
la version 2.1b

Share.onl

Voici un exemple du fichier:

1 192.168.0.20 192.168.000.020 FE65 2.1B


0 dream.no-ip.info 0xx.061.xxx.247 050x 0.00

Ce fichier énumère tous les peer auxquels je suis connecté (les lignes D du
cwshare.cfg pour bien s’entendre) en indiquant auquel de ceux-ci je suis connecté où
non. Le chiffre 1 si je suis connecté et le 0 si je ne le suis pas, leur nom de domaine,
l’ip associé a celui-ci, le boxID de ce peer et la version du gbox qu’il utilise.

Dans ce cas je suis connecté à une ip locale en lan avec ip 192.168.0.20 (mon
serveur linux avec gbox) dans lequel a été donné un boxID FE65 et qu’il utilise une
version 2.1b du gbox. Par contre je ne suis pas connecté à un peer avec le nom de
domaine dream.no-ip.info associé à l’ip 0xx.061.xxx.247 et boxID 050x.

( 16 )

Ainsi je peux constater que la version de son gbox est 0.00 (non identifié).

Ce fichier est utile pour savoir quel peer ne sont pas connectés, à voir le motif auquel
je suis offline.. peut-être tout simplement parceque le décodeur du peer est offline
mais peut-être aussi parceque j’ai inséré une fausse password dans la ligne D de
mon cwshare.cfg ou aussi parceque le nom de domaine dyndns n’a pas actualisé la
DHCP fournie par mon opérateur où celle de la contrepartie.

Share.info

Voici un exemple du fichier:

CardID 0 at 192.168.0.20 Card 0100006A Sl:1 Lev:0 dist:3 id:AB2C


CardID 1 at 192.168.0.20 Card 0100006A Sl:1 Lev:0 dist:3 id:DA0C
CardID 2 at 192.168.0.20 Card 0100006A Sl:1 Lev:0 dist:3 id:248C
CardID 3 at 192.168.0.20 Card 0100006A Sl:2 Lev:0 dist:3 id:CD2C
CardID 4 at 192.168.0.20 Card 0100006A Sl:3 Lev:0 dist:3 id:D69C
CardID 5 at 192.168.0.20 Card 0100006A Sl:1 Lev:0 dist:3 id:AE7C
CardID 6 at 192.168.0.20 Card 0100006A Sl:1 Lev:2 dist:3 id:3A7C
CardID 7 at 192.168.0.20 Card 0100006A Sl:3 Lev:0 dist:3 id:CD3C
CardID 8 at dream.no-ip.info Card 01000074 Sl:1 Lev:0 dist:4 id:673C
CardID 9 at 192.168.0.20 Card 09190000 Sl:2 Lev:0 dist:2 id:171C

Maintenant allons comprendre à quoi servent ces données :


- CardID 0 ------ numéro progressif de la carte que je reçois sur le gbox.. 0 est un numéro
séquentiel, 1 la première carte, 2 la seconde etc.
- at 192.168.0.20 ------ c’est l’adresse ip auquel je reçois la carte, dans ce cas, du gbox en
lan ; mais j’ai aussi mis un exemple avec un nom de domaine (voir CardID 8).
- Card 0100006A ------ type de cryptage de la carte. Exemple, la CardID 9 je vois 09190000
qui s’agit de Sky Italia NDS.
- SI :3 ------ Indique à quel slot la carte originale est introduite dans le décodeur. Dans ce
cas, slot 1 – 2 et même 3, dans ce cas précis se sont des Phoenix (si on utilise un
serveur linux ont peux aller jusqu’à 18 slot).
- Lev :0 ------ M’indique que la carte que je reçois, pourrais la repasser à d’autres. Dans
ce cas le lev (niveau) 0 signifie que je ne peux plus la resharer. Dans le cas du CardID 6
par contre, en ayant un lev 2 signifie que je peux la passer à un ami et celui-ci peut la
repasser à son tour à un ami connecté à lui.. (voir cwshare.cfg la valeur des droits
certifiés).
- Dist :3 ----- A combien la carte est distante de mon décodeur que je suis en train de voir
dans ce cas 3. Ceci signifie que je prends cette carte par un ami qui à son tour la prend
de X et qui à son tour de Y. Dans ce cas, Y reçois la carte par Z qui est le distributeur
principal et celui-ci a introduit la carte dans le slot 1 (voir CardID1).
Plus la valeur est haute et moins bonne sera la qualité du sharing. Par contre, plus la
valeur est basse et plus la communication entre mon gbox et la carte sera brève et
rapide.
- id : AB2C ---- Identifie le boxID attribué au décodeur au départ. A utiliser dans le
cwshare.cfg dans les lignes G et Y pour bien s’entendre.

( 17 )

share.stat

Ce fichier contient quelques statistiques relatives au sharing et plus précisément :

- Hello_I/O ------ Numéro des Hello’s “handshakes” entre mon gbox et les
variants peer.
- ECM_I/O/F ------ ECM reçu (In), envoyé (Out) et expédiés de mon gbox.
- CW_I/O/F ------ Control Words reçu (In), envoyé (Out) et expédiés de mon
gbox .
- GSMS_I/O ------ Messages reçus (In) et envoyés (Out). Donc vous devez
savoir qu’il est possible d’envoyer des messages de texte en indiquant le
boxID, ceux-ci apparaîtront sur l’écran du téléviseur du boxID.interessé 
- Loc_up and loc_down ----- je ne sais pas précisément mais je crois qu’il s’agit
du trafic engendré en local par le gbox.
- Inet_up and inet_down ------ comme ci-dessus, je ne le sais pas, mais je crois
qu’il s’agit du trafic engendré par les peer à distance.

Share.log ------ Même informations du fichier share.stat mais en temps réel.

atack.txt

Ce fichier montre toutes les tentatives externes des connexions à notre gbox
tendanciellement non autorisées.
Je dis tendanciellement parce qu’il arrive certaines fois un manque de mise à jour
de la dyndns du peer distant ou alors la password erronée dans notre
cwshare.cfg ou celui du peer distant.
Certaines fois c’est dû aussi à des diverses versions de gbox.

Debug.txt

Ce fichier qui vient se créer en base au paramètre Z du gbox_cfg tient les traces
de toutes les écritures qui se produisent dans le gbox.
Ce fichier donc vient continuellement surveiller pour vérifier le bon ou mauvais
fonctionnement du gbox. Ce fichier est permanent, donc il ne s’efface pas comme
les autres au renvoi du gbox mais il tient un registre au moment de celui-ci.
Il est préférable certaines fois de faire un delete au combien celui-ci peut
augmenter de volume.
J’ai réussi à avoir un fichier debug.txt dans un serveur linux supérieur à 30 mb. 

( 18 )

ecm.info

===== NDS ECM on CaID 0x0919, pid 0x0644 ======


CW0: 00 00 00 00 00 00 00 00
CW1: AE C0 23 BC D3 D1 94 29
decode:slot-1

Ce fichier indique quelle carte le gbox est entrain de voir dans le moment même.
Dans ce cas, je suis entrain de voir un canal nds avec pid 0644 (cette donnée me
sert à me servir adéquatement du paramètre W du cwshare.cfg).
Dans ce cas, je suis entrain d’utiliser mon abonnement Sky dans le slot 1 du
Dreambox.
Par contre, si j’étais entrain de voir chez un peer, j’indiquerais le boxID de celui-ci
et même l’écriture suivante :
decode: network

sc.info

slot1 - NDS 0919 Serial 00xxxxxxx


slot2 - Dreamcrypt
com1-1
com1-2
com1-3
com1-4
com1-5
com1-6
com1-7
com1-8

Ce fichier montre quelles cartes sont dans les slots du Dreambox et dans les
éventuels Phoenix connectés.
En outre, pour chaque carte il apparaîtra un ultérieur fichier appelé sc01.info pour le
slot 1; sc02.info pour le slot 2 etc.
A l’intérieur de ce sc.info on y voit les détails de la carte par exemple celui reporté ci-
dessous la carte dreamcrypt insérée dans le slot 2

( 19 )

Sc02.info – exemple

ATR:3B9C131181647265616D6372797074000408
Dreamcrypt card

CA system: 00 04
Provider : 00 00 02
Serial_a : 2B A8 xx
Serial_b : 86 9D xx
caid : 4A 70
camcrypt : TEA Mode
init OK
Baudrate = 9600 Baud

Softcam.cfg

# SoftCam EMM Log configuration


#
# Save EMM data
# 00 Don't save anything (default)
# 01 Save processed EMMs (/var/tmp/emmproc.bin)
# 02 Save rejected EMMs (/var/tmp/emmblock.bin)
# 03 Save both EMMs
L: { 00 }
Ici on pourrait décider de sauver ou pas les EMM en /var/tmp
# Check additional OSC Frequency !!! ONLY FOR DBOX2 !!!
# 00 No Check (default)
# 01 Check on, Value in KHz , example 8MHz=08000
F: { 00 } 00000
Examination de la fréquence de l’oscillateur
# Check additional Baurate for ATR !!! ONLY FOR DBOX2 !!!
# 00 No Check (default)
# 01 Check on, Value in bit/s, example 81861
B: { 00 } 0000
Examen du Baurate de la carte
# Enable TPScrypt Support
# *0 TPScrypt off
# *1 TPScrypt on (default)
# 1* don't use PTS on Viaccess cards
# 2* don't use PTS on Cryptoworks cards
# 3* don't use PTS on Viaccess and Cryptoworks cards
Y: { 01 }
Ici on active le TPScrypt

( 20 )

# Empty RS232 buffer before writing


# 00 No reset
# 01 Reset Buffer (default)
E: { 01 }
Ceci est le buffer sur le port série est doit être activé si on veut faire du sharing.
# SoftCam Blocker/Filter definition
#
# 00 = Allow EMM (default for all)
# 01 = Block EMM addressed to:
# all card
# | shared address/provider
# | | unique address/hex_serial
# ----------------------------------
I: { 00 00 00 } Irdeto All SA UA
V: { 00 00 00 } Via - SA UA
S: { 00 00 00 } Seca - SA UA
N: { 00 00 00 } Nagra All SA UA
C: { 00 00 00 } Crypto All SA UA
O: { 00 00 00 } Conax - SA UA
D: { 00 00 00 } NDS All SA UA
Ici on se trouve sur quelque chose que je n’ai jamais utilisé. Il s’agit d’activer un
blocker sur une carte déterminée. Dès qu’on aura plus d’infos, on vous préviendra.
# Timeout Definitions
#
T: { 00 02 01 } ATR timeout (normal*X), instruction timeout (normal*X)
Ici on pourrait intervenir sur l’ATR mais vaut mieux le laisser tel qu’il est.
# com1/com2 delays, all delays to be entered in decimal !
#
# Do NOT touch !!!!!!!!!!!!!!!!!!
# all timings should be 0, change only if you have problems.
T: { 01 00000 000 } Irdeto : byte delay (1e-6 s), instruction delay (1e-3 s)
T: { 02 00000 000 } Seca
T: { 03 00000 000 } Viaccess
T: { 04 00000 000 } Nagra
T: { 05 00000 000 } CryptoWorks
T: { 06 00000 000 } Geldkarte
T: { 07 00000 000 } Conax
T: { 08 00000 000 } NDS
T: { 09 00500 000 } Firecrypt

Même ceci est conseillé de le laisser par défaut


P.S. : attention qu’il existe dans votre softcam.cfg la ligne T { 09…} laissez comme
indiquée sinon le gbox ne reconnait pas les cartes Firecrypt dans les slot.

( 21 )

# Use Crypto card bug to decode any CW, no matter of chid


#
# Cxxx configuration (is aktiv for the provider only if a config line is
present)
# (ECM sample to be used to get the cw's with Cxxx)
#
# Provider provider chid - that is present on the card for that provider
# || || || ||
# Use constant CW's for
# caid pid CW0 ... CW1 ...
0: { 01 00 56 00 { 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF }

Ici on pourrait décider quel CWs utiliser pour un canal déterminé mais mieux vaux
pas le toucher.

Ignore.list

Ce fichier en /var/keys sert à éliminer du sharing toutes les cartes que je ne désire
pas regarder.
(J’élimine les cartes du sharing et donc même ceux connecté à moi ne les verront
pas).
Ce fichier peut-être utilisé pour éliminer les providers que je ne peux voir appartenant
à des satellites que je ne prends pas ou qui n’existent plus (exemple, le vieux
provider seca de Sky 00 70, 71 etc) ou alors des providers qui ne m’intéresse pas
( je ne comprends pas un mot de grec et donc ça ne m’intéresse pas à le tenir en
sharing, nova etc).

Attention à bien utiliser ce fichier car il arrive que certains aient inséré par erreur un
provider alors qu’ils voulaient le voir avec le résultat de ne pas voir les cartes en
question, d’embêter du monde en prétendant de ne rien voir et en disant que la carte
n’y était pas alors qu’elle était dans leurs ignore.list.
N’utilisez pas des fichiers que vous trouverez en toile mais plutôt de les éliminer pour
commencer en tant que chacun élimine ces providers qui ne leur intéressent pas.( Je
crois que je ferais mieux de mettre en toile une ignore.list qui élimine tous les
providers hard. Comme ça, je ferais devenir tout le monde singlé de ne pas pouvoir
se tripotter ).

Voici un exemple de l’ignore.list

# G: Card records will be ignored in the share.info and will reduce


# the total cards nummber. (maximum 128 G: records are allowed)
# ----------------------------------------------------------------------------
# !!! BLOCK VALID CARD RECORDS ONLY ON BOXES NOT USED FOR
FORWARDING !!!
# To reduce more cards you can spezify here all Providers that you do
# not use, like conax if you don't have Thor, or providers from all other
# sattelites if you only have Astra&Horbird. If you still want reduce more
# you can for example specify 17220000 to ignore all PW Cable cards.
( 22 )

#
# But keep in mind that this will totaly discard these card records, and
# you will also not be able to forward them.
# ----------------------------------------------------------------------------
#
# ----------------------------------------------------------------------------
# Seca1 and Seca2
#
G: { 01000000 } # IssuedSeca
G: { 01000002 } # orbit old
G: { 01000003 } # Canal+France(Old)[19E]
G: { 01000004 } # CSNFrance(Old)[19E]
G: { 0100000B } # premiere old
G: { 0100000C } # ???
G: { 0100000D } # TVBSuperChannel(Old)[19E]
G: { 0100000E } # ???
G: { 0100000F } # ABSat/Cinestart(Old)[13E]
G: { 0100009B } # ???
G: { 0100009C } # ???
G: { 0100009D } # ???
G: { 0100009E } # ???
G: { 01000010 } # ???
G: { 01000011 } # +Calcio(Old)[13E]
G: { 01000012 } # ProTV/Equida(Old)[19E]
G: { 01000014 } # C+Vlaanderen(Old)
G: { 01000019 } # C+NL[19E]
G: { 0100001A } # CSATParaboleReunion(Old)[16E]
G: { 0100001C } # Mediaset
G: { 0100001D } # oldCyfra
G: { 01000021 } # Astro[91E]
G: { 01000025 } # ABSat[19E]
G: { 01000026 } # ZeeTV(Old)[105E]
G: { 01000029 } # C+Horizons/Eurosport(Old)[13E]
G: { 0100002A } # Mediatech[4W/30W]
G: { 0100002E } # Canal+Digitaal(NL-Cable)
G: { 0100002F } # orbit 1W/26E
G: { 01000030 } # RAITV[13E]
G: { 01000031 } # kiosque old
G: { 01000036 } # ???
G: { 01000064 } # Digital+Espana[19E]
G: { 01000065 } # cifra
G: { 01000066 } # Digital+Espana[19E]
G: { 01000068 } # Digital+OLD
G: { 0100006B } # C+NL[19E]
G: { 0100006C } # C+NL[19E]
G: { 0100006D } # C+NL[19E]
G: { 01000070 } # SkyItalia[13E]
G: { 01000071 } # SkyItalia[13E]
( 23 )

G: { 01000072 } # SkyItalia[13E]
G: { 01000073 } # SkyItalia[13E]
G: { 01000075 } # ???
G: { 01000076 } # Canal+Digitaal[Cable]
G: { 01000077 } # ???
G: { 01000078 } # ???
G: { 010001D5 } # ???
G: { 01000300 } # ???
G: { 010000B1 } # ???mediaset
G: { 010000B2 } # ???mediaset
G: { 0100BEEF } # SkyItalyFakeID`s
G: { 0100FFFF } # SkyItalyFakeID`s
# G: { 0100007A } # SCT/UltraPlus/Luxuria
# G: { 0100007b } # SCT
# ----------------------------------------------------------------------------
# Viacces
G: { 05001570 } # ???
G: { 05001A20 } # ???
G: { 05001C10 } # GlobecastFrance[13E]
G: { 05007000 } # ABSat[19/13E]
G: { 05007400 } # CFI/MCMBelgique[13E]
G: { 05008000 } # FTCable[19E]
G: { 05008800 } # ComHemSweden[Cable]
G: { 0500A000 } # BBCPRIME
G: { 0500A120 } # ???
G: { 0500A810 } # TDCSelector(Cable)
G: { 0500A820 } # TDCSelector(Cable)
G: { 0500AC00 } # HRT[13E]
G: { 0500C000 } # C-Skynet(nouseinEurope)
G: { 0500C010 } # C-Skynet(nouseinEurope)
G: { 0500C020 } # C-Skynet(nouseinEurope)
G: { 0500C030 } # C-Skynet(nouseinEurope)
G: { 0500C400 } # NTVOLD
G: { 0500C410 } # NTV+
G: { 0500C800 } # Senda[SwedishCable]
G: { 0500C810 } # Senda[SwedishCable]
G: { 0500C820 } # Senda[SwedishCable]
G: { 0500C830 } # Senda[SwedishCable]
G: { 0500C840 } # Senda[SwedishCable]
G: { 0500C850 } # ???
G: { 0500C860 } # ???
G: { 0500C870 } # ???
G: { 0500D800 } # Televisa(43Wold)
G: { 0500E800 } # GlobecastEspana[13E/30W]?
G: { 0500E810 } # GlobecastEspana[13E/30W]?
G: { 05010C00 } # Viasat[5E]
G: { 05010C10 } # Viasat[5E]

( 24 )

Comme vous le voyez, la syntèse en est tout simplement une:

G: { identification du provider et le crypt relatif }

Pour vous aider, vous pouvez utiliser les informations que le fichier share.info vous
met à disposition et qui reporte déjà les données à insérer entre les parenthèses.

Dans la dernière version du gbox 2.22 j’ai trouvé que l’ignore.list utilise un format
différent pour indiquer les codages à éviter. Je vous reporte ce qui se trouve dans
l’exemple inséré dans le fichier zip de la full_distro.

# Ignore Irdeto CHID's


I: { 7D 23 }
# Ignore SECA Provider
S: { 00 72 }
S: { 00 73 }
# Ignore Viaccess Provider
V: { 02 0A 10}
V: { 02 0A 20}
V: { 02 0A 30}
V: { 02 0A 40}
# Ignore Cryptoworks Provider
C: { 0D 02 88 }

Malheureusement je ne sais la quelle utliser dans l’une de ces deux.


Pour l’instant dans mon gbox j’utilise la version avec les G: jusqu’à démentir.

( 25 )

fichier nds

Passons maintenant à l’explication comment extraire le serial et le numéro de la


carte nds.
Pour simplifier, on a besoin d’utiliser le Sky Box.
Premièrement, on on va aller lire les données de sa propre carte nds en appuyant
sur la touche menu de la télécommande du Sky Box et ensuite séléctionner la ligne 4
4 = configuration du décodeur

( 26 )

Ensuite la touche 6
6 = diagnostique

( 27 )

Ensuite la touche 1
1 = Données du décodeur

( 28 )

Si tout à été sélectionné correctement, vous devriez avoir le tableau ci-dessous:


Ce qui nous intéresse à nous c’est le numéro serial (en troisième position) du
décodeur connecté à notre carte (le fameux marriage) indiqué sur la photo ci-dessus
XXXXXXXXXX (10 chiffres) et le numéro de la carte (en dernière position) comme
indiqué yyyyyyyyz (9 chiffres).

Maintenant prenons la calculatrice de windows configurée en mode scientifique et


ensuite nous allons convertir les 10 chiffres du serial du décodeur en hexadécimales
en ajoutant des zéro pour arriver à 8 chiffres et nous obtiendrons un numéro du style
00AA11DD (ce numéro a été inventé et chacun aura sa valeur différente) qui sera
notre BoxSerial.
Ensuite, nous allons prendre les huit premiers chiffres du numéro de la carte (pour se
comprendre, les valeures de y et de z) et toujours avec la calculatrice de windows
(en scientifique biensûr) on va convertir le tout en hexadécimal en ajoutant des zéro
jusqu’à qu’on obtienne un numéro à 8 chiffres – on aura un numéro du type
00BB22EE qui sera la donnée à introduire comme Cardser.

Les données que l’on a à peine créé seront insérés avec un éditeur crimson dans un
fichier qu’on appellera nds et qui ira se mettre en /var/keys sans extension.
Voici un exemple ci-dessous:

( 29 )

# nds camcrypt data


#
# CardSer. BoxSerial
#
N: 00BB22EE 00AA11DD

Dans un site, voici un autre exemple avec des données inventées

Exemple pratique: Serial 0012345678, Smart card 456975113:

12345678 converti en hex BC614E BOXID: 00BC614E

45697511 converti en hex 2B949E7 SERIAL: 02B949E7

Important: avant la converion en hex, n’oubliez pas d’ôter les deux premiers
chiffres du serial et le dernier du numéro de la carte.

Le fichier devra être comme ceci:

# nds camcrypt data


#
# CardSer. BoxSerial
#
N: 02B949E7 00BC614E

Maintenant, relancez le gbox et si tout à été fait dans l’ordre, vous verrez votre carte
nds.

Edité en langue française par LeNunZ le 18 mars 2006

You might also like