X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/Cipher_code.git/blobdiff_plain/5e0085b777f407569dd7e1ab957f629f0f3546e3..50aed0e4bc4897c2ccad084a80e1cac8bfe088e3:/OneRoundIoT/OneRound/one_round_new.cpp?ds=sidebyside diff --git a/OneRoundIoT/OneRound/one_round_new.cpp b/OneRoundIoT/OneRound/one_round_new.cpp index fd1ff8a..be38534 100644 --- a/OneRoundIoT/OneRound/one_round_new.cpp +++ b/OneRoundIoT/OneRound/one_round_new.cpp @@ -123,7 +123,7 @@ void prga(uchar *sc, int ldata, uchar *r) { uchar j0=0; for (int it=0; it -void decrypt(uchar* seq_in, uchar *seq_out, int len,uchar* RM1,int *Pbox, int *PboxRM, uchar *Sbox1, uchar *Sbox2, int debug) { +void decrypt(uchar* seq_in, uchar *seq_out, int len,uchar* RM1,int *Pbox, int *PboxRM, uchar *Inv_Sbox1, uchar *Inv_Sbox2, int debug) { /*uchar *fX=new uchar[h2]; @@ -312,16 +307,6 @@ void decrypt(uchar* seq_in, uchar *seq_out, int len,uchar* RM1,int *Pbox, int *P uchar *Inv_Sbox2=new uchar[256]; */ uchar fX[h2]; - uchar Inv_Sbox1[256]; - uchar Inv_Sbox2[256]; - - - - inverse_tables(Sbox1,256,Inv_Sbox1); - - - inverse_tables(Sbox2,256,Inv_Sbox2); - @@ -391,18 +376,18 @@ int main(int argc, char** argv) { if(strncmp(argv[i],"lena",4)==0) lena = atoi(&(argv[i][4])); //Use Lena or buffer } - printf("nb times %d\n",nb_test); +/* printf("nb times %d\n",nb_test); printf("ctr %d\n",ctr); printf("h %d\n",h); printf("lena %d\n",lena); printf("size_buf %d\n",size_buf); - +*/ int h2=h*h; int seed=time(NULL); - cout<(seq, seq2,len,RM1,Pbox,PboxRM,Sbox1,Sbox2,0); + } + break; + case 128: + for(i=0;i(seq, seq2,len,RM1,Pbox,PboxRM,Sbox1,Sbox2,1); + else + encrypt<128*128>(seq, seq2,len,RM1,Pbox,PboxRM,Sbox1,Sbox2,0); + } break; } - time+=TimeStop(t); - cout<<"Time encrypt "<(seq2, seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); else - decrypt<4*4>(seq2,seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); + decrypt<4*4>(seq2,seq,len,RM2,Pbox,PboxRM,Inv_Sbox1,Inv_Sbox2,0); } break; case 8: @@ -629,7 +633,7 @@ int main(int argc, char** argv) { if(ctr) encrypt_ctr<8*8>(seq2, seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); else - decrypt<8*8>(seq2,seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); + decrypt<8*8>(seq2,seq,len,RM2,Pbox,PboxRM,Inv_Sbox1,Inv_Sbox2,0); } break; case 16: @@ -637,7 +641,7 @@ int main(int argc, char** argv) { if(ctr) encrypt_ctr<16*16>(seq2, seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); else - decrypt<16*16>(seq2,seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); + decrypt<16*16>(seq2,seq,len,RM2,Pbox,PboxRM,Inv_Sbox1,Inv_Sbox2,0); } break; case 32: @@ -645,7 +649,7 @@ int main(int argc, char** argv) { if(ctr) encrypt_ctr<32*32>(seq2, seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); else - decrypt<32*32>(seq2,seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); + decrypt<32*32>(seq2,seq,len,RM2,Pbox,PboxRM,Inv_Sbox1,Inv_Sbox2,0); } break; case 64: @@ -653,13 +657,22 @@ int main(int argc, char** argv) { if(ctr) encrypt_ctr<64*64>(seq2, seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); else - decrypt<64*64>(seq2,seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); + decrypt<64*64>(seq2,seq,len,RM2,Pbox,PboxRM,Inv_Sbox1,Inv_Sbox2,0); + } + break; + case 128: + for(i=0;i(seq2, seq,len,RM2,Pbox,PboxRM,Sbox1,Sbox2,0); + else + decrypt<128*128>(seq2,seq,len,RM2,Pbox,PboxRM,Inv_Sbox1,Inv_Sbox2,0); } break; } - time+=TimeStop(t); - cout<<"Time decrypt "<