Michael's Space

Technology changes the world, serves the people.
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理
EMV交易过程解析之六 Terminal Risk Management
Michael 2006年7月20日

 1/*----------------------------------------------------------------
 2名称:TerminalRiskManagement
 3参数:
 4        [IN] AIP(Application Interchange Profile)
 5        [IN] Terminal LOG
 6            用于获得本次交易帐号的最近一次交易金额
 7        [IN] TFL(Terminal Floor Limit - Tag '9F1B')
 8        [IN] TPURS(Target Percentage to be Used for Random Selection - 终端数据)
 9        [IN] TVBRS(Threshold Value for Biased Random Selection - 终端数据)
10        [IN] MTPUBRS(Maximum Target Percentage to be Used for Biased Random Selection - 终端数据)
11        [IN] LCOL(Lower Consecutive Offline Limit - tag '9F14')
12        [IN] UCOL(Upper Consecutive Offline Limit - tag '9F23')
13        [IN] ATC(Application Transaction Counter - tag '9F36')
14        [IN] LOAR(Last Online ATC Register - tag '9F13')
15        [OUT] TVR(Terminal Verification Result)
16        [OUT] TSI(Transaction Status Information)
17处理:
18        包括:
19        [金额上限检验(Floor Limit checking)] 判断本次交易金额和上次交易金额的总和是否超过终端交易金额上限(Terminal Floor Limit),设置TVR相应位。
20        [在线交易判断(Random Transaction Selection)] 对于交易金额小于TVBRS的情况,终端需要产生一个1-99的随机数,如果该随机数小于等于TPURS则该交易需要在线验证。对于金额大于等于TVBRS但小于TFL的交易,终端需要比较产生的随机数和TTP(Transaction Target Percent),如果随机数小于等于TTP,则交易需要在线验证。其中,TTP=( (MTPUBRS-TPURS) * ((Amount,Authorised-TVBRS)/(TFL-TVBRS)) )+TPURS。若需要在线验证则设置TVR的相应位为1。
21        [交易周期校验(Velocity Checking)] 发送GET DATA命令读取ATC和Last Online ATC Register,若读取失败则校验结束并置TVR相应位。若读取成功则两值相减的结果同LCOL比较,若结果大于LCOL则该交易需要在线授权。若终端当时无法在线交易则可以继续离线交易的上限为UCOL,当UCOL次数达到时必须进行在线授权,否则交易应当被拒绝。若LOAR为0则要设置TVR的“新卡”位为1。
22        TRM执行完后置TVR和TSI相应位。
23-----------------------------------------------------------------*/

24

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理