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

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

目录

SecurityLocalGenerateSHA256

代码示例

SecurityLocalGenerateSHA512

代码示例

SecurityLocalGenerateCMAC

SecurityLocalGenerateSharedSecretECDH


SecurityLocalGenerateSHA256

功能:将给定的数据和秘钥,生成哈希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

功能:将给定的数据和秘钥,生成哈希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

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

key[]:使用加密的key

keyLength:key的长度

data[]:待加密的数据

dataLength:待加密的数据长度

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

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

 返回值:

        1:加密成功

        <=0:加密失败

SecurityLocalGenerateSharedSecretECDH

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

publicKey[]:A的公钥

publicKeyLength:A的公钥长度

privateKey[]:B的公钥

privateKeyLength:B的公钥长丢

sharedSecret[]:生成的加密数据

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

返回值:

        1:成功生成加密数

        <=0:生成加密数据失败

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
Vector CAPL培训是一种专门针对Vector CAPL语言的培训课程。CAPL(Communication Access Programming Language)是Vector公司开发的一种用于开发和测试汽车通信系统的脚本语言。 Vector CAPL培训可以帮助学习者掌握CAPL语言的基本语法、数据类型、变量和函数的使用方法,以及与通信系统的集成和调试。通过这种培训,学习者可以了解如何使用CAPL来编写自动化测试脚本,以及如何利用CAPL进行模拟和仿真。 在Vector CAPL培训中,学习者将会通过理论和实践相结合的方式进行学习。培训课程通常包括讲座、实验、案例分析和项目实践等形式,以帮助学习者深入理解CAPL的原理和实际应用。 通过参加Vector CAPL培训,学习者可以获得以下益处: 1. 熟悉CAPL语言:学习者可以掌握CAPL语言的基本语法和概念,能够编写CAPL脚本来实现自动化测试、数据分析和仿真等功能。 2. 提高工作效率:掌握CAPL语言可以帮助学习者更高效地开发和调试汽车通信系统,提高工作效率,并减少错误和漏洞的出现。 3. 扩展职业技能:具备CAPL语言的应用能力可以为学习者提供更多的职业发展机会,使其在汽车通信系统的开发和测试领域有更广阔的发展空间。 总的来说,Vector CAPL培训可以帮助学习者全面了解CAPL语言,提高其在汽车通信系统领域的工作能力,并为其职业发展打下坚实的基础。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车载网络测试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值