智能门锁中CPU卡加密

CPU卡中的双向认证的实现


实体:CPU卡 机具
CPU卡中存放一个密钥
机具中存放和CPU卡相同的密钥


CPU卡外部认证步骤:
1、CPU卡产生一个8字节随机数送给外部程序,CPU卡临时保存随机数在卡内
2、外部程序把8字节随机数送给机具,机具用密钥计算随机数,得到8字节随机数密文
3、外部程序把8字节随机数密文送给CPU卡
4、CPU卡在卡片内部解密8字节随机数得到随机数明文,
5、CPU卡在卡片内部把解密后的随机数和步骤1中临时存放的随机数比对,若相等,则外部认证成功
所以外部认证是CPU卡认证机具。
机具内部认证步骤:
1、机具产生一个8字节随机数送给外部程序,机具临时保存随机数在机具中
2、外部程序把8字节随机数送给CPU卡,CPU用内部认证密钥计算随机数,得到8字节随机数密文
3、外部程序把8字节随机数密文送给机具
4、机具解密8字节随机数得到随机数明文,
5、机具在内部把解密后的随机数和步骤1中临时存放的随机数比对,若相等,则内部认证成功
所以内部认证是机具认证CPU卡
这样机具和CPU卡从而达到了双向认证
5、密钥的分散问题
由于一个机具必须可以认证n张卡片,而每张卡片的密钥都不相同
一般的想法:必须有n个机具对应n张卡片,但是这样代价太高,也不现实
密码学中提出了一个方法,即密钥分散的方法。
即机具中存放的是用户卡的母密钥,每次认证的时候,由母密钥根据用户卡的标识
计算得到用户卡的密钥。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值