Vector - CAPL - AES算法介绍(续1)

这篇具有很好参考价值的文章主要介绍了Vector - CAPL - AES算法介绍(续1)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        前面介绍了CAPL自带函数库中包含的AES相关的4种算法,今天咱们介绍下CAPL库包含的一些其他的低级加密函数。

Vector - CAPL - AES算法介绍(续1)

目录

SecurityLocalGenerateSHA256

代码示例

SecurityLocalGenerateSHA512

代码示例

SecurityLocalGenerateCMAC

SecurityLocalGenerateSharedSecretECDH


SecurityLocalGenerateSHA256

Vector - CAPL - AES算法介绍(续1)

功能:将给定的数据和秘钥,生成哈希256的加密数据

data[]:待加密的数据

dataLength:待加密的数据长度

sha256[]:加密完成的sha256数据

sha256Length:加密完成的数据长度

 返回值:

        1:加密成功

        <=0:加密失败

代码示例

	
byte data[3] = { 0x61, 0x62, 0x63 };
byte refOutput[32] ={
0xba, 0x78, 0x16, 0xbf,
0x8f, 0x01, 0xcf, 0xea,
0x41, 0x41, 0x40, 0xde,
0x5d, 0xae, 0x22, 0x23,
0xb0, 0x03, 0x61, 0xa3,
0x96, 0x17, 0x7a, 0x9c,
0xb4, 0x10, 0xff, 0x61,
0xf2, 0x00, 0x15, 0xad
};

dword refOutputLength = 32;
byte output[32];
dword outputLength = 32;
dword result = 255;
dword counter = 0;
result = SecurityLocalGenerateSHA256(data, elCount(data), output, outputLength);

SecurityLocalGenerateSHA512

Vector - CAPL - AES算法介绍(续1)

功能:将给定的数据和秘钥,生成哈希512的加密数据

data[]:待加密的数据

dataLength:待加密的数据长度

sha256[]:加密完成的sha512数据

sha256Length:加密完成的数据长度

 返回值:

        1:加密成功

        <=0:加密失败

代码示例

byte data[3] = { 0x61, 0x62, 0x63 };
byte refOutput[64] ={
  0xdd, 0xaf, 0x35, 0xa1, 0x93, 0x61, 0x7a, 0xba
  , 0xcc, 0x41, 0x73, 0x49, 0xae, 0x20, 0x41, 0x31
  , 0x12, 0xe6, 0xfa, 0x4e, 0x89, 0xa9, 0x7e, 0xa2
  , 0x0a, 0x9e, 0xee, 0xe6, 0x4b, 0x55, 0xd3, 0x9a
  , 0x21, 0x92, 0x99, 0x2a, 0x27, 0x4f, 0xc1, 0xa8
  , 0x36, 0xba, 0x3c, 0x23, 0xa3, 0xfe, 0xeb, 0xbd
  , 0x45, 0x4d, 0x44, 0x23, 0x64, 0x3c, 0xe8, 0x0e
  , 0x2a, 0x9a, 0xc9, 0x4f, 0xa5, 0x4c, 0xa4, 0x9f
};

dword refOutputLength = 64;
byte output[64];
dword outputLength = 64;
dword result = 255;
dword counter = 0;
result = SecurityLocalGenerateSHA512(data, elCount(data), output, outputLength);

SecurityLocalGenerateCMAC

Vector - CAPL - AES算法介绍(续1)

功能:为给定的数据和密钥生成哈希,生成一个CMAC的哈希数据。

key[]:使用加密的key

keyLength:key的长度

data[]:待加密的数据

dataLength:待加密的数据长度

cmac[][out]:加密完成的CMAC数据

sha256Length[In/Out]:加密完成的数据长度

 返回值:

        1:加密成功

        <=0:加密失败

SecurityLocalGenerateSharedSecretECDH

Vector - CAPL - AES算法介绍(续1)

 功能:使用椭圆曲线Diffie-Hellman(ECDH)协议(X25519)生成共享密钥。

publicKey[]:A的公钥

publicKeyLength:A的公钥长度

privateKey[]:B的公钥

privateKeyLength:B的公钥长丢

sharedSecret[]:生成的加密数据

sharedSecretLength [In/Out]:生成的加密数据长度+输入长度

返回值:

        1:成功生成加密数

        <=0:生成加密数据失败文章来源地址https://www.toymoban.com/news/detail-400421.html

