wp-pay-gateways / ideal-advanced-v3
WordPress支付处理库的iDEAL Advanced v3驱动程序。
Requires
- php: >=7.4
- ext-dom: *
- ext-openssl: *
- pronamic/wp-http: ^1.1
- wp-pay-gateways/ideal: ^4.1
- wp-pay/core: ^4.6
Requires (Dev)
- automattic/wordbless: ^0.4.2
- bamarni/composer-bin-plugin: ^1.8
- overtrue/phplint: ^9.0
- php-coveralls/php-coveralls: ^2.6
- phpmd/phpmd: ^2.14
- pronamic/pronamic-cli: ^1.1
- pronamic/wp-coding-standards: ^2.0
- roots/wordpress: ^6.0
- wp-phpunit/wp-phpunit: ^6.1
- yoast/phpunit-polyfills: ^1.1
This package is auto-updated.
Last update: 2024-09-13 08:16:23 UTC
README
WordPress支付处理库的iDEAL Advanced v3驱动程序。
提供者
- ING
- 荷兰合作银行
文档
签名iDEAL消息
所有由商户发送给收单行(DirectoryRequest、TransactionRequest和StatusRequest)的消息都必须由商户签名。消息的签名应按照2008年6月10日发布的"W3C推荐‘XML签名语法和处理(第2版)"进行,并应用以下设置和限制:
-
整个XML消息必须签名。
-
为了生成主消息的摘要,必须使用包含的规范化算法。这种规范化的主要消息方法在iDEAL XML消息中没有(总是)明确指示。因此,这种转换未包含在此文档中的示例消息中。商户不需要在其消息中明确指出此转换。
-
为了生成签名值,必须使用排除的规范化算法。
-
必须使用封装签名语法。使用默认转换从XML消息中移除签名本身。
-
用于散列的目的,必须使用SHA-256算法。
-
用于签名的目的,必须使用RSAWithSHA256算法。RSA密钥长度必须为2,048位。
-
必须使用X.509证书的指纹引用公钥。指纹必须按照以下公式计算:HEX(SHA-1(DER证书)) 11。
注意:密钥引用与所有以前的iDEAL版本向后兼容。
注意:根据Base64规范,每76个字符后可以插入换行符,使用CR/LF12。
通常,商户不需要对RSA有深入了解,因为大多数编程语言都有可用的库,这些库实现了XML数字签名处理。强烈建议使用这些标准库。在以下版本和更高版本中,常用软件平台提供了创建和验证RSAWithSHA256数字签名的标准功能:PHP版本5.3.0、Microsoft .NET版本3.5 sp1和Java版本1.6 u18。
此功能也可能在其他平台(例如Python、Ruby)的早期版本中可用。
有关创建公钥和私钥对的信息,请参阅第8.4段。
4 http://www.w3.org/TR/xmldsig-core/
5 XML签名引用已签名的信息URI留空,请参阅附录B中的示例消息
6 http://www.w3.org/TR/2001/REC-xml-c14n-20010315
7 http://www.w3.org/2001/10/xml-exc-c14n
8 http://www.w3.org/TR/xmldsig-core/#sec-EnvelopedSignature
9 http://www.w3.org/2001/04/xmlenc#sha256
10 上标 http://www.w3.org/TR/2002/REC-xmlenc-core-20021210/#sec-SHA256
11 请参阅附录B中的示例消息
12 http://tools.ietf.org/html/rfc2045#section-6.8