zoukankan      html  css  js  c++  java
  • PHP中使用OpenSSL下openssl_verify验证签名案例

    使用OpenSSL那么需要先了解一下http://www.cnblogs.com/wt645631686/p/8390936.html

    <?php
    //demo   
    $json = '{"sign":"myYCvJqsDJUNX67qJnklrVY025oSQmm4D4bIVdHZQzihV+G8G848MmAAatAxCDuCmJbenI0jRZk7p22HjFT0nRykEeSmTExiT+Jx7/2GQn5grEA3qd7i9gCPz/E7+n9mleukLuJoXeceVp626c4gLZTKiPPcmbsJIfwfNexCBZXb2B7OmcgvPqRYki8b8aZy3E/DDdFABOyXr+OEuswooYzz1ivdL+8tfWXhejs54UaeS0IscoWBYXj2Bws8lPpCzC3OCGZV1bErlM7VekfpoNMO/KOpJpPp8kA838EBp7uD/QMKJxf0KeS4qta7E3aWzrwwj97OUKkJOWA2CBFcfA==","pay_data":"{"amount":"200","pay_time":"1529975466","appOrderId":"31801806260910429835893414","orderId":"1000180626057312701","uId":"2","appGoodsId":"1","test_id":"1"}"}';
    
    
    /**
    * 验证签名
    */
    private function _verify_code($json = '') {
            $sign         = $json['sign'];
            $data         = $json['data'];
            $data_arr     = json_decode($data, true);
            $test_id     = intval($date_arr['test_id']);
            if ($test_id == 1) {
                $publicKey = <<<EOF
    -----BEGIN PUBLIC KEY----- 
    MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2hcmCgXI9zZXJKWvkWZa
    F/3kuDahyjHud+hmAN1/JA86GMDK64hEPV4CTHYT+WLZu3uT21f/b8IiDpXUvnwf
    OVW+QCk7b4aaaaaaaaaaaaaaaaaaaaaaaaaaaaaP/qAjutxByIcJyuy1JS/CuU2D
    tvMVQ/pfV4r+99kRZ4pu+ZduD/yq5cEXZniQMnmtJI3TW389ESMyFaOzqclraDci
    M1zBkm4rbcwUDJpm+Te6zoqSEy06Z0RR4HL2aOuBIDaCN7sodSmIpcA4xlI6n0z2
    2Jq6K/yyOBGyj7unAbpS5iFuwEV5ICrAt9JezvgJ7wJIXWwxaXs4v+M/a87QiNZw
    FQIDAQAB
    -----END PUBLIC KEY-----
    EOF;
            }else {
                $publicKey = <<<EOF
    EOF;
            }
            $res = openssl_get_publickey($publicKey);
            $result = (bool)openssl_verify($data, base64_decode($sign), $res);
            openssl_free_key($res);
            return $result;  //bool
        }
  • 相关阅读:
    记一次给自己的本子更换一个SSD盘
    喜欢的电影
    一个人没有出息的9大根源
    经典思维模式
    Linux基础入门教程
    XML
    UML
    Linux最常用的基础命令
    IP地址
    http协议
  • 原文地址:https://www.cnblogs.com/wt645631686/p/8391841.html
Copyright © 2011-2022 走看看