首页
社区
课程
招聘
[分享]IDEA加密算法源代码(C)
发表于: 2009-5-21 00:13 8879

[分享]IDEA加密算法源代码(C)

2009-5-21 00:13
8879

1.头定义

/* idea.h */ 
 
#ifndef _IDEA_DOT_H 
#define _IDEA_DOT_H 
 
#include <stdio.h> 
#include <time.h> 
#include <process.h> 
#include <io.h> 
#include <string.h> 
#include <conio.h> 
 
#define IDEAKEYSIZE 16 
#define IDEABLOCKSIZE 8 
#define word16 unsigned int 
#define word32 unsigned long int 
#define ROUNDS    8 
#define KEYLEN    (6*ROUNDS+4) 
#define tempfilename "tempfile.鋘c" 
 
 
int end_of_file,noisy,overwrite;   /*global vars*/ 
 
#define low16(x) ((x) & 0xffff) 
 
typedef unsigned int uint16; 
typedef word16 IDEAkey[KEYLEN]; 
 
/*IDEA Algorithm functions */ 
void en_key_idea(word16 userkey[8],IDEAkey Z); 
void de_key_idea(IDEAkey Z, IDEAkey DK); 
void cipher_idea(word16 in[4],word16 out[4],IDEAkey Z); 
uint16 inv(uint16 x); 
uint16 mul(uint16 a,uint16 b); 
 
/*file handling functions*/ 
char read_char_from_file(FILE *fp); 
word16 read_word16_from_file(FILE *fp); 
void write_char_to_file(char data,FILE *fp); 
void write_word16_to_file(word16 data,FILE *fp); 
void cipher_file(FILE *in,FILE *out,word16 *key); 
void decipher_file(FILE *in,FILE *out,word16 *key); 
void swap_files_and_clean_up(char *file); 
 
#endif 

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 7
支持
分享
最新回复 (2)
雪    币: 1450
活跃值: (35)
能力值: (RANK:680 )
在线值:
发帖
回帖
粉丝
2
Thanks for share.
2009-6-3 19:05
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
看不懂 C 哦  无语 中
2009-6-4 12:44
0
游客
登录 | 注册 方可回帖
返回
//