dongliqin6939 2015-02-08 17:00
浏览 88

无法使用Php WS02生成X509Data和X509Certificate标记

Problem in Generating below,when tried with all kinds of inputs in WS02 policy.xml.Kindly assit in generating below part in webservice request.

<ds:KeyInfo> 
                <ds:X509Data>
                   <ds:X509Certificate>MIIDUjCCAjqgAwIBAgIIBX96VBJzA1QwDQYJKoZIhvcNAQEFBQAwWjERMA8GA1UEAxMIUEdXU3Vi
    Q0ExEDAOBgNVBAoTB1NpZW1lbnMxEzARBgNVBAcTCkJyYXRpc2xhdmExETAPBgNVBAgTCFNsb3Zh
    a2lhMQswCQYDVQQGEwJTSzAeFw0wNjAxMDQxNTExMzBaFw0wODAxMDQxNTIxMzBaMFsxEjAQBgNV
    BAMTCUNhcm1lblNpbTEQMA4GA1UEChMHU2llbWVuczETMBEGA1UEBxMKQnJhdGlzbGF2YTERMA8G
    A1UECBMIU2xvdmFraWExCzAJBgNVBAYTAlNLMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCc
    rUHuWD+sfU+PS+vYe/wwAOWlpTqpcRhKwXTlhtfekQSEz/jzqWhfRuPzNil16QFOdPZg5M0OusI3
    ln239La5ZpkTSvCc5LrNbj4SvJu2cbc1UYU1BAQCipxs6kG1biYd3nWqpGum8nESybLSPHActZ/1
    DKVauBXEWFSKdazUkQIDAQABo4GeMIGbMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgWgMDsG
    A1UdJQQ0MDIGCCsGAQUFBwMBBggrBgEFBQcDAgYIKwYBBQUHAwQGCCsGAQUFBwMFBggrBgEFBQcD
    BzAdBgNVHQ4EFgQURQJ7qpFi7doKbZvRkDIf4My3LrIwHwYDVR0jBBgwFoAUtbaYUw+qe+iV0ruq
    WFVWZDJdB4kwDQYJKoZIhvcNAQEFBQADggEBAI3xvGKw8nsZdyVh29ON+mlfsv2LERT+zqeNSsuE
    Pno58V+HFn28QaPJX7CwNsfRS0txA7gbmAM5BgUPXVWzqjgXp0HeWj1qzM5yuawLzBP9d7thWkrK
    ZOr7vWPMKFkhiw37WFaSot6HGVCU+KrMxL2hteIhLNGKLKQiKVIoUpAKgzuGe9PBwaxD1JxsBSKs
    x8zigoPAlMhRdktg1lYI7/jKgEXPK9TfNmP1bQGErP88j4aw3fC2DQiOaewjQlCV7BaZ5ZdYLlj8
    IV1BmGukpJZvTUj6/T6ui5CrAngiGEL17NNWkvunn4Vrie038D5U3NK31b/uKdMHiwmb1iu/Ykc=</ds:X509Certificate>
                </ds:X509Data>
                <ds:KeyValue>
                   <ds:RSAKeyValue>
                      <ds:Modulus>nK1B7lg/rH1Pj0vr2Hv8MADlpaU6qXEYSsF05YbX3pEEhM/486loX0bj8zYpdekBTnT2YOTNDrrC
    N5Z9t/S2uWaZE0rwnOS6zW4+ErybtnG3NVGFNQQEAoqcbOpBtW4mHd51qqRrpvJxEsmy0jxwHLWf
    9QylWrgVxFhUinWs1JE=</ds:Modulus>
                      <ds:Exponent>AQAB</ds:Exponent>
                   </ds:RSAKeyValue>
                </ds:KeyValue>
             </ds:KeyInfo>

This $xml , not able to embed in soap headers. $client = new WSClient(array("wsdl"=>"/home/sps_mtnc_dev/Preetham/CBSInterface_BusinessMgr.wsd‌​l", "policy" => $policy, "securityToken" => $xml)). Reult we are not able to see X509 certificate

  • 写回答

2条回答 默认 最新

  • douzhuo1853 2015-02-10 01:38
    关注

    How is this?:

    <?php
    
    include('File/X509.php');
    
    $cert = '-----BEGIN CERTIFICATE-----
    MIIDITCCAoqgAwIBAgIQT52W2WawmStUwpV8tBV9TTANBgkqhkiG9w0BAQUFADBM
    MQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkg
    THRkLjEWMBQGA1UEAxMNVGhhd3RlIFNHQyBDQTAeFw0xMTEwMjYwMDAwMDBaFw0x
    MzA5MzAyMzU5NTlaMGgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlh
    MRYwFAYDVQQHFA1Nb3VudGFpbiBWaWV3MRMwEQYDVQQKFApHb29nbGUgSW5jMRcw
    FQYDVQQDFA53d3cuZ29vZ2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC
    gYEA3rcmQ6aZhc04pxUJuc8PycNVjIjujI0oJyRLKl6g2Bb6YRhLz21ggNM1QDJy
    wI8S2OVOj7my9tkVXlqGMaO6hqpryNlxjMzNJxMenUJdOPanrO/6YvMYgdQkRn8B
    d3zGKokUmbuYOR2oGfs5AER9G5RqeC1prcB6LPrQ2iASmNMCAwEAAaOB5zCB5DAM
    BgNVHRMBAf8EAjAAMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwudGhhd3Rl
    LmNvbS9UaGF3dGVTR0NDQS5jcmwwKAYDVR0lBCEwHwYIKwYBBQUHAwEGCCsGAQUF
    BwMCBglghkgBhvhCBAEwcgYIKwYBBQUHAQEEZjBkMCIGCCsGAQUFBzABhhZodHRw
    Oi8vb2NzcC50aGF3dGUuY29tMD4GCCsGAQUFBzAChjJodHRwOi8vd3d3LnRoYXd0
    ZS5jb20vcmVwb3NpdG9yeS9UaGF3dGVfU0dDX0NBLmNydDANBgkqhkiG9w0BAQUF
    AAOBgQAhrNWuyjSJWsKrUtKyNGadeqvu5nzVfsJcKLt0AMkQH0IT/GmKHiSgAgDp
    ulvKGQSy068Bsn5fFNum21K5mvMSf3yinDtvmX3qUA12IxL/92ZzKbeVCq3Yi7Le
    IOkKcGQRCMha8X2e7GmlpdWC1ycenlbN0nbVeSv3JUMcafC4+Q==
    -----END CERTIFICATE-----';
    
    $x509 = new File_X509();
    $x509->loadX509($cert);
    $pubKey = $x509->getPublicKey();
    
    $xml = '<KeyInfo><X509Data><X509Certificate>';
    $xml.= preg_replace('#-.*-#', '', $cert);
    $xml.= '</X509Certificate></X509Data><KeyValue>';
    $xml.= $pubKey->getPublicKey(CRYPT_RSA_PUBLIC_FORMAT_XML);
    $xml.= '</KeyValue></KeyInfo>';
    
    echo preg_replace('#(</?)#', '$1ds:', $xml);
    

    It uses phpseclib and requires you provide an X.509 cert.

    评论

报告相同问题?

悬赏问题

  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)