Newsgroup: it.hobby.satellite-tv.digitale
Titolo: DOC 1

Prima di cominciare e' necessario sottolineare alcuni concetti fondamentali.
Le informazioni contenute in questo sito sono solo per scopo educativo
e servono esclusivamente per lo studio del sistema di codifica Irdeto.
L'uso di queste informazioni per la visione di programmi
codificati senza aver sottoscritto un regolare abbonamento
e' vietato dalla legge.
In queste pagine non e' in vendita nessun articolo, tantomeno
smart card, ricevitori o altri oggetti per la Tv satellitare. 
Sottolineo che non fornisco e non forniro' mai supporto
a qualsiasi persona che usera' le conoscenze acquisite
per trarne un profitto. Sappiate sin dall'inizio che
considero queste persone degli approfittatori e truffatori
della ingenuita' altrui.
-----------------------------------------------------------------
In questo sito verranno affrontati solo i concetti essenziali
per imparare a scrivere crd. Tutte le altre informazioni
anche se importantissime per uno studio serio sul sistema
non verranno affrontate, sia perche' richiederebbero troppo
tempo per me, sia perche' il risultato sarebbe comunque
scadente rispetto ai doc e alle informazioni riportate in
altri siti. Qui' tutto sara' incentrato nella comprensione
del significato di quelle sequenze di byte misteriosi contenuti
nei vostri file *.crd.
Una buona scelta da fare all'inizio e' associare i files 
con estensione "crd" al programma Blocco Notes, in questo
modo potrete vedere quali bytes e quali comandi verranno inviati
alla smart card.
Personalmente uso il programma CardMaster, un po' perche' e' stato
il primo vero programma per le nostre smart card Irdeto, e poi
perche' la cosa essenziale non e' tanto l'interfaccia grafica
o le varie funzioni offerte: la cosa fondamentale sono sempre
i bytes che voi inviate alla vostra smart card.
Da questo momento verranno usate delle sigle convenzionali per
rappresentare dei concetti ricorrenti:
sc = smart card
key = key di decodifica
mkey =  master key o Key 00
pkey = plain key o key decriptata ottenuta dalla lettura del reg8
pmkey = plain master key o master key decriptata
reg8 = registry 8, l'area di memoria della sc dove vengono 
       memorizzati i dati temporanei elaborati dal processore della sc
chanid = channel id, codici dei vari pacchetti di canali
prov= provider
provid00 = provider 00
provid10 = provider 10
serascii = serial ASCII, numero seriale della sc 
serhex = serial hex, numero seriale della sc  esadecimale
Atr = Answer to reset, risposta al reset
CoCo = Country Code, codice dello stato ITA=Italia
0300 = smart card del Welcome Kit D+, o anche le sc non ancora
       attivate e che non hanno quindi un provid valido
dump = lettura di un'area di memoria della sc
provgroup = provider group, gruppo di provid composto da 256 sc
            che hanno i primi due bytes del provid uguale.
