Písať o oscame dnes,znamená,že zajtra to už nemusí byť pravda.V každom prípade si myslím,že tak,akým je napr. cccam,aj oscam smeruje k plnoautomatickému softwéru na ovládanie a zdieľanie zariadení v DVB rozhraní.S možnosťou laborovania s jednotlivými parametrami nastavení(čo je nepochybne bonus pre ľudí bažiacich po znalostiach).
OSCam.
Oscam je možné spúšťať bez nejakých špeciálnych nastavení(doporučujem).Tzn.,že jednotlivé parametre sú na tzv. základných(defaultných) hodnotách,prípadne sa tieto parametre vygenerujú automaticky.Pokiaľ táto automatika funguje,je lepšie ponechať nastavenie na nej.Ako príklad môže slúžiť nastavenie parametra caid v oscam.server pre čítačku karty.Ak si tam ten caid zadefinujete,karta s iným caid nebude pracovať správne,a vy sa budete škrabať za ušami,že prečo to kua nejde.
Nebudem sa tu zaoberať všetkými parametrami,napokon všetko je na wiki oscamu.
oscam.conf
[cccam]ignorereshare = 0|1
týmto parametrom sa dá zachovať|zrušiť funkcionalita originál cccamu na povolenie|zakázanie resharovať(posúvať ďalej) pripojenie na cccam server.Bez tohto parametra by sa určite dalo žiť a tvorcovia oscamu si ho kľudne mohli odpustiť.Hojne sa využíva na exchange serveroch,ktoré vykazujú to,že všetky ponúkané karty sú akože lokálne,teda na cccam serveri sa javia ako z hop1,no odozva z nich je cez 3s.
oscam.server
fallback = 0|1tomuto parametru by som rád venoval širší priestor,pretože si myslím,že funkcionalita tohto nastavenia by sa mohla v budúcnosti hodiť.
Fallback je záložná čítačka(karta,budeme sa baviť len o lokálnych kartách),teda ak si zadefinujem dve čítačky-hlavná a záložná,na záložnú nepôjdu-v prípade úspešnej odpovedi z hlavnej-žiadne požiadavky.Na hlavnú idú požiadavky stále-aj keď nedekóduje.Týmto spôsobom by sa teoreticky dal obísť tzv. surflock,no je pravdepodobné,že bude potrebných viac ako dve karty.Potom by chcelo dorobiť v oscame funkciu s pracovným názvom fallback1,ktorá by zálohovala nie hlavnú,ale záložnú čítačku atď.Teda vytvoriť akúsi kaskádu,pričom by dekódovala vždy len jedna karta. Na hlavnú by šli požiadavky stále a pokiaľ začne dekódovať,vypnú(nepôjdu na ne ecm dotazy) sa všetky záložné.
V oscame existuje funkcia loadbalancing(lb)-takisto ako napr. v cccame,ktorá podľa určitých pravidiel(štatistík) rozdeľuje požiadavky na karty tak,aby zaťaženie jednotlivých kariet bolo rovnomerné.V oscam.conf je potrebné loadbalancing zapnúť výberom jedného z jeho módov.Oscam je samozrejme viac konfigurovateľný a v tejto súvislosti stoja za zmienku parametre:
lb_weight = weight
nastavenie "priority" pre čítačku,ktoré umelo navyšuje(znižuje) dobu odozvy karty.Zvyšovaním hodnoty weight(default=100) sa zvyšuje pravdepodobnosť výberu danej čítačky. Ak mám dve karty s cca rovnakou odozvou,tak nastavenie lb_weight=200 pre jednu z nich,dostane túto kartu umelo na úroveň polovičnej odozvy.
lb_force_fallback = 0|1 (od verzie 9725)
Ak sa zapne lb,nastavenie fallback sa ignoruje,práve preto bol vytvorený záložný reader v móde lb,ktorý by mal plniť funkciu pre "poslednú bezpečnú šancu dekódovania".
Kaskáda by v tomto poňatí mohla potom vyzerať takto(pri cca rovnakých odozvách jednotlivých čítačiek):
oscam.conf
[global]
lb_mode = 1
lb_min_ecmcount = 2
oscam.server
[reader]
lb_weight = 200(500)
[reader]
lb_weight = 100(10)
[reader]
lb_force_fallback = 1
Edit:na streamboarde oscamu je otvorený tiket s prosbou o vytvorenie fallback kaskády(prepínača).Je ale otázne,či sa v tej veci niečo urobí.
Ďalšou možnosťou,ako týmto spôsobom menežovať čítačky(karty),je vytvorenie skriptu.
oscam.user
oscam.dvbapi
toto je vlastne filter(o ktorom som písal aj na iných miestach),pomocou ktorého sa dá optimalizovať výber dát zo streamu(prijímaného signálu),potrebných na dekódovanie a na obsluhu prístupovej karty. ..._______________________________
Najskôr,aby sme nezabudli(pretože v oscame to stále nie je)-freesat ICE(0d97) karta preklopená do irdeta(0653).Je potrebné upraviť reader-irdeto.c:
tam,kde nájdete podmienku na "caid == 0x0624",nateraz v camkey 2x a irdeto_do_ecm 1x,je potrebné dopísať aj 0653,alebo prepísať napr. 0648.
Samozrejme kartu spúšťať s parametrom "force_irdeto = 1".
Keďže kartičiek na share rapídne ubúda,venujme sa tým,ktoré by mohli ešte nejaký čas vydržať.Práve freesat(upc) karty sú na túto ľudomilú činnosť vhodné.
Anabáza UPC je zrejmá-po "oslobodení" táto firma(a stovky ďalších) napochodovala do východnej Európy,za účelom šírenia výdobytkov kapitalizmu.V tomto prípade sračiek v podobe mediálneho obsahu.
Čo sa týka ich satelitnej TV,nikdy nebol problém dostať sa k jej obsahu za priaznivú cenu.Pravdepodobne aj preto vznikol na Slovensku názov freeSAT.
Freesat ICE karta:hybridná karta pre irdeto systém,s nadstavbou pre cryptoworks(crw),teda dokáže spracovať aj crw inštrukcie.
CAID: 0D97,0653...
ATR: 3B 78 12 00 00 54 C4 03 00 8F F1 90 00 ,teda také,že keď si ho prečíta napr. divá sviňa,tak vie,že sa jedná o cryptoworks.
Divočák začne na takúto kartu krochkať,normálny satelitný príjimač začne s ňou komunikovať crw jazykom,a nejaký lepší stb(irdeto ready určite) sa karte prihovorí v irdete.
Karta pracuje asi vo všetkých možných stb.Jediné čo potrebuje k životu je jej aktivácia-provider kartu zaradí do systému a na kartu sa následne zapíšu potrebné oprávnenia.Tento proces zápisu oprávnení môže prebehnúť dvoma spôsobmi:
1.bez zásahu operátora,veľmi zdĺhavý proces,kedy na kartu sporadicky prichádzajú väčšinou SA_EMM,sem tam UA_EMM.
2.na vyžiadanie operátor zašle aktivačné zápisy,karta nabehne takmer okamžite.
Potom to môže vypadať nejak takto:
14:44:54 5851F42D r (reader) phoenix [mouse] type: CryptoWorks, caid: 0D97, ascii serial: #########, hex serial: ##########
14:44:55 5851F42D r (reader) phoenix [mouse] issuer: CryptoWorks, id: 04, bios: v3, pin: unknown, mfid: 3F00
14:44:55 5851F42D r (reader) phoenix [mouse] providers: 4 (04,08,0C,10)
14:44:55 5851F42D r (reader) phoenix [mouse] found card system cryptoworks
14:44:55 5851F42D r (reader) phoenix [cryptoworks] THIS WAS A SUCCESSFUL START ATTEMPT No 1 out of max alloted of 1
14:44:55 5851F42D r (reader) phoenix [cryptoworks] provider: 1, id: 04, name: Operator: FFFF
14:44:55 5851F42D r (reader) phoenix [cryptoworks] chid: 03F3, date: 2016/02/26 - 2016/03/07, name: Product 03F3
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 4E32, date: 2016/02/26 - 2016/03/07, name: Product 4E32
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 03EA, date: 2016/02/26 - 2016/03/07, name: Product 03EA
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 03EE, date: 2016/02/26 - 2016/03/07, name: Product 03EE
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 7FFD, date: 2016/02/26 - 2016/03/07, name: Product 7FFD
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 0021, date: 2016/02/26 - 2016/03/07, name: Product 0021
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 0022, date: 2016/02/26 - 2016/03/07, name: Product 0022
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 0064, date: 2016/02/26 - 2016/03/07, name: Product 0064
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 0065, date: 2016/02/26 - 2016/03/07, name: Product 0065
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 03ED, date: 2016/02/26 - 2016/03/07, name: Product 03ED
14:44:56 5851F42D r (reader) phoenix [cryptoworks] chid: 03F2, date: 2016/02/26 - 2016/03/07, name: Product 03F2
14:44:57 5851F42D r (reader) phoenix [cryptoworks] chid: 03F4, date: 2016/02/26 - 2016/03/07, name: Product 03F4
14:44:57 5851F42D r (reader) phoenix [cryptoworks] chid: 7539, date: 2016/02/26 - 2016/03/07, name: Product 7539
14:44:57 5851F42D r (reader) phoenix [cryptoworks] provider: 2, id: 08, name: Operator: FFFF
14:44:57 5851F42D r (reader) phoenix [cryptoworks] provider: 3, id: 0C, name: Operator: FFFF
14:44:58 5851F42D r (reader) phoenix [cryptoworks] provider: 4, id: 10, name: Operator: FFFF
14:44:58 5851F42D r (reader) phoenix [cryptoworks] ready for requests
14:50:13 5851F42D r (reader) phoenix [mouse] detect irdeto card
14:50:14 5851F42D r (reader) phoenix [mouse] caid: 0653, acs: 0.05, country code: LUX
14:50:14 5851F42D r (reader) phoenix [mouse] providers: 4, ascii serial: ##########, hex serial: ######, hex base: ##
14:50:15 5851F42D r (reader) phoenix [mouse] WARNING: For Irdeto cards you will have to set 'cardmhz= 600' in oscam.server
14:50:15 5851F42D r (reader) phoenix [mouse] active providers: 4 (------,ffffff,ffffff,ffffff)
14:50:15 5851F42D r (reader) phoenix [mouse] found card system irdeto
14:50:15 5851F42D r (reader) phoenix [irdeto] THIS WAS A SUCCESSFUL START ATTEMPT No 1 out of max alloted of 1
14:50:15 5851F42D r (reader) phoenix [irdeto] entitlements for provider: 1, id: ------
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 03F3, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 4E32, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 03EA, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 03EE, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 7FFD, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 0021, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 0022, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 0064, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 0065, date: 2016/02/26 - 2016/03/07
14:50:15 5851F42D r (reader) phoenix [irdeto] chid: 03ED, date: 2016/02/26 - 2016/03/07
14:50:16 5851F42D r (reader) phoenix [irdeto] chid: 03F2, date: 2016/02/26 - 2016/03/07
14:50:16 5851F42D r (reader) phoenix [irdeto] chid: 03F4, date: 2016/02/26 - 2016/03/07
14:50:16 5851F42D r (reader) phoenix [irdeto] chid: 7539, date: 2016/02/26 - 2016/03/07
14:50:16 5851F42D r (reader) phoenix [irdeto] ready for requests
Kartička dekóduje,môžme ju pretaktovať-v default crw(3.57MHz) cca 150ms,v irdete(6MHz) cca 90ms,proste moderná,rýchla,dobre ohybná smardcard.
...
_______________________________
Ak čítate irdeto kartu s oscamom a následne cez cccam(originál,alebo oscam) robíte reshare(alebo sa priamo pripájate s klientom),dostanete na tento reshare cccam komplet ident(čo je pri irdete vlastne SN karty),a následne je tento posielaný aj klientom.
Dobré je použiť túto malú úpravu v module-cccshare.c:
//write providers:
LL_ITER it = ll_iter_create(card->providers);
struct cc_provider *prov;
while((prov = ll_iter_next(&it)))
{
uint32_t prid = prov->prov;
//buf[ofs + 0] = prid >> 16;
//buf[ofs + 1] = prid >> 8;
//buf[ofs + 2] = prid & 0xFF;
if(au_allowed)
{ memcpy(buf + ofs + 3, prov->sa, 4); }
buf[20]++;
ofs += 7;
}
_______________________________
Nedávno som náhodou narazil na ozajstnú pecku-simplebuild skript pre kompiláciu oscamu(download).Dovtedy som žil v tom,že crosscompile je utrpenie(po vlastných skúsenostiach a pokusoch spred dvoch rokov o kompiláciu pre dm500,nehovoriac napr. o sh4_ke).Tieto skriptíky(easybuild je asi najznámejší) sa vyvíjajú už nejaký rok,no nevenoval som im pozornosť.Ani neviem prečo a ako som sa dopátral k simplebuildu,no vo finále som čumel jak puk.Za pár minút funkčná binárka pre SH4.Spúšťal som to na ubuntu 10.04(mám ho najradšej,pretože tie novšie verzie s compizmi a podobnými píčovinami mi lezú na nervy).Skriptu dáme plné práva 777.Potom stačí doinštalovať čo treba(ak nejde cez apt-get,lebo ten stále šteká o závislostiach,tak cez aptitude):
~$./simplebuild debinstall
~$./simplebuild menu
_______________________________
Tzv. karta M7 je irdeto karta,na ktorej je aktívne vyššie zabezpečenie.Teda nejde na ničom(ani na cinkulárke,ani na oscame,ani na gboxe...),len na certifikovaných irdeto zariadeniach.Fuj,taká hanba!
Je to niečo ako conax(teraz už nagra),teda poriadna hajzľovina.
Karta sa tvári normálne,inicializácia prebehne ok,zápisy nabiehajú,ale obraz nikde.Dá sa s ňou dokonca komunikovať aj v crw móde,proste je to karta ako iné,ale má to kua vyššie zabezpečečenie.
Takto to vyzerá vo verejne dostupnom oscame(oscam_tweaked),ktorý takéto kartičky zvláda.Teda celkom dobre.Problém je ale v tomto:
Tweak Keys ignored, allready have them
[irdeto-reader] EMM write error 7C
Je ale dobrou správou,že vôbec takýto oscam existuje-teda taký,ktorý si z EMM streamu dokáže vygenerovať tweak keys.
Otázkou ostáva,čo vstupuje do výpočtu týchto kľúčov a ako sa k tomu dostať.Pravdepodobne to bude nejaké rsa,ťažko povedať,pretože info je ako šafránu.
V každom prípade priestor na výskum tu je.
_______________________________