From e704371b1d45c35e1300775fccc434187b007e08 Mon Sep 17 00:00:00 2001 From: elf <360197197@qq.com> Date: Tue, 23 May 2023 00:58:02 +0800 Subject: [PATCH] yh --- 20230522/20230522.cer | 14 +++++++ 20230522/20230522.key | 15 +++++++ 20230522/20230522.pfx | Bin 0 -> 1549 bytes 20230522/20230522.pri.key | 15 +++++++ 20230522/20230522.pri1.key | 15 +++++++ 20230522/20230522.pub.key | 6 +++ 20230522/pubAndPri.key | 19 +++++++++ app/Command/JinlingCommand.php | 2 +- app/Helper/Efps/Config.php | 29 +++++++++++++ app/Helper/Efps/Signer.php | 73 ++++++++++++++++++++++++++++----- sha256/openssl_pri.key | 27 ++++++++++++ sha256/openssl_pub.key | 9 ++++ sha256/pkcs12 | 0 sha256/private-rsa.key | 30 ++++++++++++++ sha256/pubAndPri.key | 32 +++++++++++++++ sha256/public-rsa.cer | 22 ++++++++++ sha256/user-rsa.pfx | Bin 0 -> 2560 bytes 17 files changed, 296 insertions(+), 12 deletions(-) create mode 100644 20230522/20230522.cer create mode 100644 20230522/20230522.key create mode 100644 20230522/20230522.pfx create mode 100644 20230522/20230522.pri.key create mode 100644 20230522/20230522.pri1.key create mode 100644 20230522/20230522.pub.key create mode 100644 20230522/pubAndPri.key create mode 100644 sha256/openssl_pri.key create mode 100644 sha256/openssl_pub.key create mode 100644 sha256/pkcs12 create mode 100644 sha256/private-rsa.key create mode 100644 sha256/pubAndPri.key create mode 100644 sha256/public-rsa.cer create mode 100644 sha256/user-rsa.pfx diff --git a/20230522/20230522.cer b/20230522/20230522.cer new file mode 100644 index 0000000..5451d0f --- /dev/null +++ b/20230522/20230522.cer @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICDjCCAXegAwIBAgIUQUeIOIQA9BTBrFUWQtn4XBmRa4wwDQYJKoZIhvcNAQEL +BQAwGTEXMBUGA1UEAwwOMTQ2LjcwLjExMy4xNjUwHhcNMjMwNTIyMTMxMjE0WhcN +MjQwNTE2MTMxMjE0WjAZMRcwFQYDVQQDDA4xNDYuNzAuMTEzLjE2NTCBnzANBgkq +hkiG9w0BAQEFAAOBjQAwgYkCgYEAwCPaaIJ3HYe+oMI4iC6lKz9acPMgAXqpjnm8 +gxbLviGN9Iuec2u6ps4CIfu4fbR6CjABchYxCXKDRVlivqDeQIG4JPozR6KQnexP +4/xLzE2ZcT/isAC60lXVb/yseJ7QqIk3iTGoUFO6P6OU8UchzI9mBkpErxZELlt8 +/WfkwhkCAwEAAaNTMFEwHQYDVR0OBBYEFLWYBOU89B+dVyOWq3onEtwzMBkzMB8G +A1UdIwQYMBaAFLWYBOU89B+dVyOWq3onEtwzMBkzMA8GA1UdEwEB/wQFMAMBAf8w +DQYJKoZIhvcNAQELBQADgYEATliJx0Lb/Kdp9l24ccRGJEUe144c4fPo93Wb6HQ1 +zBSf/aetY1LGjHEV/0Vqavlj8cshya3gxkpPm1aW1t2qGZsKFsK+wY0r6SplxoxT +kDB3ZJHBIAKwIxoAwmXA/Hg9YlRUbBk8J2PR4JDbp1fJ9+Ecako9gD+Z1uv3I/r2 +Nac= +-----END CERTIFICATE----- diff --git a/20230522/20230522.key b/20230522/20230522.key new file mode 100644 index 0000000..6a560ac --- /dev/null +++ b/20230522/20230522.key @@ -0,0 +1,15 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICXQIBAAKBgQDAI9pogncdh76gwjiILqUrP1pw8yABeqmOebyDFsu+IY30i55z +a7qmzgIh+7h9tHoKMAFyFjEJcoNFWWK+oN5Agbgk+jNHopCd7E/j/EvMTZlxP+Kw +ALrSVdVv/Kx4ntCoiTeJMahQU7o/o5TxRyHMj2YGSkSvFkQuW3z9Z+TCGQIDAQAB +AoGAeAht84g9vdcFwgxToM/zI3dqmtFoF0R4FKf8mrBtDBSOSE3I6TZN3tMoBe7p +rK5I54BiBtHSRKKjW3mh9JEvBmvHQLudbYL2YAW6OLiuLFFZRQRZVqXkKiRSmgGN +nIN4caYVEHTL5yOmERofR99mhKFpzd/MKVutbf7YRBCdyOECQQDtOl8klQfhk8ir +mL2Ww8Z8Rt1EQZUxwzDiJOZV/iwWUtMGUbL2zwFXGbWYA7lpFNMRNdb4+tUtVyyA +S9K4Ms41AkEAz1gdlIBELak9eROAEWBS9F2UoraIbIgOcl8zLLRjgvIT/3xP5Y8j +i6hM6sm31PTtI07dglKCopChllKZyshw1QJBAOLakgc6mMnHd/tYWdylpNZNMeTG +znRC0yk+3iFXqTNDytbdI8XPGNoBFN2kmhZ5uolXshZwT5FHLqAVYhGRTA0CQQC/ +wzr4UPi9UjzsccCMUY3nO3VwV2ktF1hlJu7pdZxjSwh7zbkHEq9JRsp8iztd1XhM +o2/yS+VN/H21zYc3KNJRAkAkwJvz7KyoZyoUIxrdynSuLYdOS71zm4jYLxumqQ2H +4UNFdQ4Jzx4sUgP6qgT3gs0Ovo9Jjn6A8UnvvCvpFl1h +-----END RSA PRIVATE KEY----- diff --git a/20230522/20230522.pfx b/20230522/20230522.pfx new file mode 100644 index 0000000000000000000000000000000000000000..5e2b67c78712e21bffbdeb07cc8d157adedf2776 GIT binary patch literal 1549 zcmY+?do&XY90zclS@V`gk+;0&HLtrx*exBd8Ob}zTVAC|#4g<(HeELAs!(J#c{Hxq zj65>sv1~#!E~Pw@N0~c|WO3Iy_ulUP<9B}Ne81=S`|AV8fhBcfoJU z0`>sPaT47ioJ5BxZiVB3^zRk890#ltMHC=FOtebBHvqUASnBT&G5|1K4g_hv{W5Og zW_LRf2obxA172vcx``S5`OS_^lA;6K$a#c4ds`3xBz7PDP`@byfe-4!GuaabwNUWE zQ_BX7=91WbUAjfP^*rVIXlAE2Y^~;ty@sA;QSoU{-V67S@l{&}tz~l#ynyZKyAzSz zbQ_Nk2fGYz-TTyRC%&UQdyCvJn`Iq-mQs0VSUdSHmYtp`GaB^X1p8T9c%!08Tzc9H zp$N+sAQIYwqALc?CSv;fI#(@)wc9aKb8k0>Mnh`xExPS(G!tUTB)0lyyocB4M;Dif z1g+}SS%P8kWLFbI$@4LajB5udx3BO)OwJN=rGJz(qZp^#|D0>jc)BaRSYYI;fRi;862h}>Na0`hAYFo{d5w;Weo~QNZ$S~rgnJO2~V8qBwR%rE0 z0k2`-m9DG`?{hEmpQ@?S=#*El@|OyUJh++E~7EjsSl9CHC;jQdsl5vzee!BKlGo) zYi4YcKq8=9{{bqZy9~ks7ew)_Xr{r^|8SK807d0PQF#AG-|kP<|g?2*#U$3592*fC+h zwr#kBmgJ(mKe+d33LZi_xlu+PmZ>OSd&gCE+f+O*1JLk8OY|9*cx9V$a?&t0 zs`bc2N}U$ZVG25Io;kuylZbnbNz6LUqLc8RjycCO2T-X_lHRpW*LHdU|*u4zqI&u?Zs%8Z~maBHFLSj+yS z-BkynRKJ>`b`3vw0sdq&u8MWK@O7AOK=gcg)y{sUO&<@Bdtu84Jp|upluN2CfhO+# z@CDk_xORozaYfepDfK;QbB4@T6y^LolKR^#O()*0wpkB zYDzzr^-4eQLP(Ez3uh6pdi;!9(%_V@?Cpp)n>)N{7^Y>>^+H^)6bs@>69NjIHIk-2 zeD&khW`lfzDwz1s2l93+D&=f?bB`I#j>Rf?7ySrTi8H0IV`^e>(-j(L%o$SV3eL~n zTGLE0it%9`Y&zLO53c*KYDpyvWf0Vj+kCvu#dAWb0?9+eXe*cP>z>0c;M#CWu!OOk qI8aqW3XBf5RueDXRy1F>Yx*a8R=1@em$Q{G +-----BEGIN PRIVATE KEY----- +MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAMAj2miCdx2HvqDC +OIgupSs/WnDzIAF6qY55vIMWy74hjfSLnnNruqbOAiH7uH20egowAXIWMQlyg0VZ +Yr6g3kCBuCT6M0eikJ3sT+P8S8xNmXE/4rAAutJV1W/8rHie0KiJN4kxqFBTuj+j +lPFHIcyPZgZKRK8WRC5bfP1n5MIZAgMBAAECgYB4CG3ziD291wXCDFOgz/Mjd2qa +0WgXRHgUp/yasG0MFI5ITcjpNk3e0ygF7umsrkjngGIG0dJEoqNbeaH0kS8Ga8dA +u51tgvZgBbo4uK4sUVlFBFlWpeQqJFKaAY2cg3hxphUQdMvnI6YRGh9H32aEoWnN +38wpW61t/thEEJ3I4QJBAO06XySVB+GTyKuYvZbDxnxG3URBlTHDMOIk5lX+LBZS +0wZRsvbPAVcZtZgDuWkU0xE11vj61S1XLIBL0rgyzjUCQQDPWB2UgEQtqT15E4AR +YFL0XZSitohsiA5yXzMstGOC8hP/fE/ljyOLqEzqybfU9O0jTt2CUoKikKGWUpnK +yHDVAkEA4tqSBzqYycd3+1hZ3KWk1k0x5MbOdELTKT7eIVepM0PK1t0jxc8Y2gEU +3aSaFnm6iVeyFnBPkUcuoBViEZFMDQJBAL/DOvhQ+L1SPOxxwIxRjec7dXBXaS0X +WGUm7ul1nGNLCHvNuQcSr0lGynyLO13VeEyjb/JL5U38fbXNhzco0lECQCTAm/Ps +rKhnKhQjGt3KdK4th05LvXObiNgvG6apDYfhQ0V1DgnPHixSA/qqBPeCzQ6+j0mO +foDxSe+8K+kWXWE= +-----END PRIVATE KEY----- diff --git a/app/Command/JinlingCommand.php b/app/Command/JinlingCommand.php index 17d77c7..db697a0 100644 --- a/app/Command/JinlingCommand.php +++ b/app/Command/JinlingCommand.php @@ -10,7 +10,6 @@ use App\Service\MerchantService; use App\Service\PaymentService; use Hyperf\Command\Command as HyperfCommand; use Hyperf\Contract\ContainerInterface; -use Hyperf\Command\Annotation\Command; /** * @Command @@ -39,6 +38,7 @@ class JinlingCommand extends HyperfCommand public function handle(): void { + echo \App\Helper\Efps\Signer::sign('sss'); $sm3 = new \OneSm\Sm3(); // 字符串签名 diff --git a/app/Helper/Efps/Config.php b/app/Helper/Efps/Config.php index 1a727fd..e142f13 100644 --- a/app/Helper/Efps/Config.php +++ b/app/Helper/Efps/Config.php @@ -8,6 +8,35 @@ class Config 'app_id' => '', 'secret_key' => 'cea6f34bea8640dea91fd8b7a926a9a5', 'base_url' => 'https://efps.epylinks.cn', + 'public_key' => '', + 'private_key' => '-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC7ibPHSAc2glW5 +ZHKhSJR8SHTwkAlN9H0KhiX+NzxuZirUd8VhyPKFcOeSvf+lRo8P7EHd2Hsfly39 +SuTZv4LUqsU0ODw0bXuC7ys1P6kctUc8Pi5Zg7l2FpVQZIwxkszevuYmjSQ7NTA7 +GAS/4pZX6C4yyDObQBV5nmSnhGXzKk/z3c6O829jgVlbFMAKKF//Q4TBiooOeZpY +rgkGtaZSN50puM+WDn7S/ETwZELBi2jRDqg6bJKYsCVPHW/yPdnMS0BMQcDhJsI8 +3BwNvBiJQo4yZ0RmLw3SmIjcThieo74fcHH0Le0TFZRD1dl2OOgPO4lCFxFV6BM0 +wARseqddAgMBAAECggEBAIXZb2XBQ9ykw3hRd/si6U+XC1eTBgEMiZ5URpOdatVE +uDby0P7MxEN3ZOB4GRkmNf9gWVZ0JtRSO3G33YSISmFtDNkLdfTZWzkFaKpVqGaj +/5bArqYW/OyKi8FYMjNDmlM0nuFPBVf4y1ax+tnVaAaP4UE/YI3i/DDUWvSw627U +PqTAAEEeJi624UsVIVLbiWQkaztiutPQYTxONYKt1xcI3OUUBETvRy621czlWIhO +I/bbThawyu4xLrN8eDa6KSeD+LvC3u5IumroDCgoKrOSuY3GesWN7rPm1uVTMCDe +CacQkc2Nx28PiiRFj8XiVzSdHFIEiNopLpHlIv6U+6ECgYEA9DlBhqZoX8pxc2Nq +tm+MLXeY16lr9W23em+51TIEgBnMSne2+yY4+ni0b4x0buFXgH7bR2mSoHzVDvjJ +nYA82YlYtKI6QiSUsKU0WDfzPWqUrTfkt2JUjIwBBFN4vY070Kcu3bV7CsoXLg2E +E6ThtRn7VCQ/+8R/uyU+kuWDXxkCgYEAxJS008rYLfDl6Mqt4gBWdX0OOmck+jQ7 +nT5c/sPggi222z3ka+RGWRERbG40EXiP6xL0AEQ5GJhYITKODnd8XmeOQyMnlFwP +uD33cjhwdOhH2EYTW7KUumo1Dc1ZfPThNk3SnVLvTPBD9cli4vbsU73YhvQp/BDA +3aw3RhscBuUCgYEA5AJ4nL/L/nLBDNuqi30FQIXCGsbAVjkC7bpVoye5b+emBXhT +S5NZ6u66dtKI+eREj2DgVIHKNS+Wsw2vHe7V4LsMKEi1X39LmsgCYMKLw7E38aiX +TmbtTPKBGIrd1QqA58LOTIvcviwDDCnuP3DWkQAa12momuPP5OdWzkqdJjECgYEA +w1kbURRUO2MWtX0jymCXim1ZhEQXhOP/EcV1WF6CbhrLiZc5tNXF6qCBdgUVjP8H +1YyiGNmy+3P4sBSzAkFOv+mcf68hl9bccDRz/3eCmUpyisMoXYlbLtx4GF0mPnyC +iRpQ37IYx5ZDkq4rrGvAcX9I+uMMDccAQcjvrKUn9tkCgYAcx/Usx7dsJyq9qt0x +nPryFkGoDjUg4U5WFvN4d4et4oMDAvA4iFkPxdLlGokYtLC0cEsAmKEqVKVs/Zfa +FyqcOZZSfgy6c90YmbXTmEHIayR05IxVRrL0T+/CGtnYGsNPLGNCSL9eU7zxA+QW +HeJnufFo3VmRzqOQcqrLfi/scQ== +-----END PRIVATE KEY-----' ]; public static function get($key) { diff --git a/app/Helper/Efps/Signer.php b/app/Helper/Efps/Signer.php index 296ba75..eaebfdb 100644 --- a/app/Helper/Efps/Signer.php +++ b/app/Helper/Efps/Signer.php @@ -2,31 +2,82 @@ namespace App\Helper\Efps; +use App\Helper\StringHelper; + class Signer { - public static function sign($content, $privateKey) + private static $privateKey = '-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC7ibPHSAc2glW5 +ZHKhSJR8SHTwkAlN9H0KhiX+NzxuZirUd8VhyPKFcOeSvf+lRo8P7EHd2Hsfly39 +SuTZv4LUqsU0ODw0bXuC7ys1P6kctUc8Pi5Zg7l2FpVQZIwxkszevuYmjSQ7NTA7 +GAS/4pZX6C4yyDObQBV5nmSnhGXzKk/z3c6O829jgVlbFMAKKF//Q4TBiooOeZpY +rgkGtaZSN50puM+WDn7S/ETwZELBi2jRDqg6bJKYsCVPHW/yPdnMS0BMQcDhJsI8 +3BwNvBiJQo4yZ0RmLw3SmIjcThieo74fcHH0Le0TFZRD1dl2OOgPO4lCFxFV6BM0 +wARseqddAgMBAAECggEBAIXZb2XBQ9ykw3hRd/si6U+XC1eTBgEMiZ5URpOdatVE +uDby0P7MxEN3ZOB4GRkmNf9gWVZ0JtRSO3G33YSISmFtDNkLdfTZWzkFaKpVqGaj +/5bArqYW/OyKi8FYMjNDmlM0nuFPBVf4y1ax+tnVaAaP4UE/YI3i/DDUWvSw627U +PqTAAEEeJi624UsVIVLbiWQkaztiutPQYTxONYKt1xcI3OUUBETvRy621czlWIhO +I/bbThawyu4xLrN8eDa6KSeD+LvC3u5IumroDCgoKrOSuY3GesWN7rPm1uVTMCDe +CacQkc2Nx28PiiRFj8XiVzSdHFIEiNopLpHlIv6U+6ECgYEA9DlBhqZoX8pxc2Nq +tm+MLXeY16lr9W23em+51TIEgBnMSne2+yY4+ni0b4x0buFXgH7bR2mSoHzVDvjJ +nYA82YlYtKI6QiSUsKU0WDfzPWqUrTfkt2JUjIwBBFN4vY070Kcu3bV7CsoXLg2E +E6ThtRn7VCQ/+8R/uyU+kuWDXxkCgYEAxJS008rYLfDl6Mqt4gBWdX0OOmck+jQ7 +nT5c/sPggi222z3ka+RGWRERbG40EXiP6xL0AEQ5GJhYITKODnd8XmeOQyMnlFwP +uD33cjhwdOhH2EYTW7KUumo1Dc1ZfPThNk3SnVLvTPBD9cli4vbsU73YhvQp/BDA +3aw3RhscBuUCgYEA5AJ4nL/L/nLBDNuqi30FQIXCGsbAVjkC7bpVoye5b+emBXhT +S5NZ6u66dtKI+eREj2DgVIHKNS+Wsw2vHe7V4LsMKEi1X39LmsgCYMKLw7E38aiX +TmbtTPKBGIrd1QqA58LOTIvcviwDDCnuP3DWkQAa12momuPP5OdWzkqdJjECgYEA +w1kbURRUO2MWtX0jymCXim1ZhEQXhOP/EcV1WF6CbhrLiZc5tNXF6qCBdgUVjP8H +1YyiGNmy+3P4sBSzAkFOv+mcf68hl9bccDRz/3eCmUpyisMoXYlbLtx4GF0mPnyC +iRpQ37IYx5ZDkq4rrGvAcX9I+uMMDccAQcjvrKUn9tkCgYAcx/Usx7dsJyq9qt0x +nPryFkGoDjUg4U5WFvN4d4et4oMDAvA4iFkPxdLlGokYtLC0cEsAmKEqVKVs/Zfa +FyqcOZZSfgy6c90YmbXTmEHIayR05IxVRrL0T+/CGtnYGsNPLGNCSL9eU7zxA+QW +HeJnufFo3VmRzqOQcqrLfi/scQ== +-----END PRIVATE KEY-----'; + + private static $publicKey = ''; + + public static function sign($params, $timestamp, $version = 2) { - $privateKey = "-----BEGIN RSA PRIVATE KEY-----\n" . - wordwrap($privateKey, 64, "\n", true) . - "\n-----END RSA PRIVATE KEY-----"; + ksort($params); + $paramRows = []; + foreach ($params as $key => $value) { + $paramRows[] = $key . '=' . $value; + } + $queryString = implode('&', $paramRows); + if ($version == 1) { + return self::rsaWithSHA256Sign($queryString, self::$privateKey); + } + $randomKey = StringHelper::getRandomString(32); + $encKey = self::rsaWithSHA256Encypt($randomKey, self::$publicKey); + $sm3 = new \OneSm\Sm3(); + $signBody = $sm3->sign($queryString . $timestamp . $encKey); + return self::rsaWithSHA256Sign($signBody, self::$privateKey); + } + public static function rsaWithSHA256Sign($content, $privateKey) + { $key = openssl_get_privatekey($privateKey); - -// openssl_private_encrypt($content, $signature, $privateKey, OPENSSL_PKCS1_PADDING); + // openssl_private_encrypt($content, $signature, $privateKey, OPENSSL_PKCS1_PADDING); openssl_sign($content, $signature, $key, OPENSSL_ALGO_SHA256); openssl_free_key($key); return base64_encode($signature); } - public function verify($content, $sign, $publicKey){ - - $publicKey = "-----BEGIN PUBLIC KEY-----\n" . - wordwrap($publicKey, 64, "\n", true) . - "\n-----END PUBLIC KEY-----"; + public static function rsaWithSHA256Encypt($content, $publicKey) + { + $key = openssl_get_publickey($publicKey); + openssl_public_decrypt($content, $signature, $key, OPENSSL_PKCS1_PADDING); + openssl_free_key($key); + return base64_encode($signature); + } + public function verify($content, $sign, $publicKey) + { $key = openssl_get_publickey($publicKey); $ok = openssl_verify($content, base64_decode($sign), $key, 'SHA256'); openssl_free_key($key); return $ok; } + } \ No newline at end of file diff --git a/sha256/openssl_pri.key b/sha256/openssl_pri.key new file mode 100644 index 0000000..5603919 --- /dev/null +++ b/sha256/openssl_pri.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpQIBAAKCAQEAu4mzx0gHNoJVuWRyoUiUfEh08JAJTfR9CoYl/jc8bmYq1HfF +YcjyhXDnkr3/pUaPD+xB3dh7H5ct/Urk2b+C1KrFNDg8NG17gu8rNT+pHLVHPD4u +WYO5dhaVUGSMMZLM3r7mJo0kOzUwOxgEv+KWV+guMsgzm0AVeZ5kp4Rl8ypP893O +jvNvY4FZWxTACihf/0OEwYqKDnmaWK4JBrWmUjedKbjPlg5+0vxE8GRCwYto0Q6o +OmySmLAlTx1v8j3ZzEtATEHA4SbCPNwcDbwYiUKOMmdEZi8N0piI3E4YnqO+H3Bx +9C3tExWUQ9XZdjjoDzuJQhcRVegTNMAEbHqnXQIDAQABAoIBAQCF2W9lwUPcpMN4 +UXf7IulPlwtXkwYBDImeVEaTnWrVRLg28tD+zMRDd2TgeBkZJjX/YFlWdCbUUjtx +t92EiEphbQzZC3X02Vs5BWiqVahmo/+WwK6mFvzsiovBWDIzQ5pTNJ7hTwVX+MtW +sfrZ1WgGj+FBP2CN4vww1Fr0sOtu1D6kwABBHiYutuFLFSFS24lkJGs7YrrT0GE8 +TjWCrdcXCNzlFARE70cuttXM5ViITiP2204WsMruMS6zfHg2uikng/i7wt7uSLpq +6AwoKCqzkrmNxnrFje6z5tblUzAg3gmnEJHNjcdvD4okRY/F4lc0nRxSBIjaKS6R +5SL+lPuhAoGBAPQ5QYamaF/KcXNjarZvjC13mNepa/Vtt3pvudUyBIAZzEp3tvsm +OPp4tG+MdG7hV4B+20dpkqB81Q74yZ2APNmJWLSiOkIklLClNFg38z1qlK035Ldi +VIyMAQRTeL2NO9CnLt21ewrKFy4NhBOk4bUZ+1QkP/vEf7slPpLlg18ZAoGBAMSU +tNPK2C3w5ejKreIAVnV9DjpnJPo0O50+XP7D4IIttts95GvkRlkREWxuNBF4j+sS +9ABEORiYWCEyjg53fF5njkMjJ5RcD7g993I4cHToR9hGE1uylLpqNQ3NWXz04TZN +0p1S70zwQ/XJYuL27FO92Ib0KfwQwN2sN0YbHAblAoGBAOQCeJy/y/5ywQzbqot9 +BUCFwhrGwFY5Au26VaMnuW/npgV4U0uTWeruunbSiPnkRI9g4FSByjUvlrMNrx3u +1eC7DChItV9/S5rIAmDCi8OxN/Gol05m7UzygRiK3dUKgOfCzkyL3L4sAwwp7j9w +1pEAGtdpqJrjz+TnVs5KnSYxAoGBAMNZG1EUVDtjFrV9I8pgl4ptWYREF4Tj/xHF +dVhegm4ay4mXObTVxeqggXYFFYz/B9WMohjZsvtz+LAUswJBTr/pnH+vIZfW3HA0 +c/93gplKcorDKF2JWy7ceBhdJj58gokaUN+yGMeWQ5KuK6xrwHF/SPrjDA3HAEHI +76ylJ/bZAoGAHMf1LMe3bCcqvardMZz68hZBqA41IOFOVhbzeHeHreKDAwLwOIhZ +D8XS5RqJGLSwtHBLAJihKlSlbP2X2hcqnDmWUn4MunPdGJm105hByGskdOSMVUay +9E/vwhrZ2BrDTyxjQki/XlO88QPkFh3iZ7nxaN1Zkc6jkHKqy34v7HE= +-----END RSA PRIVATE KEY----- diff --git a/sha256/openssl_pub.key b/sha256/openssl_pub.key new file mode 100644 index 0000000..03b8260 --- /dev/null +++ b/sha256/openssl_pub.key @@ -0,0 +1,9 @@ +-----BEGIN PUBLIC KEY----- +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu4mzx0gHNoJVuWRyoUiU +fEh08JAJTfR9CoYl/jc8bmYq1HfFYcjyhXDnkr3/pUaPD+xB3dh7H5ct/Urk2b+C +1KrFNDg8NG17gu8rNT+pHLVHPD4uWYO5dhaVUGSMMZLM3r7mJo0kOzUwOxgEv+KW +V+guMsgzm0AVeZ5kp4Rl8ypP893OjvNvY4FZWxTACihf/0OEwYqKDnmaWK4JBrWm +UjedKbjPlg5+0vxE8GRCwYto0Q6oOmySmLAlTx1v8j3ZzEtATEHA4SbCPNwcDbwY +iUKOMmdEZi8N0piI3E4YnqO+H3Bx9C3tExWUQ9XZdjjoDzuJQhcRVegTNMAEbHqn +XQIDAQAB +-----END PUBLIC KEY----- diff --git a/sha256/pkcs12 b/sha256/pkcs12 new file mode 100644 index 0000000..e69de29 diff --git a/sha256/private-rsa.key b/sha256/private-rsa.key new file mode 100644 index 0000000..e3c697e --- /dev/null +++ b/sha256/private-rsa.key @@ -0,0 +1,30 @@ +-----BEGIN RSA PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: DES-EDE3-CBC,BF0326F2AE68617E + +ycxcKNiA9nLz3isWeEpICoUXclwtbQqQVTOjZgfP+qnqKfxolmSGG6SBAIMtYfed +AM7Ktcz/9ggBfWR6PiTUlg1b8sc/bCmJ26NE3VAAlSS0UU566ARdXAT6Mug+xoKc +kPoKY7PsNPHSWfLGJG5d7xlxyFo3R+cDAU6cyReX1S2wdGjyJhnP/Yw9x7Ut6AFa +QvyfeP99EuAPX2rG3bwk7J4TYhN3iEOFCGyM9vKlAUqQ82GRvEti5P+EsGsH7B2y +2+i+omBLj9XkwUdlR9R23pq6z/xRABCxZIMW4wyDJV8xwMK3/N3U5wOdwetTk+Zz +yNgXz4tvc5JWe5DkBvHD9ZJNmxR7QN0Xq6A635Mvwd0ssSBnL3EzmubmSL6WDwhi +n+wb9sZgQXZZSN+rdEy44C7RD6mxhqNmJNyEyyPqnMqI1H4fy75IoWk2ldib9in0 +u53PwxKAg6fogAjjtXIR8cuPKdGS1XtAvonY4o2kpf2ySudQwhYK+7rAv5bPiUDL +Xlna8sHP3l+5c0K/yg0mW2AiCYCpj++sXmS9xHT+0sTPHRw8jp2tCe8bH0iOZLZ6 +ZVOlfXBlDa3FbiluKRM7qy6Kki/Sz09Jc1rmS4tt7XXz3Xbu+edNdC7HducoXEVc +QL36k+KVwQWFWgwPbEEED12+J6KFKTckP7GgbQS05ZQCAHj+PduI+MRtu6n8kOrr +35rtSdTj20YPqC2mf1gnSNUT8c5Ewc4wuCkGDhsxKhcq2NSKrnquq+Ty6kq9aTal +imlRcREcygaYU072/Y3DhOawbqW2l8j9wCQfYut8gU3cpsspjClxP+7liGJodG+/ +jTRPziEjnCqqKo468nIuGb9O298g8Y+/Y5YZcUgapRcURc6r4j+dpneNqNoaMBt/ +s0qX8K2wZjTIe8NdJOPpJz4k9TAQ/PNb7tv7Ms8DvsuOSZTH0foxl2xyhyPNZOWo +FE5zKCG5ABZsrqExROmCbQ1WZQCFknFXF7gbbk4uXNXphHHXumm1K140er0gZ85n +DsiO7M6mCjDTWl05d/lLpGsocJp0u+jg9hbMHaOoM4lPC/vUDpFY/yGrRzrq5W9z +ogG/FmKp2RUMS1PCG2PikhMd+wIGACze0v0LbMA9dBbjkSv3EWa4tOKWwsxIr3/I +ZAIdu8bnYtBSO1mw/l9QxhKAvX8Ug8/df/0VqaefNaU+y9hlaXMheGFmri5MmreB +7zloIpoQp5BkwaJZZ81qic3QOFn0ST1VlT6EzeFDnJgIHAlcvzUjuqA2cCQPZsLP +m5sMv9CY5tSYR1hq0QvVdi+AO+egruiBv+k+TGQlIwCdHD+wlBRpo4aET9bK15KQ +KjmYebGbVlP1ef5RZGDGGUb3udBCbXkUDsWR+ijZFSfcjPdz42NN9qU/WRqRcW1b +xQspsloH8DFb+KzvFEKOdJQZdIWS6u6OlXbKGP8P25L7CkxbeZ6ezsywgARd66wB +VYYACR4ysx6o7alOhFUMs69e8c7kqCPz+fiDTG9rqG67dksS1RBXxWulhKaWDn19 +33CWXaXoVoGwSCKLjszv7FpdrWLqwPiI9n55QeqwhP2uP/857loLUUrJlORwiJYB +-----END RSA PRIVATE KEY----- diff --git a/sha256/pubAndPri.key b/sha256/pubAndPri.key new file mode 100644 index 0000000..de871d0 --- /dev/null +++ b/sha256/pubAndPri.key @@ -0,0 +1,32 @@ +Bag Attributes + friendlyName: Y + localKeyID: 8B 08 86 6E 88 FC CF C6 CB D2 F8 91 4F 88 D4 70 CB FB 77 BA +Key Attributes: +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC7ibPHSAc2glW5 +ZHKhSJR8SHTwkAlN9H0KhiX+NzxuZirUd8VhyPKFcOeSvf+lRo8P7EHd2Hsfly39 +SuTZv4LUqsU0ODw0bXuC7ys1P6kctUc8Pi5Zg7l2FpVQZIwxkszevuYmjSQ7NTA7 +GAS/4pZX6C4yyDObQBV5nmSnhGXzKk/z3c6O829jgVlbFMAKKF//Q4TBiooOeZpY +rgkGtaZSN50puM+WDn7S/ETwZELBi2jRDqg6bJKYsCVPHW/yPdnMS0BMQcDhJsI8 +3BwNvBiJQo4yZ0RmLw3SmIjcThieo74fcHH0Le0TFZRD1dl2OOgPO4lCFxFV6BM0 +wARseqddAgMBAAECggEBAIXZb2XBQ9ykw3hRd/si6U+XC1eTBgEMiZ5URpOdatVE +uDby0P7MxEN3ZOB4GRkmNf9gWVZ0JtRSO3G33YSISmFtDNkLdfTZWzkFaKpVqGaj +/5bArqYW/OyKi8FYMjNDmlM0nuFPBVf4y1ax+tnVaAaP4UE/YI3i/DDUWvSw627U +PqTAAEEeJi624UsVIVLbiWQkaztiutPQYTxONYKt1xcI3OUUBETvRy621czlWIhO +I/bbThawyu4xLrN8eDa6KSeD+LvC3u5IumroDCgoKrOSuY3GesWN7rPm1uVTMCDe +CacQkc2Nx28PiiRFj8XiVzSdHFIEiNopLpHlIv6U+6ECgYEA9DlBhqZoX8pxc2Nq +tm+MLXeY16lr9W23em+51TIEgBnMSne2+yY4+ni0b4x0buFXgH7bR2mSoHzVDvjJ +nYA82YlYtKI6QiSUsKU0WDfzPWqUrTfkt2JUjIwBBFN4vY070Kcu3bV7CsoXLg2E +E6ThtRn7VCQ/+8R/uyU+kuWDXxkCgYEAxJS008rYLfDl6Mqt4gBWdX0OOmck+jQ7 +nT5c/sPggi222z3ka+RGWRERbG40EXiP6xL0AEQ5GJhYITKODnd8XmeOQyMnlFwP +uD33cjhwdOhH2EYTW7KUumo1Dc1ZfPThNk3SnVLvTPBD9cli4vbsU73YhvQp/BDA +3aw3RhscBuUCgYEA5AJ4nL/L/nLBDNuqi30FQIXCGsbAVjkC7bpVoye5b+emBXhT +S5NZ6u66dtKI+eREj2DgVIHKNS+Wsw2vHe7V4LsMKEi1X39LmsgCYMKLw7E38aiX +TmbtTPKBGIrd1QqA58LOTIvcviwDDCnuP3DWkQAa12momuPP5OdWzkqdJjECgYEA +w1kbURRUO2MWtX0jymCXim1ZhEQXhOP/EcV1WF6CbhrLiZc5tNXF6qCBdgUVjP8H +1YyiGNmy+3P4sBSzAkFOv+mcf68hl9bccDRz/3eCmUpyisMoXYlbLtx4GF0mPnyC +iRpQ37IYx5ZDkq4rrGvAcX9I+uMMDccAQcjvrKUn9tkCgYAcx/Usx7dsJyq9qt0x +nPryFkGoDjUg4U5WFvN4d4et4oMDAvA4iFkPxdLlGokYtLC0cEsAmKEqVKVs/Zfa +FyqcOZZSfgy6c90YmbXTmEHIayR05IxVRrL0T+/CGtnYGsNPLGNCSL9eU7zxA+QW +HeJnufFo3VmRzqOQcqrLfi/scQ== +-----END PRIVATE KEY----- diff --git a/sha256/public-rsa.cer b/sha256/public-rsa.cer new file mode 100644 index 0000000..642cb90 --- /dev/null +++ b/sha256/public-rsa.cer @@ -0,0 +1,22 @@ +-----BEGIN CERTIFICATE----- +MIIDlzCCAn+gAwIBAgIUbeOvQXeD5BI4jOTpkUv+70RShvcwDQYJKoZIhvcNAQEL +BQAwWzELMAkGA1UEBhMCQ04xDzANBgNVBAgMBkZ1SmlhbjEPMA0GA1UEBwwGWGlh +TWVuMQ4wDAYDVQQKDAVGdXN1bzEMMAoGA1UECwwDY3d4MQwwCgYDVQQDDANjd3gw +HhcNMjMwNTIyMTQ0MjE4WhcNMzMwNTE5MTQ0MjE4WjBbMQswCQYDVQQGEwJDTjEP +MA0GA1UECAwGRnVKaWFuMQ8wDQYDVQQHDAZYaWFNZW4xDjAMBgNVBAoMBUZ1c3Vv +MQwwCgYDVQQLDANjd3gxDDAKBgNVBAMMA2N3eDCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBALuJs8dIBzaCVblkcqFIlHxIdPCQCU30fQqGJf43PG5mKtR3 +xWHI8oVw55K9/6VGjw/sQd3Yex+XLf1K5Nm/gtSqxTQ4PDRte4LvKzU/qRy1Rzw+ +LlmDuXYWlVBkjDGSzN6+5iaNJDs1MDsYBL/illfoLjLIM5tAFXmeZKeEZfMqT/Pd +zo7zb2OBWVsUwAooX/9DhMGKig55mliuCQa1plI3nSm4z5YOftL8RPBkQsGLaNEO +qDpskpiwJU8db/I92cxLQExBwOEmwjzcHA28GIlCjjJnRGYvDdKYiNxOGJ6jvh9w +cfQt7RMVlEPV2XY46A87iUIXEVXoEzTABGx6p10CAwEAAaNTMFEwHQYDVR0OBBYE +FF9zWOWuZ8LYknEJf5MfrFIP/HGqMB8GA1UdIwQYMBaAFF9zWOWuZ8LYknEJf5Mf +rFIP/HGqMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAEC4LnW7 +J69MLiUt2ypYjSmhyauJixINdG6r53JUaKw2d0Dd73PmYmU1lyTFJEOOFhK3w9hU +5cgExxcn1AZdb2vtzwETv7dgRJHbxVVhl6JsPvFw82b9ALGgFbq5d2Kyewa5eLBh +2IiThu19BBbvs0H6MjP7Kim1fx0z/aIK9F5b9zJxFw35t35Jz1cziXbpS2ha2HDS +0EKrqESbX37iZ8jzO4sMb5hPDZ+BuugFOmZbbPoHqqKZw1l9EWO4Lm36PezMTpwP +1dGRRjcxRWcZ9k4zbdmxzNGL+yxSjl4kvTDjr8ygQmTGBrH7f2z/5LaU48IeNZtl +eEM6UAUyVJDtLl4= +-----END CERTIFICATE----- diff --git a/sha256/user-rsa.pfx b/sha256/user-rsa.pfx new file mode 100644 index 0000000000000000000000000000000000000000..777eb7825ed47e11f6f0f9fea8b366c67eee3f88 GIT binary patch literal 2560 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