你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 计算机安全与维护
IDEA对称密码算法剖析(十)
 

int r=ROUNDS; // ROUNDS8

   x1=*in++; x2=*in++;

   x3=*in++; x4=*in;   //X1 X2 X3  X4  416位的分组

   do

   {   //一次迭代过程

      MUL(x1,*Z++);  // 2^16+1

      x2+=*Z++;  // 2^16

      x3+=*Z++; 

      MUL(x4,*Z++);   // 2^16+1

      t2=x1^x3;   //按位异或

      MUL(t2,*Z++);

      t1=t2+(x2^x4);

      MUL(t1,*Z++);

      t2=t1+t2;

      x1^=t1;

      x4^=t2;

      t2^=x2;

      x2=x3^t1;

      x3=t2;

   } while (--r);  // 运行8

   MUL(x1,*Z++);  //最后生成416位的分组输出, 存放在out数组中

   *out++=x1;

   *out++=(x3+*Z++);

   *out++=(x2+*Z++);

   MUL(x4,*Z);

   *out=x4;

}

//  一次读出8位明文数据到temp

char read_char_from_file(FILE *fp)

{

   char temp=0;

 

   if ((fread(&temp,sizeof(char),1,fp))!=1)

      end_of_file=1;

 

   return (temp);

  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089