当前位置:首页 > 新一代商户接入手册V2.7
http://www.ChinaPay.com Chinapay新一代商户接入手册
3.2 运行及开发环境
商户可根据自己的实际情况,选用合适的开发平台和运行平台。ChinaPay将提供对应的NetPayClient版本。目前ChinaPay的NetPayClient有如下几种:
? ? ? ?
NetPayClient for Java (以JAR的方式提供) NetPayClient for Win32 (以DLL方式提供) NetPayClient for (以.class.php方式提供) NetPayClient for C (以.so或.a的方式提供)
3.3 术语
电子商务 Electronic Commerce是指通过信息网络以电子数据信息流通的方式在全世界范围内进行并完成的各种商务活动、交易活动、金融活动和相关的综合服务活动。
网络贸易 指在网络平台基础上直接进行在线贸易(Trade Online),利用数字化技术将企业、海关、运输、金融、商检和税务等有关部门有机连接起来,实现从浏览、洽谈、签约、交货到付款等全部或部分业务自动化处理。网络贸易由信息共享、订购、支付、执行、服务与支持5个部分组成,每个部分在网络贸易中都各自承担了不同的任务。
B2C(Business to Consumer) 指企业与消费者之间的电子商务。这是消费者利用因特网直接参与经济活动的形式,类同于商业电子化的零售商务。目前,在因特网上有许许多多各种类型的虚拟商店和虚拟企业,提供各种与商品销售有关的服务。
B2B(Business to Business) 指企业与企业间的电子商务。企业可以使用因特网或其它网络对每笔交易寻找最佳合作伙伴,完成从订购到结算的全部交易行为,包括向供应商订货、签约、接受发票和使用电子资金转移、信用证、银行托收等方式进行付款,以及在商贸过程中发生的其它问题,如索赔、商品发送管理和运输跟踪等。
商户 具有电子商务功能的商店和企业。
银行卡 商业银行所发行的储蓄卡、信用卡、储值卡、企业购物卡、购物联名卡、虚拟电子卡等支付工具。
持卡人 银行卡的拥有者。
网上支付密码 数字串。发卡行用于鉴别网上持卡人身份,具体产生方法、使用范围和管理规范见各发卡行\业务规范\。
发卡行 具有发行银行卡功能的商业银行。
开户行 指持卡人卡账户或企业资金账户所在的商业银行。
SSL(Secure Socket Layer) 是一种基于网络传输层的安全网络传输协议,实现客户端与服务器端间的数据安全传递。
第 5 页 共 35 页
http://www.ChinaPay.com Chinapay新一代商户接入手册
3.4 NetPayClient的使用
说明
NetPayClient实现消费者、商户和银行间的网上安全支付。提供如下功能: ? ? ? ?
商户对订单关键信息进行数字签名 商户验证ChinaPay发送的交易应答 商户对一段字符串的签名 商户对一段字符串的签名验证
各语言NetPayClient压缩包见14章。 3.4.1
NetPayClient for Java 使用说明
3.4.1.1 核心文件清单
名 称 chinapaysecure.jar Chinapayfilesecure.jar Mer.pfx 放置的路径 根据项目工程的需要放置对应路径下 用 途 用于提供商户签名、验签、加密、解密方法调用 根据项目工程的需要放置对应路径下 用于提供商户验签结算和对账文件 可以放置到任意路径下,但是需要调用方法指定文件位置和名称 商户签名证书(控台申请) cp.cer 可以放置到任意路径下,但是需要调用方法指定文件位置和名称 ChinaPay签名证书 3.4.1.2 方法说明
类名 方法名 用 途 初始化商户签名、验签配置信息 用于对商户报文进行签名 获取商户签名值 对交易过程中的敏感数据进行加密 对密码进行加密 获取加密后的密码字符串 获取加密后的密文字符串 验证chinapay返回的应答数据 获取商户签名、验签、加密及解密的处理结果 com.chinapay.secss.SecssUtil init sign getSign encryptData encryptPin getEncPin getEncValue verify getErrCode init SecssFileService verifyFile getErrCode 初始化商户签名、验签配置信息 文件验签 获取商户签名、验签、加密及解密的处理结果 第 6 页 共 35 页
http://www.ChinaPay.com Chinapay新一代商户接入手册
?
初始化安全控件方法:init
方法说明:
public boolean init() 作用:
初始化商户签名、验签配置信息。
使用此方法需要将security.properties放在类路径下,并配置如下: #交易证书路径
sign.file=D:/cert_cp/000000000000001.pfx #交易证书密码
sign.file.password=XXXXXX #交易证书的密钥容器格式 sign.cert.type=PKCS12
#报文中不参与签名的字段名称,多个字段用逗号进行分隔 sign.invalid.fields=Signature,CertId #验签证书路径
verify.file=D:/cert_cp/cp_test.cer #签名值字段名称
signature.field=Signature 参数说明:
security.properties文件中,商户只需要修改sign.file、sign.file.password、verify.file三项。 返回值:
true :表示正确初始化证书文件,并且可以调用签名方法签名或者签名验证方法验证签名; false:表示初始化证书文件失败,不可以使用签名方法和签名验证方法。 注:该方法在类com.chinapay.secss.SecssUtil中。
方法说明:
public boolean init(Properties pros) 作用:
初始化商户签名、验签配置信息。 参数说明:
Properties pros 属性配置文件对象,用于加载商户自定义的属性配置文件,需要在该文件中配置商户签名证书文件绝对路径、签名文件密码、密钥容器格式、验证签名证书文件绝对路径、签名值和证书id、签名值字段名称等。
返回值:
true :表示正确初始化证书文件,并且可以调用签名方法签名或者签名验证方法验证签名; false:表示初始化证书文件失败,不可以使用签名方法和签名验证方法。 注:该方法在类com.chinapay.secss.SecssUtil中。 ?
订单签名方法:sign 方法说明:
public void sign(Map map) 作用:
用于对商户报文进行签名。
第 7 页 共 35 页
http://www.ChinaPay.com Chinapay新一代商户接入手册
参数说明:
Map map 为商户交易数据。 返回值: 无
注:该方法在类com.chinapay.secss.SecssUtil中。 ?
获取签名结果字符串方法:getSign 方法说明:
public String getSign() 作用:
获取商户签名后生成的字符串。 参数说明: 无 返回值:
商户签名结果字符串。
注:该方法在类com.chinapay.secss.SecssUtil中。 ?
敏感数据加密方法:encryptData 方法说明:
public void encryptData(String data) 作用:
对交易过程中的敏感数据进行加密。 参数说明:
String data 待加密的明文字符串 返回值: 无 ?
密码加密方法:encryptPin 方法说明:
public void encryptPin(String pin,String card) 作用:
对密码进行加密。 参数说明:
String pin 银行卡密码 String card 卡号 返回值: 无 ?
获取加密后的密码:getEncPin 方法说明:
public String getEncPin() 作用:
获取加密后的密码字符串。 参数说明: 无 返回值:
第 8 页 共 35 页
共分享92篇相关文档