Professional Documents
Culture Documents
Algorithme A5-2
Algorithme A5-2
Kc[64] bits ;
NT[22]bits ;
T []<-inialiser(T []) ;
LSFR1 [19] ;
LSFR2 [22] ;
LSFR3 [23] ;
Saut<-int ;
B<-XOR(b1,b2) ;
Xor3<-xor(b1,b2,b3) ;
T[]<-decal-d(T[],saut) ;
M1<-majorité(a1,a2,a3) ;
M2<-majorité(b1,b2,b3) ;
M3<-majorité(c1,c2,c3) ;
LSFR1[]<- initialiser(LSFR1[]) ;
LSFR2[]<- initialiser(LSFR2[]) ;
LSFR3[]<- initialiser(LSFR3[]) ;
For (i=0,i<63,i++){
LSFR1[0]<-XOR(LSFR1[0],kc[i];
LSFR2[0]<-XOR(LSFR2[0],kc[i];
LSFR3[0]<-XOR(LSFR3[0],kc[i];
LSFR1[]<-décal-d (LSFR1[],saut);
LSFR2[]<-décal-d (LSFR2[],saut);
LSFR3[]<-décal-d (LSFR3[],saut);
//insertion du numéro de trame NT dans les registres//
For (i=0,i<21,i++){
LSFR1[0]<-XOR(LSFR1[0],NT[i];
LSFR2[0]<-XOR(LSFR2[0],NT[i];
LSFR3[0]<-XOR(LSFR3[0],NT[i];
LSFR1[]<-décal-d (LSFR1[],saut);
LSFR2[]<-décal-d (LSFR2[],saut);
LSFR3[]<-décal-d (LSFR3[],saut);
For (i=0,i<99,i++){
c1<-LSFR[8] ;
c2<-LSFR[10] ;
c3<-LSFR[10] ;
M1<-majorité(b1,b2,b3) ;
M2<-majorité(b1,b2,b3) ;
M3<-majorité(b1,b2,b3) ;
If(c1=m1)
LSFR1[0]<- xor(xor(xor(LSFR1[18],LSFR1[17]),LSFR1[16]),LSFR1[13]) ;
LSFR1[0]<-décal-d(LSFR1[],saut) ;
else
LSFR1[0]<- xor(xor(xor(LSFR1[18],LSFR1[17]),LSFR1[16]),LSFR1[7]) ;
If(c2=m2)
LSFR2[0]<-décal-d(LSFR2[],saut) ;
else
LSFR2[0]<-xor(LSFR2[21] ,LSFR2[20]) ;
If(c3=m3)
LSFR3[0]<- xor(xor(xor(LSFR3[22] ,LSFR3[21]), LSFR3[20]),LSFR3[7]);
LSFR3[0]<-décal-d(LSFR3[],saut) ;
else
For (i=0,i<227,i++){
c1<-LSFR[8] ;
c2<-LSFR[10] ;
c3<-LSFR[10] ;
M1<-majorité(b1,b2,b3) ;
M2<-majorité(b1,b2,b3) ;
M3<-majorité(b1,b2,b3) ;
If(c1=m1)
LSFR1[0]<-décal-d(LSFR1[],saut) ;
else
If(c2=m2)
LSFR2[0]<-décal-d(LSFR2[],saut) ;
else
If(c3=m3)
LSFR3[0]<-décal-d(LSFR3[],saut) ;
else
LSFR3[0]<- xor(xor(xor(LSFR3[22] ,LSFR3[21]), LSFR3[20]),LSFR3[7]) ;