//gcc pixmap_io.c -c
//g++ -O3 one_round_hash_new.cpp pixmap_io.o -o one_round_hash_new -std=c++11
-//
+//comparison with cmac
#include <iostream>
uchar j0=0;
for (int it=0; it<ldata; it++) {
- i0 = ((i0+1)&0xFE); //%255);
+ i0 = ((i0+1)%255);
j0 = (j0 + sc[i0])&0xFF;
uchar tmp = sc[i0];
sc[i0] = sc[j0];
// Mix with dynamic RM
+
- for(int a=0;a<h;a+=4) {
+ for(int a=0;a<h;a+=4) {
RM1[a]=Sbox1[RM1[a]^seq_in[ind1+a]]^seq_in[ind2+a];
RM1[a+1]=Sbox1[RM1[a+1]^seq_in[ind1+a+1]]^seq_in[ind2+a+1];
RM1[a+2]=Sbox1[RM1[a+2]^seq_in[ind1+a+2]]^seq_in[ind2+a+2];
RM1[a+3]=Sbox1[RM1[a+3]^seq_in[ind1+a+3]]^seq_in[ind2+a+3];
}
-
+
+
for(int a=0;a<h;a+=4) {
RM1[a]=Sbox2[RM1[a]];
}
- cout<<size_buf<<endl;
- int seed=time(NULL);
- cout<<seed<<endl;
+ // cout<<size_buf<<endl;
+ int seed=12;//time(NULL);
+ // cout<<seed<<endl;
srand48(seed);
uchar Secretkey[key_size];
}
}
- printf("seq 4 %d\n",seq[4]);
+ //printf("seq 4 %d\n",seq[4]);
if(change==1) {
seq[4]++;
seq[9]++;
}
- printf("seq 4 %d\n",seq[4]);
+ // printf("seq 4 %d\n",seq[4]);
int total_len=imsize;
int rp=1;
int len= total_len/h;
- cout<<len<<endl;
+ //cout<<len<<endl;
uchar *mix=new uchar[256];
time+=TimeStop(t);
- cout<<"Time initializaton "<<time<<endl;
+ // cout<<"Time initializaton "<<time<<endl;
RM2[i]=RM1[i];
}
- cout<<"imsize "<<imsize<<endl;
+ // cout<<"imsize "<<imsize<<endl;
/* for(int i=0;i<imsize;i++){
cout<<(int)seq[i]<<" ";
time+=TimeStop(t);
- cout<<"Hash Time "<<time<<endl;
+ // cout<<"Hash Time "<<time<<endl;
cout<<(double)imsize*nb_test/time<<"\t";
- for(int i=0;i<h;i++){
+ /* for(int i=0;i<h;i++){
cout<<(int)RM1[i]<<" ";
- }
- cout<<endl;
+ }*/
+ // cout<<endl;