Hex格式文件转APDU格式

在使用Snooper时需要添加某外部程序到系统中,此处用到APDU格式传输,所以需要把Hex的16进制文件转成APDU格式。


使用Notepad++或者类似的文本编辑器工具,使用快捷键Ctrl+H(替换)查找目标处输入Hex文件的起始符和代码长度,如: :10然后替换为FE38000014 6810(此处根据APDU的指令格式来)如:FE380000146810这是自己编的指令,CLA为FE,INS为38,P1、P2为0000,数据长度为0x14此长度为0x10个字节长度加上4个字节的地址长度,前两个字节为基址地址,0x6810,之后的两个直接就是Hex文件中的存储地址,也就是便宜地址,然后选择全部替换,即所有的数据格式前缀就被更换。


此时Hex文件中还有1个字节的数据类型,基本都是00,需要去掉00这一个字节的数据可以使用Alt+鼠标左键来拉取00这两列数据来delete,或者使用Notepad的正则表达式来替换。

然后差每行行末的一个字节的求和校验码,使用正则表达式来快速删除使用替换在查找目标栏输入.$就是从行末向左匹配一个字符,然后替换为空白,这种替换操作两次即可去掉每行行末的一个字节。


此时该Hex文件就会转变为APUD的格式,结合Hex文件提供的偏移地址加上第一条指令中指出的基址地址就可以快速的转换为APDU指令格式。

    


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值