5 Star 31 Fork 13

IOsetting/wm-sdk-w80x

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
wm_crypt_demo.c 2.23 KB
一键复制 编辑 原始数据 按行查看 历史
IOsetting 提交于 2021-12-01 01:00 +08:00 . Initial commit
/*****************************************************************************
*
* File Name : wm_crypt_demo.c
*
* Description: crypt demo function
*
* Copyright (c) 2014 Winner Micro Electronic Design Co., Ltd.
* All rights reserved.
*
* Author : wangmin
*
* Date : 2014-6-2
*****************************************************************************/
#include <string.h>
#include "wm_include.h"
#include "wm_crypto.h"
#if DEMO_ENCRYPT
int crypt_demo(char *buf)
{
u8 iv[16];
u8 dat[24];
u8 key[16]="abcdefghijklmnop";
u8 plain[16]="0123456789ABCDEF";
int i;
int len = 16;
for(i=0;i<16;i++) iv[i]=i;
memset(dat, 0, 16);
MEMCPY(dat, plain, sizeof(plain));
/******start AES 128 En/Decrypt********/
printf("---start AES128:\n");
if (aes_128_cbc_encrypt(key, iv, dat, sizeof(plain))){
printf("Encrypted Failed\n");
return WM_FAILED;
}
else{
printf("Encrypted OK:\n");
for(i=0; i<len; i++) printf("%x", dat[i]);
printf("\n");
}
if(aes_128_cbc_decrypt(key, iv, dat, sizeof(plain))){
printf("Decrypt failed\n");
return WM_FAILED;
}else{
printf("Decrypted OK:\n");
for(i=0; i<len; i++) printf("%x", dat[i]);
printf("\n");
}
/******start RC4********/
printf("\n----start RC4:\n");
rc4(key, sizeof(key), plain, sizeof(plain));
printf("Encrypted OK:\n");
for(i=0; i<sizeof(plain); i++) printf("%x", plain[i]);
printf("\n");
rc4(key, sizeof(key),plain, sizeof(plain));
printf("Decrypted OK:\n");
for(i=0; i<sizeof(plain); i++) printf("%x", plain[i]);
printf("\n");
/******start HMAC MD5********/
printf("\n---start HMAC MD5:\n");
memset(dat, 0, sizeof(dat));
if(hmac_md5(key, sizeof(key), plain, sizeof(plain), dat)){
printf("Caculated failed\n");
return WM_FAILED;
}else{
printf("HMAC MD5: \n");
for(i=0; i<len; i++) printf("%x", dat[i]);
printf("\n");
}
/******start MD5********/
printf("\n----start MD5:\n");
memset(dat, 0, sizeof(dat));
md5(plain, sizeof(plain),dat);
printf("MD5: \n");
for(i=0; i<len; i++) printf("%x", dat[i]);
printf("\n");
/******start SHA1********/
printf("\n---start SHA1:\n");
len = 20;
memset(dat, 0, sizeof(dat));
sha1(plain, sizeof(plain),dat);
printf("SHA1: \n");
for(i=0; i<len; i++) printf("%x", dat[i]);
printf("\n");
return WM_SUCCESS;;
}
#endif
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/iosetting/wm-sdk-w80x.git
git@gitee.com:iosetting/wm-sdk-w80x.git
iosetting
wm-sdk-w80x
wm-sdk-w80x
master

搜索帮助