贴一段代码,用的时候好找。
参数:明文数组,明文长度,密文数组,密文长度。
功能:加密。
#include
"stdio.h"
#include
"stdlib.h"
#include
"string.h"
#include
"openssl/des.h"
//des-ecb加密方式;
//8位密钥,不足8位的右补0x00;
//加密内容8位补齐,补齐方式为:少1位补一个0x01,少2位补两个0x02,...
//本身已8位对齐的,后面补八个0x08。
int desEncrypt(char *clearText,int clearTextLen,char *cipherText,int *cipherTextLen)
{
int docontinue = 1;
unsigned char *cipherText1=NULL;
//ch是用来补齐的字符
cipherText1= (unsigned char *)malloc(128);
memcpy(cipherText + 8 * i, in, 8);
*cipherTextLen=strlen(cipherText);
memcpy(cipherText1,cipherText,*cipherTextLen);
printf("after encrypt :\n");
}
int main(void)
{
char data[128]="123456";
int dataLen=strlen(data);
char cipherText[128]={0};
int cipherTextLen=0;
unsigned char text[128];
desEncrypt(data,dataLen,cipherText,&cipherTextLen);
memcpy(text, cipherText, cipherTextLen);
printf("%d\n",cipherTextLen);
printf("after encrypt :\n");
return 0;
}