c语言加密函数库,C语言openssl库DES-ECB加密

  • Post author:
  • Post category:其他


#include

#include

#include

#include

#include

int des_encrypt(const char *clearText, unsigned char **cipherText, const char *key)

{

DES_cblock keyEncrypt;

DES_key_schedule keySchedule;

const_DES_cblock inputText;

DES_cblock outputText;

unsigned char *tmp;

int len = strlen(key);

int ret = 0;

int i, j;

memset(&keyEncrypt, 0x00, sizeof(keyEncrypt));

memset(keyEncrypt, 0x00, 8);

//构造补齐后的密钥

if(len <= 8)

{

memcpy(keyEncrypt, key, len);

}

else

{

memcpy(keyEncrypt, key, 8);

}

//密钥置换

DES_set_key_unchecked(&keyEncrypt, &keySchedule);

len = strlen(clearText) / 8;

if(strlen(clearText) % 8 == 0)

{

ret = len;