懂MAC校验的,进来帮帮小弟!!!
最近写一个web service的接口,供对方调用,以及调用别的支付接口的
遇见一个MAC校验的问题
MAC需求说明是这样的
MAC校验,保证了交易信息到支付平台的完整性,参与MAC运算的字符及其顺序如下:
COMMCODE=123456789&COMMPWD=123456&ORDERID=20080314000001&BANKCODE=02100000001&SUBBANKID=T1&REQTIME=20080314&TRANSAMT=10000&KEY=DJKF34ER35D58D
商户平台将上述固定顺序组织的字符串,参数名均为大写,使用标准md5算法进行摘要,然后将摘要果转成16进制字符串,就是校验域MAC的值,将MAC值和订单信息调用接口时,一起提供给支付平台
COMMCODE,COMMPWD 上面那窜 里面的 参数 我已经赋过值,比如
string result = CardPay.pay(commCode,subCommCode,commPwd,bankCode ,subBankID ,bankAccId ,transamt,mac);
现在这个方法里面又要传个MAC过去, 这个MAC 是不是要把 我已经传过去的参数 拼成 那个格式的字符串 然后MD5加密再传过去一次?
我以前没做过这种东西, 请知道的人 帮忙讲解下。