taoism 2 edep 圈存辅助计算 ui script
来源:互联网 发布:剑三丐哥捏脸数据 编辑:程序博客网 时间:2024/06/11 20:02
taoism 2版辅助计算工具中,用来辅助计算电子存折/钱包圈存指令的界面脚本
脚本内容,见附录B
使用方法
1) 将脚本内容存储为一个txt文本文件。
2) 打开snooper taoism 2 0.0.1.5或更高版软件。
3) 点击“常用计算工具”按钮,弹出菜单,选择user 01 – user 04中的一个。
4) 在新弹出的界面上点击右键加载脚本,选择步骤1中所存储的脚本文件。
5) 添加适当的参数,点击按钮进行计算。
附录A
-------------------
附录B
脚本如下
static说明="利用用户输入的交易类型、交易密钥、密钥id\r\n交易金融等参数来校验初始化交易指令以及交易指令"position= 0%width= 100%height= 2
crlf
staticstatic圈存密钥="圈存密钥(16字节)"position= 0%width= 100%height= 1
crlf
edit圈存密钥filename="圈存密钥"position= 0%width= 100%height= 1
crlf
staticstatic密钥索引="密钥索引(1字节)"position= 0%width= 39%height= 1
staticstatic交易金额="交易金额(4字节)"position= 40%width= 59%height= 1
crlf
edit密钥索引filename="密钥索引"position= 0%width= 39%height= 1
edit交易金额filename="交易金额"position= 40%width= 59%height= 1
crlf
staticstaticTAC密钥="TAC 密钥(16字节)"position= 0%width= 100%height= 1
crlf
editTAC密钥filename="TAC密钥"position= 0%width= 100%height= 1
crlf
staticstatic终端机编号="终端机编号(6字节)"position= 0%width= 49%height= 1
staticstatic交易时间="交易时间(7字节)"position= 50%width= 49%height= 1
crlf
edit终端机编号filename="终端机编号"position= 0%width= 49%height= 1
edit交易时间filename="交易时间"position= 50%width= 49%height= 1
crlf
staticstaticaaa="━━━━━━━━━━━━━━━━━━━━━━━━"position= 0%width= 100%height= 1
crlf
button生成ED初始化圈存指令="生成 ED(存折)初始化圈存指令"position= 0%width= 49%height= 1
button生成EP初始化圈存指令="生成 EP(钱包)初始化圈存指令"position= 50%width= 49%height= 1
crlf
staticstatic输出结果="初始化指令生成结果"position= 0%width= 100%height= 1
crlf
edit初始化指令生成结果filename="初始化指令生成结果"position= 0%width= 100%height= 1
crlf
function 生成ED初始化圈存指令
初始化指令生成结果= 80 50 00 01($密钥索引 $交易金额 $终端机编号 )
endfunction
function生成EP初始化圈存指令
初始化指令生成结果= 80 50 00 02($密钥索引 $交易金额 $终端机编号 )
endfunction
staticstaticaaa="━━━━━━━━━━━━━━━━━━━━━━━━"position= 0%width= 100%height= 1
crlf
staticstatic输出结果="外部输入的初始化指令返回数据"position= 0%width= 100%height= 1
crlf
edit外部输入的初始化指令返回数据filename="外部输入的初始化指令返回数据"position= 0%width= 100%height= 1
crlf
button由返回结果反填参数="由返回结果反填参数"position= 50%width= 49%height= 1
crlf
staticstatic余额="余额"position= 0%width= 24%height= 1
staticstatic交易序号="交易序号"position= 25%width= 24%height= 1
staticstatic伪随机数="伪随机数"position= 50%width= 24%height= 1
staticstatic圈存mac1="圈存mac1"position= 75%width= 24%height= 1
crlf
edit余额filename="余额"position= 0%width= 24%height= 1
edit交易序号filename="交易序号"position= 25%width= 24%height= 1
edit伪随机数filename="伪随机数"position= 50%width= 24%height= 1
edit圈存mac1filename="圈存mac1"position= 75%width= 24%height= 1
crlf
function由返回结果反填参数
余额 = mid($外部输入的初始化指令返回数据,int( 0),int( 4)) //余额
交易序号 = mid($外部输入的初始化指令返回数据,int( 4),int( 2)) //序号
伪随机数 = mid($外部输入的初始化指令返回数据,int( 8),int( 4)) // 伪随机数
圈存mac1 = mid($外部输入的初始化指令返回数据,int( 12),int( 4)) // 圈存mac1
endfunction
// 临时变量
edittmpfilename="tmp"position= 0%width= 24%height= 0
edit圈存过程密钥filename="圈存过程密钥"position= 0%width= 24%height= 0
staticstatic外部计算圈存mac1="外部计算圈存mac1"position= 50%width= 49%height= 1
crlf
button计算ED圈存mac1="计算ED圈存mac1"position= 0%width= 29%height= 1
button计算EP圈存mac1="计算EP圈存mac1"position= 30%width= 39%height= 1
edit外部计算圈存mac1filename="外部计算圈存mac1"position= 75%width= 24%height= 1
crlf
function 计算ED圈存mac1
// 先校验mac是否正确
tmp=$伪随机数 $交易序号 8000
圈存过程密钥=3des_encode_ecb($tmp,$圈存密钥) // tmp是过程密钥
//mac1的原始数据组成为
// 余额 + 交易金额 + 交易类型标识 + 终端机编号
tmp=fixed80($余额 $交易金额 01 $终端机编号)
外部计算圈存mac1=des_des_mac( 0000000000000000,$tmp,$圈存过程密钥)
endfunction
function 计算EP圈存mac1
// 先校验mac是否正确
tmp=$伪随机数 $交易序号 8000
圈存过程密钥=3des_encode_ecb($tmp,$圈存密钥) // tmp是过程密钥
//mac1的原始数据组成为
// 余额 + 交易金额 + 交易类型标识 + 终端机编号
tmp=fixed80($余额 $交易金额 02 $终端机编号)
外部计算圈存mac1=des_des_mac( 0000000000000000,$tmp,$圈存过程密钥)
endfunction
staticstaticaaa="━━━━━━━━━━━━━━━━━━━━━━━━"position= 0%width= 100%height= 1
crlf
button计算ED圈存指令="计算ED圈存指令"position= 0%width= 29%height= 1
button计算EP圈存指令="计算EP圈存指令"position= 30%width= 39%height= 1
crlf
edit圈存指令filename="圈存指令"position= 0%width= 100%height= 1
crlf
function计算ED圈存指令
//圈存指令临时数据
tmp=fixed80($交易金额 01 $终端机编号 $交易时间)
//用过程密钥对mac2 原始数据进行mac计算,结果是mac2
tmp=des_des_mac( 0000000000000000,$tmp,$圈存过程密钥)
圈存指令= 80 52 00 00($交易时间$tmp)
endfunction
function 计算EP圈存指令
// 圈存指令临时数据
tmp=fixed80($交易金额 02 $终端机编号 $交易时间)
//用过程密钥对mac2 原始数据进行mac计算,结果是mac2
tmp=des_des_mac( 0000000000000000,$tmp,$圈存过程密钥)
圈存指令= 80 52 00 00($交易时间$tmp)
endfunction
staticstaticaaa="━━━━━━━━━━━━━━━━━━━━━━━━"position= 0%width= 100%height= 1
crlf
staticstatic输出结果="外部输入的交易指令返回数据"position= 0%width= 49%height= 1
edit交易指令TACfilename="交易指令TAC"position= 50%width= 49%height= 1
crlf
button计算ED交易指令TAC="计算ED交易指令TAC"position= 0%width= 49%height= 1
button计算EP交易指令TAC="计算EP交易指令TAC"position= 50%width= 49%height= 1
crlf
editTAC临时数据filename="TAC临时数据"position= 0%width= 24%height= 0
editTAC临时密钥filename="TAC临时密钥"position= 0%width= 24%height= 0
function 计算ED交易指令TAC
TAC临时数据=fixed80(add($余额,$交易金额) $交易序号 $交易金额 01 $终端机编号 $交易时间)
TAC临时密钥=xor(left($TAC密钥, 08),right($TAC密钥, 08))
交易指令TAC=des_des_mac( 0000000000000000,$TAC临时数据,$TAC临时密钥)
endfunction
function 计算EP交易指令TAC
TAC临时数据=fixed80(add($余额,$交易金额) $交易序号 $交易金额 02 $终端机编号 $交易时间)
TAC临时密钥=xor(left($TAC密钥, 08),right($TAC密钥, 08))
交易指令TAC=des_des_mac( 0000000000000000,$TAC临时数据,$TAC临时密钥)
endfunction
- taoism 2 edep 圈存辅助计算 ui script
- edep 初始化圈存,圈存流程、数据计算与示例
- taoism 2中sm3辅助计算工具脚本
- snooper taoism 2 中 sm2 辅助计算脚本
- taoism版辅助计算工具中支持数据解析了。
- taoism版辅助计算工具加入了滑动窗口功能
- Snooper taoism的辅助计算工具加入了ecc功能
- Snooper taoism辅助计算工具中base64界面脚本
- taoism版中即将开放的用户自定义的辅助计算的demo
- Snooper taoism版中已经实现的可由用户自定义的辅助计算功能示例
- 圈存&圈提
- 圈存&圈提
- taoism 2 解析stk
- 正确理解圈存
- ETC-圈存
- 圈存和圈提是什么意思
- snooper taoism 2中的sm3使用示例
- taoism 2中现在的函数
- AT&T汇编语言与GCC内嵌汇编简介
- gcc和g++的区别
- GCC使用详情
- Effective C++读书笔记(4)
- gcc参数详解
- taoism 2 edep 圈存辅助计算 ui script
- gcc生成静态库和动态库
- debug版 flashplayer
- GCC 命令行详解
- Part 02 对话框(Qt)[2012.01.20]
- GCC 命令选项使用详解
- MFC版哈希值计算器的实现(一)
- 关于js中call和apply函数的应用
- gcc交叉编译的实现