sign = signature o firma digitale.
bfa = brute force attack.
cmq = comunque.
Per i piu' esperti in alcuni punti leggerete delle cose che
a voi sembreranno banali, ma questo sito e' dedicato a coloro
che sanno ZERO e vogliono imparare l'essenziale. Il sito
e' stato studiato per quelli "de coccio" (come dicono a Roma),
quindi cio' che a voi sembra scontato per altri puo' essere 
una rivelazione fenomenale.
Altra cosa importantissima: ho realizzato questo sito per 
non ricevere piu' messaggi di posta elettronica di persone
che vogliono imparare. L'aiuto che fornisco e' solo sul forum
di Digitalsin quando vedo che nessuno risponde o risponde
in modo non corretto. Senza offesa mi sono stancato di collegarmi
e passare le ore solo per rispondere al fiume di messaggi
che riempono la mia casella di posta elettronica.
Se non riuscite in qualcosa postate sui vari forum che
trovate, qualcuno vi rispondera' o altrimenti datevi da fare,
le informazioni non sempre scendono dal cielo, fate delle
ricerche su Internet, leggete i doc, libri riviste tutto
cio' che ritenete interessante. Se non volete rimanere collegati
ore e ore esiste, ammesso che non lo sappiate, il salvataggio
su Hard disk: salvate tutto cio' che trovate e ve lo leggete
con calma.
Ultima cosa e poi cominciamo: la prima parte anche se 
teorica e' essenziale per capire la seconda parte pratica.
Non riuscirete a capire cosa significa 680d o 1009  se non
imparate la parte teorica. Una volta chiariti e imparati
alcuni concetti sara' semplicissimo scrivere un crd.
Avviamo quindi Cardmaster, inseriamo la smart card nel nostro 
Phoenix a 6Mhz collegato con un alimentatore stabilizzato e
l'avventura comincia.
Le informazioni visualizzate
----------------------------
Possiamo vedere subito alcuni dei dati contenuti nella sc
da destra a sinistra e dall'alto verso il basso
ATR, serhex, provid00, 
serascii e CoCo, versione irdeto, data00, data10, provid10.
SerHex
------
Uno dei valori piu' importanti della smart card e' il Serhex.
E' un valore composto da 3 bytes ed e' unico per ogni smart 
card. Serve per identificare una sc tra i milioni di sc 
esistenti. Quando devono essere effettuate determinate
operazioni la sc che avete viene "chiamata" dal gestore
tramite il serhex.
Non esistono due sc con serialhex uguale, questo e' stato fatto 
appositamente per evitare che una sc di d+ riceva un'attivazione 
per stream o per un altro gestore.
Al momento in cui scrivo non si sa' se e' un valore che
puo' essere modificato, probabilmente e' possibile cambiarlo
ma al momento non si sa' come. Scoperto questo, potra' essere 
usato il termine "clonazione", fin quando questo valore non 
sara' modificabile si potra' parlare solo di programmazione di sc.
Questa e' cmq una mia interpretazione basata sul fatto che il
valore che contraddistingue la carta e che non viene mai
cambiato dal gestore e' il Serhex ed il Serascii quindi per creare
un clone e' necessario che tutti i valori delle due sc in esame
siano uguali.
SerAscii
--------
Il Serascii e' il numero scritto su uno dei due lati della
vostra sc, ad ogni serascii e' abbinato un serhex. 
E' composto da un totale di 11 cifre (0123 4567 890)
Il serhex essendo un numero in esadecimale non e' pero'
la semplice trasformazione del numero decimale del serascii.
Il serascii serve al provider al momento che dovete richiedergli
qualcosa. Voi gli leggerete il serascii e nei loro terminali
corrispondera' un Serhex tramite il quale poi si risalira'
agli altri valori.
Provid
------
In una sc irdeto ci sono due provid, il provid00 ed il provi10.
Questo perche' all'inizio era stato previsto che le sc potessero
avere due pacchetti con due abilitazioni diverse. Poi, sia
per praticita' sia perche' non era necessario, la maggior parte
dei gestori si e' ritrovata ad usare uno solo dei due provid,
cioe' il provid00.
Il provid e' un valore composto da 3 bytes e fino a poco tempo
fa' poteva essere considerato il numero del vostro abbonamento.
Questo valore al momento che vi viene data una sc nuova e' 
00 03 00 per il provid00 e 00 04 00 per il provid10.
Dopo l'attivazione dell'abbonamento veniva cambiato in un valore
diverso. 
Il provid e' sequenziale ovvero se per assurdo avete due sc e vi
vengono attivate una dopo l'altra il valore del provid sara' 
sequenziale es 00 10 11 - 00 10 12.
Tornando al discorso del "poteva essere considerato" cio' ora
non e' piu' vero perche' se acquistate una sc Welcome Kit D+
e la inserite nel ricevitore, automaticamente verra' assegnato
un provid00 valido diverso da 00 03 00, ci sono degli aspetti
da considerare in questo che affronteremo successivamente.
Date
----
La data interna della sc e' importante per la temporizzazione
degli eventi. Se la sc non sa' che giorno e' oggi non potra'
mai sapere se il vostro abbonamento e' scaduto.
Essendo due i provid e quindi teoricamente due gli abbonamenti
che possono essere inseriti in una sc, le date sono due: una
per provider00 > date00 ed una per il provider10>date10.
Le date sono composte da 2 bytes e sono espresse in esadecimale.
Imparate a ragionare in esadecimale perche' tutti i valori di
una sc sono in esadecimale cio' vuol dire che dopo 09 non
c'e' il 10 ma 0a poi 0b,0c,0e,0f e finalmente 10.
Esadecimale vuol dire che il numero massimo di valori rappresentabili
non e' 10 ma 16 (F appunto).
Nelle smart card i valori a zero sono rappresentati da delle FF.
Se in un dump vedete FF FF FF FF FF vuol dire che quelle aree
sono vuote.
Atr
---
E' la risposta al segnale di Reset inviato dal terminale, in
questo caso dal vostro phoenix. Il reset serve a far partire
la sc, e' come il pulsante di accensione del vostro pc.
Dopo che la sc riceve il reset, risponde con l'ATR che e'
la risposta al reset. E' una sequenza di 20 bytes:
3B 9F 21 0E 49 52 44 45 54 4F 20 41 43 53 20 56 31 2E 36 9F 
Serve ad indicare al terminale i parametri necessari per
la comunicazione, cioe' il protocollo da usare, questo non
ci interessa. Una curiosita' se scrivete questi bytes
in un editor hex vi comparira' la scritta Irdeto ACS v.1,2.
IMPORTANT NOTICE:  If you are not using HushMail, this message could have been read easily by the many people who have access to your open personal email messages.
Get your FREE, totally secure email address at 
http://www.hushmail.com
.
--
Posted from 
mail6.hushmail.com
 [216.18.8.78]
via Mailgate.ORG Server - 
http://www.mailgate.org


Sei proprio un C......e
bel servizio hai fatto

Key00 = Masterkey ? Sempre ? Sicuro ?
E' una domanda.
glm
On 11 Feb 2000 22:13:00 +0100, 
vincen...@hushmail.com
 wrote:
snip

E' una domanda.
La key00 e' la key00 e ma Masterkey e' la Masterkey, sono 2 cose
diverse.
Ma alla maggioranza dei lamer questo sfugge :-)
Andrea Savini
RCSŠ

RCSŠ

Io penso che sia la stessa cosa.
Lamer.
Andrea Savini
RCSŠ

RCS©

RCSŠ


>RCS©


non capisco come si permette di distribuire insulti in modo gratuito
Pensa che all'inizio pretendeva pure che lo pagassero!
SCHERZO OVVIAMENTE :-)
Ignazio 
GSS©
More than 90 HiRes images in my home page  
http://www.geocities.com/~puddu/
Oltre 200 Immagini di endoscopia digestiva
http://www.areamedica.com