当前位置: 首页 > news >正文

网站建设与管理广东药学院wordpress 新闻页面

网站建设与管理广东药学院,wordpress 新闻页面,深圳品牌展会,网络推广培训职业学校AES加密是美国联邦政府采用的一种块加密标准#xff0c;如今已经被全世界广为使用。嵌入式开发中我们也经常会用到加密解密算法#xff0c;如果没有硬件模块来实现#xff0c;就需要用到C代码软件实现。下面介绍调用mbedTLS中的AES加密解密函数实现AES算法。 mbedTLS是一个…AES加密是美国联邦政府采用的一种块加密标准如今已经被全世界广为使用。嵌入式开发中我们也经常会用到加密解密算法如果没有硬件模块来实现就需要用到C代码软件实现。下面介绍调用mbedTLS中的AES加密解密函数实现AES算法。 mbedTLS是一个开源TLS协议栈主要用于嵌入式开发其源代码网址为https://tls.mbed.org/aes-source-code。在该页面上点击downloadmbedTLS即可下载最新的协议栈解压该压缩包就可以得到协议栈源代码。协议栈中的各种算法都独立封装在C文件中彼此耦合度较低目的是便于调用。我这里下的是2.2.1版本解压后可以看到mbedtls-2.2.1\include\mbedtls路径下有许多header文件将其添加到IDE的头文件中。在mbedtls-2.2.1\library下有许多c文件我们只添加需要用到的aes.c。 这里使用Visual Studio2013 C/C环境进行编译演示。新建控制台应用空工程。在Header Files文件夹下添加头文件注意连文件夹一起添加因为C文件中的include是包含路径的。然后把aes.c添加到source文件夹里。此时直接编译就能通过啦 接下来就是在主函数里调用函数。这里调用了ECB模式和CBC模式两种。源代码如下 #includestdio.h #include mbedtls/aes.h #include mbedtls/compat-1.3.h#define AES_ECB 0 #define AES_CBC 1 #define AES_CFB 2 #define AES_CTR 3 #define MODE AES_ECBunsigned char key[16] { 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22 }; unsigned char plain[32] { 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11 }; unsigned char plain_decrypt[32] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; unsigned char IV[16]; unsigned char cypher[32]; int i 0; mbedtls_aes_context aes;void SetIV() {int i;for (i 0; i 16; i){ IV[i] 0x55;}} int main() {if (MODE AES_ECB){mbedtls_aes_setkey_enc(aes, key, 128);//  set encrypt key            mbedtls_aes_crypt_ecb(aes, AES_ENCRYPT, plain, cypher);mbedtls_aes_setkey_dec(aes, key, 128);//  set decrypt keymbedtls_aes_crypt_ecb(aes, AES_DECRYPT, cypher, plain_decrypt);i;            }if (MODE AES_CBC){mbedtls_aes_setkey_enc(aes, key, 128);//  set encrypt keySetIV();mbedtls_aes_crypt_cbc(aes, AES_ENCRYPT, 32, IV, plain, cypher);mbedtls_aes_setkey_dec(aes, key, 128);//  set decrypt keySetIV();mbedtls_aes_crypt_cbc(aes, AES_DECRYPT, 32, IV, cypher, plain_decrypt);i;            } } 单步运行在 debug 窗口中可以观察到 cypher 数组的值改变变为加密后的值以及 plain _decrypt 数组中的值变为解密后的值也就是和 plain 数组中一样。J~ 任何程序错误以及技术疑问或需要解答的请添加
http://www.pierceye.com/news/391623/

相关文章:

  • 网站开发职业分析产品展示的手机网站
  • 精通网站建设pdf网上自学电脑课程
  • 一站式网站建设业务沈阳网站建设 熊掌号
  • 58同城网站建设目的劳务公司怎么注册需要什么要求
  • 龙华网站建设设计公司国家中小学智慧教育平台
  • 摄影网站采用照片做宣传_版权费是多少?pythom+网站开发规范
  • 免费制作一个自己的网站吗达内教育口碑怎么样
  • 2015做那个网站能致富网站建设模板ppt模板
  • 网站后台管理系统教程自助网站建设程序
  • 做黑帽需不需要搭建网站没有做等保的网站不能上线对吗
  • 怎么在微信建立公众号郑州专业seo首选
  • 万网网站后台国家域名
  • 怎么做 niche网站临港注册公司优惠政策
  • 做网站开发怎么做网站推广的步骤
  • 网站空间文件删不掉软文免费发布平台
  • 电子商务网站开发教程论文推广app平台有哪些
  • 郑州专业的网站建设优化自己的网站
  • 申请渠道门户网站是什么意思微信公众平台推广网站
  • 公司网站未备案公众号如何推广产品
  • 网站建设服务器环境配置郑州网站建设企业名录
  • e福州官方网站wordpress注册目录
  • 国际外贸网络交易平台网页seo搜索引擎优化
  • 做网做网站建设网站建设图片怎么切
  • 国外数码印花图案设计网站36kr wordpress
  • 上海网站建设设计公司zencart 网站入侵
  • 阜蒙县自治区建设学校网站汉中市住建局建设厅网站官网
  • windows 2008 iis怎么搭建网站手机网站模板建站
  • 优设网官网首页seo教程搜索引擎优化
  • 做问卷给钱的网站页面设计结课总结
  • 洛阳集团网站建设wordpress 深度优化