void encrypt_ctr(uchar* seq_in, uchar *seq_out, int len,uchar* RM1,int *Pbox, int *PboxRM, uchar *Sbox1, uchar *Sbox2, int enc) {
- uchar *X=new uchar[h2];
- uchar *fX=new uchar[h2];
+// uchar *X=new uchar[h2];
+// uchar *fX=new uchar[h2];
+ uchar X[h2];
+ uchar fX[h2];
+
int ind1,ind2;
void encrypt(uchar* seq_in, uchar *seq_out, int len,uchar* RM1,int *Pbox, int *PboxRM, uchar *Sbox1, uchar *Sbox2, int debug) {
- uchar *X=new uchar[h2];
+/* uchar *X=new uchar[h2];
uchar *fX=new uchar[h2];
unsigned int *lX=(unsigned int*)X;
unsigned int *lseq_in=(unsigned int*)seq_in;
-
+*/
+ uchar X[h2];
+ uchar fX[h2];
+// unsigned int *lX=(unsigned int*)X;
+// unsigned int *lseq_in=(unsigned int*)seq_in;
+
for(int it=0;it<len;it++) {
int ind1=it*h2;
void decrypt(uchar* seq_in, uchar *seq_out, int len,uchar* RM1,int *Pbox, int *PboxRM, uchar *Sbox1, uchar *Sbox2, int debug) {
- uchar *fX=new uchar[h2];
+ /*uchar *fX=new uchar[h2];
+ uchar *Inv_Sbox1=new uchar[256];
+ uchar *Inv_Sbox2=new uchar[256];
+ */
+ uchar fX[h2];
+ uchar Inv_Sbox1[256];
+ uchar Inv_Sbox2[256];
- uchar *Inv_Sbox1=new uchar[256];
+
inverse_tables(Sbox1,256,Inv_Sbox1);
- uchar *Inv_Sbox2=new uchar[256];
+
inverse_tables(Sbox2,256,Inv_Sbox2);