BLE SMP MAC是如何保证消息的来源是正确的?MIC不是一样的作用吗?
时间: 2024-03-11 07:43:59 浏览: 19
在BLE SMP中,MAC是通过使用加密密钥和消息计算出来的一种值,用于验证消息的完整性和来源。MAC的计算过程涉及到密钥,只有知道密钥的人才能够计算正确的MAC。因此,只有知道密钥的人才能够生成正确的MAC,从而保证消息的来源是合法的。
而MIC则是一种校验码,它是一种用于检测消息是否被篡改的技术。在BLE SMP中,MIC通常由16位或32位的计算结果组成,用于验证消息的完整性。如果消息被篡改,那么计算出的MIC也会不同,接收方就可以通过比较计算出的MIC和接收到的MIC来判断消息是否被篡改。但是,MIC并不能保证消息的来源是正确的,因为没有涉及到密钥的计算过程。
因此,虽然MIC和MAC都是用于保证通信的安全性,但是它们的作用不同:MIC用于验证消息的完整性,而MAC用于验证消息的完整性和来源。MAC通过使用密钥来保证消息来源的合法性,而MIC则只能用于验证消息的完整性。在BLE SMP中,为了保证消息的安全性,通常需要同时使用MIC和MAC来进行消息的完整性和来源的验证。
相关问题
BLE SMP中MIC不是等价于MAC吗?
在BLE SMP中,MIC和MAC都是用于保证通信的安全性,但是它们的功能和作用不同。
MIC是消息完整性校验码(Message Integrity Check),用于检测消息是否被篡改。在BLE SMP中,MIC由16位或32位的计算结果组成,用于验证消息的完整性。在加密通信时,发送方在加密的数据中添加MIC,接收方在解密的数据中验证MIC,以确保消息的完整性。
MAC是消息认证码(Message Authentication Code),用于验证消息的来源和完整性。MAC是加密密钥和消息的函数计算结果,用于验证消息的完整性和来源。在BLE SMP中,MAC用于保护SMP消息的安全性,包括加密、认证、MITM保护等。
因此,MIC和MAC的作用不同:MIC用于验证消息的完整性,而MAC用于验证消息的完整性和来源。虽然MIC和MAC都是用于保证通信的安全性,但是它们的功能和应用场景不同,需要根据具体的需求选择使用。
BLE SMP MacKey是什么?作用?Central device和Peripheral device两者的MacKey有什么关系?
BLE SMP MacKey是指用于保护BLE连接中安全管理协议(SMP)中的加密密钥的密钥。它是通过SMP协议协商生成的,并用于BLE连接中的数据加密和解密,以确保连接的安全性和完整性。
Central device和Peripheral device在建立BLE连接时,会协商生成一组MacKey,其中包括LTK(Long Term Key)、EDIV(Encryption Diversifier)和Rand(Random Number)。这组MacKey会被用于BLE连接中的数据加密和解密。Central device和Peripheral device的MacKey是通过SMP协议协商生成的,因此它们之间是相互独立的,但是它们都是基于同一组LTK、EDIV和Rand生成的,因此它们之间是有一定的关联性的。