Ga naar inhoud


Aanbevolen berichten

Geplaatst:

hier de source om een emu voor nagra2 te maken:

 

Code:
#include "idea.h"int nagra2_ecm(byte *ecm, byte *dw) {	byte key[0x10]={		0xF5,0x36,0x55,0x68,0xF5,0x46,0x63,0x32,0x52,0xEE,  0xD5,0x00,0x88,0x1E,0x5A,0x37	};	byte tempBUF[0x40];	int i,j,k;	word16 EK[iDEAKEYLEN];		nagra2RSA (ecm+0xa);	ecm[0x49] = ((ecm[9] & 0x80) | (ecm[0x49]));	ideaExpandKey(key, EK); 	for (i=7; i>-1; i--) {		ideaCipher(ecm+0xA+(i*8), ecm+0xA+(i*8), EK);		if (i>0) 	for (j=0; j<8; j++) ecm[(i*8)+j+0xA] ^= ecm[(i-1)*8+j+0xA];	}	nagra2RSA(ecm+0xA);	for(i=0; i<0x40; i++) tempBUF[i]=ecm[0x3F+0x0a-i];	memcpy (ecm+0xa, tempBUF, 0x40);  k = 0; // cw found  for (i=0; i<ecm[0x4]; i++) {		if(ecm[i] == 0x10 && ecm[i+1] == 0x09 && ecm[i+2] == 0) {      memcpy(dw+8, ecm+i+3, 8);      i+= 11;      k++;    }    if(ecm[i] == 0x11 && ecm[i+1] == 0x09 && ecm[i+2] == 0) {      memcpy(dw, ecm+i+3, 8);      i+= 11;      k++;    }	}  if(k) return true;  else {  	#ifdef DEBUG  		printf("system-nagra2: failed to get CW\n");		#endif		return false;	}}void nagra2RSA (byte *msg) {	// RAM:C0108AA5	byte mod[0x40]={		0xD9,0x1F,0xB4,0x82,0xF5,0x4C,0x45,0x35,0x62,0x1D,  0x84,0x5F,0x7E,0xC4,0xAB,0x4D,		0xC9,0x30,0x9D,0xED,0x26,0xB5,0x40,0x30,0x84,0x8E,  0xB6,0x39,0x68,0x97,0x75,0x29,		0xFE,0x8F,0xF1,0x86,0x13,0x27,0x61,0x71,0xE5,0x7B,  0xDA,0x8A,0x47,0xAC,0x99,0x37,		0x03,0xCC,0xE2,0xA1,0xCB,0x07,0x19,0x98,0xEC,0xCB,  0x32,0x7E,0xF6,0x3C,0xCE,0xA7	};	byte exp[]={0x03};	NN_DIGIT E[0x22], N[0x22], MSG[0x22], M[0x22*4];	int nDigits, eDigits;	NN_DecodeLE(MSG, 0x22, msg, sizeof(mod));	NN_DecodeLE(E, 0x22, exp, sizeof(exp));	NN_DecodeLE(N, 0x22, mod, sizeof(mod));	nDigits = NN_Digits(MSG, 0x22);	eDigits = NN_Digits(E, 0x22);	R_memset((POINTER)M, 0, 0x22*4);	NN_ModExp(M, MSG, E, eDigits, N, nDigits);	NN_EncodeLE(msg, sizeof(MSG), M, 0x22);	return;}// idea.c - C source code for IDEA block cipher.// Compute the multiplicative inverse of x, modulo 65537, using Euclid's// algorithm. It is unrolled twice to avoid swapping the registers each// iteration, and some subtracts of t have been changed to adds.static uint16 mulInv(uint16 x) {	uint16 t0, t1, q, y;	if (x <= 1) return x;	// 0 and 1 are self-inverse	t1 = 0x10001L / x;	// Since x >= 2, this fits into 16 bits	y = 0x10001L % x;	if (y == 1) return low16(1-t1);	t0 = 1;	do {		q = x / y;		x = x % y;		t0 += q * t1;		if (x == 1) return t0;		q = y / x;		y = y % x;		t1 += q * t0;	} while (y != 1);	return low16(1-t1);}// Expand a 128-bit user key to a working encryption key EKstatic void ideaExpandKey(byte const *userkey, word16 *EK) {	int i,j;	for (j=0; j<8; j++) {		EK[j] = (userkey[0]<<8) + userkey[1];		userkey += 2;	}	for (i=0; j < IDEAKEYLEN; j++) {		i++;		EK[i+7] = EK[i & 7] << 9 | EK[i+1 & 7] >> 7;		EK += i & 8;		i &= 7;	}}// MUL(x,y) computes x = x*y, modulo 0x10001.  Requires two temps, // t16 and t32.  x is modified, and must me a side-effect-free lvalue.// y may be anything, but unlike x, must be strictly 16 bits even if// low16() is #defined.// All of these are equivalent - see which is faster on your machine#define MUL(x,y) ((t16=(y))?(x=low16(x))?t32=(word32)x*t16,x=low16(  t32),t16=t32>>16,x=(x-t16)+(x<t16):(x=1-t16):(x=1-x))// IDEA encryption/decryption algorithm// Note that in and out can be the same bufferstatic void ideaCipher(byte const (inbuf[8]), byte (outbuf[8]), word16 const *key) {	register uint16 x1, x2, x3, x4, s2, s3;	word16 *in, *out;	register uint16 t16;	// Temporaries needed by MUL macro	register word32 t32;	int r = IDEAROUNDS;	in = (word16 *)inbuf;	x1 = *in++;  x2 = *in++;	x3 = *in++;  x4 = *in;	x1 = (x1 >>8) | (x1<<8);	x2 = (x2 >>8) | (x2<<8);	x3 = (x3 >>8) | (x3<<8);	x4 = (x4 >>8) | (x4<<8);	do {		MUL(x1,*key++);		x2 += *key++;		x3 += *key++;		MUL(x4, *key++);		s3 = x3;		x3 ^= x1;		MUL(x3, *key++);		s2 = x2;		x2 ^= x4;		x2 += x3;		MUL(x2, *key++);		x3 += x2;		x1 ^= x2;  x4 ^= x3;		x2 ^= s3;  x3 ^= s2;	} while (--r);	MUL(x1, *key++);	x3 += *key++;	x2 += *key++;	MUL(x4, *key);	out = (word16 *)outbuf;	*out++ = (x1 >>8) | (x1<<8);	*out++ = (x3 >>8) | (x3<<8);	*out++ = (x2 >>8) | (x2<<8);	*out = (x4 >>8) | (x4<<8);}

 