到了这里,关于Vector - CAPL - AES算法介绍(续1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AES算法介绍

    一、前言         由于一直在实习,事情有点多,一直没更新,幸运的是,我今天终于把事情做完了,终于可以准备回家过年了;那么趁现在简单介绍一下AES算法吧; 二、AES算法流程         AES(Advanced Encryption Standard)算法是一种对称加密算法,其原理采用的是迭代

    2024年02月04日
    浏览(34)
  • CAPL入门到精通之CAPL Functions(四) 下 - 字符串函数实例

    Vector CANoe CAPL系列相关文章导览,下面链接可直接跳转 CAPL入门到精通文章导览 Vector CANoe VT System系列板卡文章导览,下面链接可直接跳转 Vector CANoe VT system传送门

    2024年02月03日
    浏览(52)
  • linux nm指令(nm命令),查看动态库函数(动态库中函数、查看库函数)(查看动态库中.so有哪些函数)(nm -D -A)

    示例: 加上 -D 参数,打印结果能输出动态库名称: 如果要查找一个函数在哪个动态库下,但目录中有很多动态库,不知道在哪个里面,可以用这条命令一个个查找:( /path/to/directory 是要查找的路径) 比如我要在当前文件夹查找cw_alg_add这个函数: 如果不想把其他带后缀的

    2024年02月05日
    浏览(51)
  • linux nm指令(nm命令),查看动态库函数(动态库中函数)(查看动态库中.so有哪些函数)(nm -D -A)

    示例: 加上 -D 参数,打印结果能输出动态库名称: 如果要查找一个函数在哪个动态库下,但目录中有很多动态库,不知道在哪个里面,可以用这条命令一个个查找:( /path/to/directory 是要查找的路径) 比如我要在当前文件夹查找cw_alg_add这个函数: 如果不想把其他带后缀的

    2024年02月15日
    浏览(43)
  • Eigen库中的Identity()函数作用

    今天学习Eigen库,看到示例代码中有这样一行: Matrix3d: Eigen库中typedef的数据类型,即“3*3矩阵(d表示矩阵内部数据类型为double类型)” rotation_matrix: 该3*3矩阵的变量名 Matrix3d::Identity() :在定义该矩阵变量时,创建一个同尺寸同数据类型的 单位阵 ,对其初始化。

    2024年02月11日
    浏览(32)
  • 【CANoe】CAPL_UDS安全算法dll制作

    使用UDS进行刷写时,需要27服务解密后,才能正确执行刷写,本文提供两种制作27解密dll的方法,用于CANoe的CAPL脚本中。 【特别说明】 遇到问题时,CAPL帮助文档提供了很好的指引,大家可以好好利用。 CAPL DLL示例所在路径: C:UsersPublicDocumentsVectorCANoeSample Configurations 12.

    2024年02月06日
    浏览(55)
  • Canoe CAPL语言实现TCP连接与通信流程(TCP相关API函数详细使用)

    本文主要讲解CAPL语言里是如何实现TCP连接通信的,所以在本文开始前需要一些前期准备。 1、 首先是需要了解TCP的报文格式,连接三次握手,断开连接四次挥手的相关知识,推荐以下两位博主文章。 深入浅出TCP三次握手 (多图详解) 两张动图-彻底明白TCP的三次握手与四次

    2024年02月07日
    浏览(238)
  • MMDetection3D库中的一些模块介绍

    本文目前仅包含2个体素编码器、2个中间编码器、1个主干网络、1个颈部网络和1个检测头。如果有机会,会继续补充更多模型。 若发现内容有误,欢迎指出。   MMDetection3D的点云数据一般会经历如下步骤/模块:   下面分别介绍每个部分的一些典型模型。   在介绍体素

    2023年04月17日
    浏览(48)
  • 一文带你玩转C库中的一系列字符串函数

    作者主页: paper jie的博客_CSDN博客-C语言,算法详解领域博主 本文作者: 大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文录入于 《系统解析C语言》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造,将算法基础知识一网打尽,

    2024年02月13日
    浏览(48)
  • AES算法基于FPGA的硬件实现(3)AES算法的Verilog实现(完结)

    本设计实现AES加密算法为ecb模式,填充模式未设置,同时支持AES-128/192/256三种密钥长度。 代码完全开源,开源链接在文章末尾。 下图为GitHub仓库中上传的文件第一级结构,第一级为matlab和user,matlab中存储的是在进行列混淆运算时查表所用的coe文件,这些文件用来初始化viv

    2024年01月18日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包