|
查看: 8|回复: 0

[BLE SDK] 协议栈的AES-CCM接口是通用的吗?

[复制链接]

145

主题

338

回帖

1584

积分

管理员

积分
1584
发表于 昨天 11:50 | 显示全部楼层 |阅读模式 来自 上海
Information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: -
SDK及版本: -
客户安全部门要求用 AES-CCM 加密模式计算认证码,可以用协议栈提供的 aes_ll_ccm_encryption / aes_ll_ccm_decryption 接口吗?它们是通用的 AES-CCM 吗?

回答:

1、协议栈提供的 aes_ll_ccm_encryption / aes_ll_ccm_decryption 是 BLE 标准的 AES-CCM,不是通用算法:

- 它的参数要求(nonce、长度字段、认证码长度等)遵循 BLE Core Spec 中定义的 CCM 用法;
- 用于产品做认证码计算不是不可以,但不推荐,因为受 BLE 规范约束,通用性差。

2、AES-CCM 的相关约束请参考:蓝牙 Core Spec, Vol 6, Part E 的 ENCRYPTION AND AUTHENTICATION OVERVIEW 与 CCM 章节。

3、建议:先确认 BLE 规范中的 CCM 认证码是否满足客户场景需求;如果满足且确实要用,按规范参数使用;如果客户要的是通用 AES-CCM(如 RFC 3610 定义),建议直接使用独立的 CCM 实现,不要用协议栈的 BLE 专用接口。

4、通用 AES-128(ECB 等)接口是通用的,可用于自定义加解密方案。

本版积分规则

关注公众号
隐私政策|Telink forum

相关侵权、举报、投诉及建议等,请发 E-mail:forum@telink-semi.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.|沪ICP备17008231号-1 |沪公网安备31011502403548号

在本版发帖返回顶部