en dit is idea.h

 

Code:
#ifndef IDEA_H#define IDEA_Htypedef unsigned short word16;	/* values are 0-65535 */typedef unsigned long word32;	/* values are 0-4294967295 */typedef word16 uint16;#define low16(x) (x)#define IDEAROUNDS 8#define IDEAKEYLEN (6*IDEAROUNDS+4)#endif

 

veel plezier ......

[color:"blue"] Spirit_rules [/color]

-------------------------------------------------

 

Open Firmwarmware Multi taal_171005_0430

 

Member van het Openfirmware Team


  • Reacties 112
  • Aangemaakt
  • Laatste reactie

Beste reacties in dit onderwerp

Beste reacties in dit onderwerp

Geplaatste afbeeldingen

Geplaatst:

Spirit kan je verheldering brengen of dit nu voor zowel de Hispasat EN de Astra geldt?

 

Pat

Inventors are crazy until they invent something.

Then they are geniuses.

Geplaatst:

Zo te zien geniet Spirit van een welverdiende nachtrust. Kijk maar eens naar de tijd van posten van zijn laatste bericht met de mededeling dat het werkt. Ik denk dat ze de hele nacht zijn beziggeweest.

Er is trouwens ook al een emulator te vinden voor de Skystar I en II kaartjes. Werkt onder progdvb, dus ook andere kaartjes zullen het wel doen met deze emu. Neem aan dat andere emu's begin volgende week wel zullen volgen.

 

groeten,

Peter.

Niet gehinderd door enige vorm van technische kennis zet ik onbevangen overal mijn schroevendraaier en soldeerbout in.

Geplaatst:
Citaat:
Spirit kan je verheldering brengen of dit nu voor zowel de Hispasat EN de Astra geldt?

Pat


Het is op andere forums definitief bewezen dat zowel astra als hispasat open is.. <img src="/forums/images/graemlins/rockon.gif" alt="" /> <img src="/forums/images/graemlins/rockon.gif" alt="" />
Geplaatst:

