关于公安部eID和CTID
公安部eID与CTID的区别
无论是CTID还是eID,目前在试点阶段没有相关法律法规支持并不强制使用。本文的目的仅在于个人学习国家网络身份验证技术,非评判好坏是非请勿跨省追捕(手动滑稽)。
eID诞生于公安部第三研究所,基于非接触式芯片和sim卡等硬件验证。并且侧重于隐私保护,另外现在的eID其实包含了CTID的二维码验证功能(腾讯e证通小程序)。eID二维码(包含了eID0001123456789012345678901231224141535003907[B@beaf0b1)或接触式验证,商户均只能获取到相对于该商户的一个唯一标识信息。
CTID诞生于公安部第一研究所,起步较晚。基于身份证照片+人脸识别方式,其中支付宝流程为打开CTID-人脸识别-验证通过展示二维码(二维码基于支付宝活码体系域名,https://qr.alipay.com/xxx,该码中目前授权商家获取姓名、身份证号、人脸照片。)
综上所述,目前CTID之所以支持商家众多,应该还是因为给予了商家更多用户数据吧。当然也有一些小原因,比如对于支付宝的支持。
公安部eID原理
公安部系统签发eID时,会以用户个人信息和随机数(目前算法未知)计算出eID身份标识编码(eIDcode)。该编码不包含任何个人信息且不可逆。
用户使用eID向应用方自证身份时,应用方会连接公安部(或运营和服务机构)服务器核验真实和有效性。验证通过后会以用户信息和应用方信息(目前算法未知)计算出应用标识编码(appelDcode),从而避免用户在不同网络应用中的行为数据被汇聚、分析和追踪。
由于eID联网验证,因此一旦丢失可随时拨打发行机构(比如工商银行、华为)电话即时挂失。
公安部eID载体
根据载体类型的不同,eID目前主要有通用eID、二维码、SIMeID、USBkey三种方式。
通用eID采用非接触式cpu卡,因此可直接应用于社保卡、市民卡、带非接触式芯片的银行卡、nfc手机、nfc手环上。二维码采用人脸识别对比身份证照片识别验证。SIMeID和USBkey目前原理不明(等待确认中)。
由于存储在cpu卡eeprom的MF-DDF中,并采用国密SM2算法。基于cpu卡只能读写ram不能直接读写eeprom的特性,目前无法被读取复制篡改。
期待有一天公安部第三研究所,愿意与小米这种小公司合作将eID空发到手环3nfc的eeprom中。
公安部eID分析过程
根据eID在上海市民云项目通过nfc刷工行借记卡验证和工行网站介绍自2014年9月26日起,原则上新增发行的芯片借记标准卡均加载eID功能(http://www.icbc.com.cn/ICBCCollege/client/page/ChoicenessDetail.aspx?ItemID=635532234067489409&CataID=633717555866105642)。
因此判断eID使用了非接触式芯片(应该是SAK20),同时手机没有nfc的情况下还支持二维码验证但是需要到工行柜员机刷eid后才能展示二维码。当然华为手机的eID同时支持刷卡+二维码展示。
公安部eID标准
以下三个eID标准20181010发布,20190501实施。
GB/T 36629.1-2018(eID读写机具安全技术要求)
GB/T 36629.2-2018(eID载体安全技术要求)
GB/T 36632-2018(eID格式规范)