今日头条
RFID技术中的密钥协商类型有3种,即由后端数据库生成秘密值、由标签生成秘密值、由后端数据库和标签分别生成秘密值。
由后端数据库生成秘密值
①后端数据库生成秘密值s,将其加密Ek(s),并计算H(s)。后端数据库发送加密后的s和H(s)给读写器,即发送{Ek(s),H(s)}给读写器。
②读写器将收到的消息发送给标签。
③标签收到s的密文后进行解密,得到s的明文,并与收到的H(s)进行对比,若不一致,则说明解密得到的s和后端数据库生成的s不一致,要求后端数据库重新进行密钥协商;若一致,则说明解密得到的s和后端数据库生成的s一致,对s进行变换,得到C(s),计算H(C(s)),发送H(C(s))给读写器。
④读写器将收到的消息发送给标签。
⑤后端数据库对自己生成的s进行同样的变换,计算H(C(s)),并与收到的H(C(s))进行对比。若不一致,则说明标签计算得出的s和自己生成的s不一致,重新进行密钥协商;若一致,则说明标签计算得出的s和自己生成的s一致,密钥协商成功。
由标签生成秘密值
①标签生成秘密值s,将其加密Ek(s),并计算H(s)。标签发送加密后的s和H(s)给读写器,即发送{Ek(s),H(s)}给读写器。
②读写器将收到的消息发送给后端数据库。
③后端数据库收到s的密文后进行解密,得到s的明文,并与收到的H(s)进行对比,若不一致,则说明解密得到的s和标签生成的s不一致,要求标签重新进行密钥协商;若一致,则说明解密得到的s和标签生成的s一致,对s进行变换,得到C(s),计算H(C(s)),发送H(C(s))给读写器。
④读写器将收到的消息发送给标签。
⑤标签对自己生成的s进行同样的变换,计算H(C(s)),并与收到的H(C(s))进行对比。若不一致,则说明标签计算得出的s和自己生成的s不一致,重新进行密钥协商;若一致,则说明后端数据库计算得出的s和自己生成的s一致,密钥协商成功。
由后端数据库和标签分别生成秘密值
①后端数据库生成秘密值s1,将其加密Ek(s1),并计算H(s1))。后端数据库发送加密后的s1和H(s1))给读写器,即发送{Ek(s1)),H(s1))}给读写器。
②读写器将收到的消息发送给标签。
③标签收到s1的密文后进行解密,得到s1的明文,并与收到的H(s1))进行对比,若不一致,则说明解密得到的s1和后端数据库生成的s1不一致,要求后端数据库重新进行密钥协商;若一致,则说明解密得到的s1和后端数据库生成的s1一致,标签生成秘密值s2,将其加密Ek(s2),并计算H(s2)。根据s1和s2,标签计算出与后端数据库共享的新密钥knew,并计算H(knew)。后端数据库发送加密后的s2、H(s2)和H(knew)给读写器,即发送{Ek(s2),H(s2),H(knew)}给读写器。
④读写器将收到的消息发送给标签。
⑤后端数据库收到s2的密文后进行解密,得到s2的明文,并与收到的H(s2)进行对比,若不一致,则说明解密得到的s2和标签生成的s2不一致,要求标签重新进行密钥协商;若一致,则说明解密得到的s2和后端数据库生成的s2一致,采用和标签同样的方法计算出knew和H(knew)。将自己计算的H(knew)与收到的H(knew)进行对比。若不一致,则说明计算出的knew和标签计算出的knew不一致,要求标签重新进行密钥协商;若一致,则说明计算出的knew和标签计算出的knew一致,密钥协商成功。
全部0条评论
快来发表一下你的评论吧 !