程序员
文章平均质量分 90
詹天佐
智能卡工程师,商用密码产品从业人员,抠腚谋生。红十字志愿者,铁路爱好者,业余无线电爱好者,地理爱好者,持证法律爱好者,证件收藏爱好者。已婚已育。
展开
-
CCC 数字钥匙学习笔记 - 车主配对命令
整理了一下CCC组织的汽车数字钥匙Release 3中关于车主配对Owner Paring,过程的APDU指令和数据说明。基本可以算是在车端的角度进行车主配对操作。里面的章节表格编号,都按照CCC数字钥匙Release 3文档中的编号走,方便将来检索对照。原创 2023-04-12 11:40:26 · 2236 阅读 · 0 评论 -
盲签名算法的原理与C语言实现
盲签名(Blind Signature) 是由Chaum,David提出的一种数字签名方式,其中消息的内容在签名之前对签名者是不可见的(盲化)。经过盲签名得到的签名值可以使用原始的非盲消息使用常规数字签名验证的方式进行公开验证。盲签名可以有效的保护隐私,其中签名者和消息作者不同,在电子投票系统和数字现金系统中会被使用。......原创 2022-06-15 18:59:52 · 1660 阅读 · 0 评论 -
Node.js使用ffi-napi,ref-array-napi,ref-struct-napi调用动态库
0x01 概述使用electron开进行桌面程序的开发,似乎成了WEB前端开发人员转桌面程序开发的首选。近期有一些使用在electron中使用加密锁的需求,学习了一下在Node.js中通过ffi-napi模块调用动态链接库,把几款加密锁产品的动态库使用javascript封装了一下,实现了electron中使用加密锁功能。开发过程中遇到了一些问题,踩了一些坑,这里总结记录一下。这里使用接口函数参数类型比较复杂的ROCKEY-ARM的动态链接库来进行开发。NOTE: javascript封装的ROCK原创 2022-04-19 18:32:14 · 6768 阅读 · 4 评论 -
使用中国剩余定理CRT对RSA运算进行加速
使用中国剩余定理CRT对RSA运算进行加速。原创 2022-03-10 19:58:13 · 3228 阅读 · 0 评论 -
中国剩余定理CRT、高斯算法和RSA低加密指数广播攻击
中国剩余定理 高斯算法 低加密指数广播攻击原创 2022-03-10 16:13:46 · 1161 阅读 · 0 评论 -
加密算法中的填充方法
在对数据进行加解密,签名,计算MAC的时候,有时需要对数据进行填充,填充的方法主要分为两大类,一种是比特填充(Bit Padding),填充时以比特为最小单位进行填充,另一种是字节填充(Byte Padding),填充时以字节为最小单位进行填充.当然有时候我们按字节处理数据时,一些比特填充和字节填充的效果是一样,比如ISO/IEC 9797-1 Padding Method 2和ISO/IEC 7816-4,数据如果最小处理单位都是字节的话,填充的效果其实是一样的.PKCS #1中定义的RSA算法用的P原创 2021-10-15 19:20:47 · 1751 阅读 · 0 评论 -
基于mbedTLS算法库实现国密SM2签名和验签算法
网上有大量的基于OpenSSL实现的国密算法库,比如著名的GmSSL,可以直接拿来用。我自己常用的是mbedTLS的算法库,比较小巧简单,在mbedTLS的大数算法的基础上实现了国密SM2的签名和验签算法。在基于mbedTLS实现SM2签名和验签算法的过程中走过一些弯路,现在把实现的过程记录下来备忘。国密SM2算法也是基于椭圆曲线公钥算法,椭圆曲线上的运算都是和国际算法一样的,国密SM2规范中给出...原创 2018-04-25 14:54:39 · 7060 阅读 · 8 评论 -
Diffie–Hellman key exchange DH密钥协商
DH算法是一个密钥的磋商算法,并不能交换一个密钥(安全的将密钥从一方发送到另一方),也不能进行数字签名和加密,只能让双方共同产生一个密钥。原创 2017-12-07 14:12:41 · 5381 阅读 · 0 评论 -
JAVA中使用P和Q分量计算N和D进行RSA运算
在java中使用P和Q分量计算出N和D进行RSA运算原创 2016-09-30 10:46:46 · 3118 阅读 · 5 评论 -
[FIDO]U2FHID协议
FIDO U2F认证,国内的文章一般翻译成FIDO两步认证。U2F是在现有的用户名+密码认证的基础之上,增加一个更安全的认证因子用于登录认证。用户可以像以前一样通过用户名和密码登录服务,服务会提示用户出示一个第二因子设备来进行认证。U2F可以使用简单的密码(比如4个数字的PIN)而不牺牲安全性。U2F出示第二因子的形式一般是按一下USB设备上的按键或者放入NFC。UAF先放一边,U2F的工作流程比较简单,具体的可以看FIDO联盟官网。下面主要说下U2F HID协议。首先要明确一下U2FHID协议不是原创 2015-12-14 17:05:33 · 2285 阅读 · 0 评论 -
PBOC卡片应用分析(一)
之前没有对金融卡片研究过今天用自己的建行环球旅行信用卡学习一下。使用的读卡器是一款CCID的接触式读卡器,北京的中国移动营业厅有使用他的低版本型号。CCID的读卡器通讯API还算比较简单,自己之前有现成的代码,但是测试了一下,在选择完T0协议后,通讯还是有问题,向卡片发数还是有问题,总是犯0xE的错误。不查代码了直接用我司麻工研发的强大的snooper。首先上来是选择MF1.SELEC原创 2013-09-10 10:22:33 · 2106 阅读 · 0 评论 -
Delphi 2012 XE2 x64平台实现HID设备操作
Delphi 2012 XE2 开始支持x64位平台,现有的32位的DELPHI程序需要移植到x64平台下。下面是这次工作的记录。直接把32位的工程编译成64位后,没有报错,但是执行SetupDiEnumDeviceInterfaces接口的时候总是返回false,使用GetLastError发现错误码是1784(提供给请求操作的用户缓冲区无效。 ),这个接口的C定义是SetupD原创 2012-03-28 19:19:45 · 4209 阅读 · 1 评论