我开发的PHP支付集成SDK PaySDK 里用到了RSA的私钥签名,根据一些用户使用后反馈的结果来看,在签名验签这块问题不小。少部分是环境问题导致的,大部分应该是私钥格式有问题。
我自己电脑(Windows)以及两台Linux服务器,都可以直接使用不换行的私钥。而有一些用户他们的环境,不换行就有问题,必须换行。
所以后来我在PaySDK里做了处理,统一处理成换行的格式,下面贴出代码,做PHP RSA这块的朋友,有问题应该用得上!
function parseKey($key) { return wordwrap(preg_replace('/[\r\n]/', '', $key), 64, "\n", true); }
啊啊啊