前言
早在 2008年,M1卡的安全算法就被破解,这意味着当时全球多达10亿张的M1卡都存在被伪造、复制的风险,近几年网络媒体也针对智能锁卡片钥匙的安全问题做了很多现场测试。测试表明,一部分智能锁产品使用普通M1卡进行开锁验证,未做加密导致可以备轻易复制,造成安全隐患。本文旨在通过简单的几个步骤向大家介绍更加安全的CPU加密卡的实现方式。
一、CPU 卡开锁密钥产生机制
1、 用 DEV_UID(16 位, 不足 16 位后面补 0)做为 3DES 加密密钥对 4 字节卡片唯一识别码 UID(不足 16 位后面补 0)进行 3DES 加密得到 16 位加密数据 DATA_ENC。
2、 DATA_ENC 做为 CPU 卡开锁密钥 UNLOCK_KEY。
注: 加密密钥由客户自定义, 以上加密方式只是示例。
二、 CPU 卡绑卡流程
1、
根据《CPU 卡开锁密钥产生机制》 , 产生开锁密钥
2、
;选择卡应用 00A4 0400 09 A000000003D6D0D5FD
3、
; 得随机数 0084 0000 08
; ; 例如卡片应用主控密钥为(112233445566FFFFFFFFFFFFFFFFFFFF)
; ; 用卡片应用主控密钥(112233445566FFFFFFFFFFFFFFFFFFFF) 对随机数做 3DES 加密
; 对卡片做外部认证, 获取更新密钥的权限, enc 为加密的结果 0082 0000 08 enc(last,112233445566FFFFFFFFFFFFFFFFFFFF)
4、
; 得随机数
0084 0000 08
开锁密钥(例如是 22222222222222222222222222222222)
; ; 先用主控密钥(112233445566FFFFFFFFFFFFFFFFFFFF) 对(密钥头 5 字节+要替换的密钥
16 字节) 加密得到 24 字节加密结果,
15300000003322222222222222222222222222222222
然后用主控密钥(112233445566FFFFFFFFFFFFFFFFFFFF) 对(指令头 5 字节+加密结果 24 字
节) 做 mac 计算得到 4 字节 mac 值。
; 更新开锁密钥
0084 0000 04
84D430011C
DATA_ENC(300000003322222222222222222222222222222222,112233445566FFFFFFFFFFFFFFFF
FFFF)
MAC(84D4 3001 1C DATA_ENC(3000000033
22222222222222222222222222222222,112233445566FFFFFFFFFFFFFFFFFFFF),112233445566FF
FFFFFFFFFFFFFFFFFF,LAST)
详细过程如下:
随机数: 903E12B0ABBA8019 9000
加密密钥数据原始内容: 15300000003322222222222222222222222222222222
更新密钥线路保护密钥: 112233445566FFFFFFFFFFFFFFFFFFFF
加密密钥数据明文内容: 153000000033222222222222222222222222222222228000 //如加
密数据补足 8 字节的倍数, 就后补 80000...凑足 8 字节整倍
数
加密密钥数据密文内容: 47E16367A4F223D99131D48C0FCC7B4CA507087AF537D88B
更新密钥命令: 84D430011C 47E16367A4F223D99131D48C0FCC7B4CA507087AF537D88B
即: 84D430011C47E16367A4F223D99131D48C0FCC7B4CA507087AF537D88B800000
计算 mac 结果: E47CC048
更新密钥命令: 84D430011C 47E16367A4F223D99131D48C0FCC7B4CA507087AF537D88B
E47CC048
三、 CPU 卡开锁流程
1、
根据《CPU 卡开锁密钥产生机制》 , 产生开锁密钥
2、
;选择卡应用 00A4 0400 09 A000000003D6D0D5FD
3、
; 门锁产生 8 字节随机数
; 用开锁密钥(例如 22222222222222222222222222222222) 对 8 字节随机数加密, 得到 8 字节密文 enc
4、
; 内部认证 0088000108(8 字节随机数)
; ; 得到 8 字节密文 enc'
; ; 比对密文结果 enc 和 enc', 比对成功, 开锁, 比对不成功, 提示开锁不成功
示例
0088000108 1122334455667788
9E 94 6C 69 B7 2F 0B 80 : 90 00
开锁密钥(例如 22222222222222222222222222222222)
对随机数加密 1122334455667788
Enc(1122334455667788, 22222222222222222222222222222222) =9E946C69B72F0B80
总结
以上示例就是今天要讲的内容,本文仅仅简单介绍了CPU卡的基础应用方法,通过此方法企业可以在非常短的时间内实现CPU卡的应用,感谢您的关注。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
CPU卡
+关注
关注
1文章
24浏览量
11066 -
智能锁
+关注
关注
18文章
1065浏览量
38976 -
M1卡
+关注
关注
0文章
3浏览量
6898
发布评论请先 登录
相关推荐
TF卡的安全性与加密技术
技术对于保护个人数据至关重要。 1. TF卡的安全性问题 TF卡作为一种外部存储设备,其安全性问题主要体现在以下几个方面: 数据泄露 :TF
物联网系统的安全漏洞分析
设备制造商的安全意识不足 许多物联网设备制造商在设计和生产过程中,往往忽视了安全问题,导致设备存在先天性的安全漏洞。这些漏洞可能包括弱密码
如何使用 IOTA 分析安全漏洞的连接尝试
在当今数字化世界中,网络安全变得至关重要。本文将探讨如何利用流量数据分析工具来发现和阻止安全漏洞和恶意连接。通过分析 IOTA 流量,您可以了解如何识别不当行为,并采取适当的措施来保护您的网络和数据。我们将深入研究IOTA的工作流程,以了解如何准确地分析连接尝试,并识别可
智能IC卡测试设备的技术原理和应用场景
质量和性能符合标准。测试设备可以帮助制造商及时发现并修复卡片存在的问题,提高产品的合格率和可靠性。
金融行业:
银行卡是智能IC卡的重要应用领域之一。为了保障金融交易的
发表于 09-26 14:27
原来手机SIM卡的PCB设计是这样的!
。
二、SIM卡的引脚定义
有些设计工程师画的电路图中的PCB上有8个引脚,其中2个引脚在SIM卡上通常是不连接的,所以有些设计工程师画的图中就只有6个引脚。
由于SIM
发表于 07-09 10:29
小米科技高级安全专家:智能汽车Tbox安全漏洞分析
以下内容整理自谈思AutoSec 8周年年会。 分享嘉宾:小米科技高级安全专家 尹小元 嘉宾简介:小米车联网安全专家,智能终端安全实验室负责车联网安
PuTTY等工具曝严重安全漏洞:可还原私钥和伪造签名
据报道,知名SSH和Telnet工具PuTTY于4月18日暴露安全漏洞CVE-2024-31497,涉及版本0.68至0.80。仅需使用60个签名,攻击者即可还原私钥。为应对此风险,官方更新推出0.81版本,呼吁使用者尽快升级。
iOS 17.4.1修复两安全漏洞,涉及多款iPhone和iPad
据报道,iOS/iPadOS17.4.1主要解决了Google Project Zero团队成员Nick Galloway发现并报告的两大安全漏洞(CVE-2024-1580)。
苹果承认GPU存在安全漏洞
苹果公司近日确认,部分设备中的图形处理器存在名为“LeftoverLocals”的安全漏洞。这一漏洞可能影响由苹果、高通、AMD和Imagination制造的多种图形处理器。根据报告,iPhone 12和
再获认可,聚铭网络入选国家信息安全漏洞库(CNNVD)技术支撑单位
近日,国家信息安全漏洞库(CNNVD)公示2023年度新增技术支撑单位名单。经考核评定,聚铭网络正式入选并被授予《国家信息安全漏洞库(CNNVD)三级技术支撑单位证书》。 国家信息安全漏洞
简单认识安全加密处理器
安全加密处理器 (Secure Cryptoprocessor) 是一种本身不产生加密数据或程序指令,但产生密钥(Key)的处理器,其应用产品有智能卡、ATM、电视机机顶盒、军事系统等
评论