<?php
$payload='A message I want to sign';
$private_key = "-----BEGIN RSA PRIVATE KEY-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAIc1JYZ2XOSz0gGcts29VLvtkzwSO6Kj22i+6cubYBSxbC2nwHGWYDXm+0X+0+N8Sv4r7YRVzdnB3sBaWyKic5AgPen/f6PzqFpd7ww8g63gS495g6d6HfT8L2oYZmAuLijW+hKLZ6secqQsFA01XF1vyV/UgISzHzm1ZV3IPSO9AgMBAAECgYBdZshyd+e6EcK8XF8oB2e2nur8L3hE5T7XwDLP9ZjNErexXlYh4Yi7E8J3Ww9S8fT4Wq4sof2fNT9Ez+ZvKZv8a7CVu8lVxDFnEIa8JATmP2AHqAq/e8r/ZUmfRBS2p0CicLFaHsZWs1ysUeQ9TY4Ac6t/n634Ux4/KWwMA2N+3QJBANaKPrmZWcMTYFoRUcOft/ZmCZhQ/86EUlrDVBfWnZfteJ21Tqf/zk/Zu8ujLZ8hd+TSnJuuv075kP6OtWyfIQ8CQQChVigirrO9rJa1rmsbGnJYzdSAKEJE7Vg8ux3v7+xojm3pGV4IFCkiYRCZqYIz2ZHle5e/nZ5p5QOlv8m9dhZzAkBOg2lRIv3mlkC8tXnmzZzVX6JDS+FSArrg3Hr5/mDOKOnrTV7rvIIUVuqTK7SWd/kYlLsbfmgkztBxWGisx8+hAkBl+yHvmmK/WGMDgLbvMO5qt+DFCa2qCCUoblbkHdJf3PgYyhIoJSZDNvvZRc6pm7OfTVqEostJwJtnoC2TdxuFAkEAoSj+FR0L+ouD2j+TGOWbIcDqmycydtrUsTIJ4iBb8dlWdQ3GbAL/6GI4gRQ7sSoQxJNPvKwbW3yp7hDwXB7eqw==
-----END RSA PRIVATE KEY-----";
$public_key = "-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs/19wgIeQYdKrO29LLDk
lqmdpoWLPOUAgrkUkrALhPUrtTrXCUneAWZXV5ga5yWoDwpYoqneoca/AMdEVJBe
StTfbU5At+Sl+fUSC+0zYfVJiIEDpm6L0S4Kyh6akHJJNX16BF4m417OK6YbDWAY
CBKxc/U/UNIQGkv/FWv7/t04vcUxEQIYhiZ37bqD4SGrfT8XboAfHN+SJnl5YTOm
kzd//WtKXB8iDhWhMZvGCMsxg5o5SgOAZzCt73s5VmPjI5OTCqmdF+hVPQ/pjYzH
ECHKfceemupKOgW0MhTDVK8fvBIwm5VRr+AAvN7bd+IpZM1qhh1QRINwVagddTDu
UwIDAQAB
-----END PUBLIC KEY-----";
$binary_signature = "";
openssl_sign($payload, $binary_signature, $private_key, 'sha256WithRSAEncryption'); //print_r('bKCyr3fHJRqf3G1sdDQlkRyxZOClAh8k14ZOL9TBN1oI3nd8z4dqEFZK0IDoFTK3+sdznw6NfOsSN6VxHnq4WR5Y8Hesl5P1AFfPDo2B0PlK/5aC8Mrwcv4l2fgLDE3B4hu6ZGJNuYnx92RYWTa7oWtHHK8JJ5kAF3a8bbtOe1Q=');
?>
PD9waHAKJHBheWxvYWQ9J0EgbWVzc2FnZSBJIHdhbnQgdG8gc2lnbic7CiAgICAgICAKJHByaXZhdGVfa2V5ID0gIi0tLS0tQkVHSU4gUlNBIFBSSVZBVEUgS0VZLS0tLS0KTUlJQ2RnSUJBREFOQmdrcWhraUc5dzBCQVFFRkFBU0NBbUF3Z2dKY0FnRUFBb0dCQUljMUpZWjJYT1N6MGdHY3RzMjlWTHZ0a3p3U082S2oyMmkrNmN1YllCU3hiQzJud0hHV1lEWG0rMFgrMCtOOFN2NHI3WVJWemRuQjNzQmFXeUtpYzVBZ1Blbi9mNlB6cUZwZDd3dzhnNjNnUzQ5NWc2ZDZIZlQ4TDJvWVptQXVMaWpXK2hLTFo2c2VjcVFzRkEwMVhGMXZ5Vi9VZ0lTekh6bTFaVjNJUFNPOUFnTUJBQUVDZ1lCZFpzaHlkK2U2RWNLOFhGOG9CMmUybnVyOEwzaEU1VDdYd0RMUDlaak5FcmV4WGxZaDRZaTdFOEozV3c5UzhmVDRXcTRzb2YyZk5UOUV6K1p2S1p2OGE3Q1Z1OGxWeERGbkVJYThKQVRtUDJBSHFBcS9lOHIvWlVtZlJCUzJwMENpY0xGYUhzWldzMXlzVWVROVRZNEFjNnQvbjYzNFV4NC9LV3dNQTJOKzNRSkJBTmFLUHJtWldjTVRZRm9SVWNPZnQvWm1DWmhRLzg2RVVsckRWQmZXblpmdGVKMjFUcWYvemsvWnU4dWpMWjhoZCtUU25KdXV2MDc1a1A2T3RXeWZJUThDUVFDaFZpZ2lyck85ckphMXJtc2JHbkpZemRTQUtFSkU3Vmc4dXgzdjcreG9qbTNwR1Y0SUZDa2lZUkNacVlJejJaSGxlNWUvblo1cDVRT2x2OG05ZGhaekFrQk9nMmxSSXYzbWxrQzh0WG5telp6Vlg2SkRTK0ZTQXJyZzNIcjUvbURPS09uclRWN3J2SUlVVnVxVEs3U1dkL2tZbExzYmZtZ2t6dEJ4V0dpc3g4K2hBa0JsK3lIdm1tSy9XR01EZ0xidk1PNXF0K0RGQ2EycUNDVW9ibGJrSGRKZjNQZ1l5aElvSlNaRE52dlpSYzZwbTdPZlRWcUVvc3RKd0p0bm9DMlRkeHVGQWtFQW9TaitGUjBMK291RDJqK1RHT1diSWNEcW15Y3lkdHJVc1RJSjRpQmI4ZGxXZFEzR2JBTC82R0k0Z1JRN3NTb1F4Sk5Qdkt3YlczeXA3aER3WEI3ZXF3PT0KLS0tLS1FTkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0iOwogCiRwdWJsaWNfa2V5ID0gIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBcy8xOXdnSWVRWWRLck8yOUxMRGsKbHFtZHBvV0xQT1VBZ3JrVWtyQUxoUFVydFRyWENVbmVBV1pYVjVnYTV5V29Ed3BZb3FuZW9jYS9BTWRFVkpCZQpTdFRmYlU1QXQrU2wrZlVTQyswellmVkppSUVEcG02TDBTNEt5aDZha0hKSk5YMTZCRjRtNDE3T0s2WWJEV0FZCkNCS3hjL1UvVU5JUUdrdi9GV3Y3L3QwNHZjVXhFUUlZaGlaMzdicUQ0U0dyZlQ4WGJvQWZITitTSm5sNVlUT20Ka3pkLy9XdEtYQjhpRGhXaE1adkdDTXN4ZzVvNVNnT0FaekN0NzNzNVZtUGpJNU9UQ3FtZEYraFZQUS9wall6SApFQ0hLZmNlZW11cEtPZ1cwTWhURFZLOGZ2Qkl3bTVWUnIrQUF2TjdiZCtJcFpNMXFoaDFRUklOd1ZhZ2RkVER1ClV3SURBUUFCCi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLSI7CiAKIAogJGJpbmFyeV9zaWduYXR1cmUgPSAiIjsKIG9wZW5zc2xfc2lnbigkcGF5bG9hZCwgJGJpbmFyeV9zaWduYXR1cmUsICRwcml2YXRlX2tleSwgJ3NoYTI1NldpdGhSU0FFbmNyeXB0aW9uJyk7CiAkc2lnbmVkUGF5bG9hZCA9IGJhc2U2NF9lbmNvZGUoJGJpbmFyeV9zaWduYXR1cmUpOwpwcmludF9yKCgkc2lnbmVkUGF5bG9hZCkpOwpwcmludF9yKCdcbicpOwovL3ByaW50X3IoJ2JLQ3lyM2ZISlJxZjNHMXNkRFFsa1J5eFpPQ2xBaDhrMTRaT0w5VEJOMW9JM25kOHo0ZHFFRlpLMElEb0ZUSzMrc2R6bnc2TmZPc1NONlZ4SG5xNFdSNVk4SGVzbDVQMUFGZlBEbzJCMFBsSy81YUM4TXJ3Y3Y0bDJmZ0xERTNCNGh1NlpHSk51WW54OTJSWVdUYTdvV3RISEs4Sko1a0FGM2E4YmJ0T2UxUT0nKTsKPz4=