Hoop dat der snel iets voor de bekende cams zal komen.

 

Op de skystar werkt het in iedergeval zoals vanouds <img src="/forums/images/graemlins/xyxthumbs.gif" alt="" />

 

Thanx <img src="/forums/images/graemlins/smirk.gif" alt="" />

Geplaatst:

<img src="/forums/images/graemlins/xyxthumbs.gif" alt="" />...Sprakeloos. Dank aan hen die hier verantwoordelijk zijn. <img src="/forums/images/graemlins/super.gif" alt="" />

Geplaatst:

haha ik was zo vroeg op omdat ik moest werken...

maar het is op beide sats

[color:"blue"] Spirit_rules [/color]

-------------------------------------------------

 

Open Firmwarmware Multi taal_171005_0430

 

Member van het Openfirmware Team

Geplaatst:

Op dreambox Cam 3.784, EMU Davinci met k*y B*sh*p. Superrrrr

Reptovis

Dreambox 7000S + Maxtor 300GB + Quattro 0.3dB Lnb + Triax 110 + Sg2100/Topfield 5500 + Maxtor 300GB + Dual Lnb + Triax 90 + Sg2100 + Aston 1.07 + Xcam/Humax 5400 + MM/Reptielen/Vissen/Honden

Geplaatst:
Citaat:

en voor de non-believers, haha zeg er maar nix op..
een zogenaamde eindeloze thread....

Spirit is my name, do you wanna join my game haha


ok spirit, ik had het bij het verkeerde eind, ik heb je onderschat sorry daarvoor

en bedankt voor het goede werk!

Dreambox 8000 HD PVR met 1.5 tb hdd

Dreambox 800se HD PVR met 320 gb hdd

Wavefrontier T55 astra 1,2,3 hotbird

Linux server

Geplaatst:

Sinds vanmiddag ook beeld met predator 2.21, was al te verwachten na eerdere berichten natuurlijk.

 

Is er nu ook binnenkort iets te verwachten met het oog op bijv premiere?

-------------------------

m.v.g. Roy

-------------------------

Topfield TF7700HSCI, TF5500PVR; TF3000CIPRO; 99cm Funke schotel met stab HH100; 80 cm schotel; Mastera III en veel overbodige cams en cards

Geplaatst:

Ik heb met de nieuwe camd3 beeld op de dbox2 en dream.

Dit op de Hispa en Astra.

Of dit een tijdelijke crack is kan ik niet zeggen, we wachten rustig af

Geld maakt niet gelukkig maar geluk is onbetaalbaar

Geplaatst:

Ik heb vanavond een klein bestandje toegevoegd op mijn GEW (Galaxis Easy World) en heb het Spaanse pakket op de Astra 19 graden oost open. De emu geeft verder geen problemen.

Geplaatst:

Citaat:
en dBox1 ? Ook iets te "verwachten" ?

 

Lijkt me duidelijk van niet. Deze dinosaurus wordt door niet teveel mensen meer gebruikt, je zal dus zelf aan de slag moeten of toch echt gaan uitkijken naar een wat modernere ontvanger.

 

Hoewel, je weet het nooit. Misschien dat iemand de moeite neemt de emu te verwerken in een tig in 1 kaartje. AU zal je dan alleen wel moeten vergeten. En als je dan DVB-2000 draait op een DBox-1 (Nokia Media Master 9200) zou het misschien kunnen gaan werken.

 

Maar het zouden voor mij veel teveel maar-en en als-en zijn.

groeten,

Peter.

Niet gehinderd door enige vorm van technische kennis zet ik onbevangen overal mijn schroevendraaier en soldeerbout in.

Geplaatst:

nee premiere werkt op rom 120 en niet 101 waar d+ op draait

 

Dus Premiere voor als nog niet en zal zeker ook niet komen daar deze codering flink ingekapselt zit.

Maak een account aan of log in om te reageren

Je moet een lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Registreer voor een nieuwe account in onze community. Het is erg gemakkelijk!

Registreer een nieuwe account

Inloggen

Heb je reeds een account? Log hier in.

Nu inloggen
  • Wie is er online   0 leden

    • Er zijn geen geregistreerde gebruikers deze pagina aan het bekijken
×
×
  • Nieuwe aanmaken...