Skip to content

Instantly share code, notes, and snippets.

Created April 2, 2013 00:10
Show Gist options
  • Save anonymous/5288886 to your computer and use it in GitHub Desktop.
Save anonymous/5288886 to your computer and use it in GitHub Desktop.
<?php
$pem_data = <<<EOB
-----BEGIN CERTIFICATE-----
MIICMTCCAZoCCQCQRHqPZAa6pjANBgkqhkiG9w0BAQUFADBdMQswCQYDVQQGEwJV
UzELMAkGA1UECAwCQ0ExDDAKBgNVBAoMA1BIUDEQMA4GA1UEAwwHcGhwLm5ldDEh
MB8GCSqGSIb3DQEJARYScmFzbXVzQGxlcmRvcmYuY29tMB4XDTEzMDQwMTIzNTk1
N1oXDTE0MDQwMTIzNTk1N1owXTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQww
CgYDVQQKDANQSFAxEDAOBgNVBAMMB3BocC5uZXQxITAfBgkqhkiG9w0BCQEWEnJh
c211c0BsZXJkb3JmLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwi3z
49uyTDtG/SvP0iEQElxRK8CvIMWfLNW+1z0X7VFLI7pE3XnBFjfhnALHshbyoSf9
QgprM0w1mEUDUKz6LHRhuKdXWK598Y8nyul6Os124lLqTa0hHj3J6KY0JvFoKJUD
iXtiYzZA0d57h+B8hxetA4IdExNgXlRzW+D2pZkCAwEAATANBgkqhkiG9w0BAQUF
AAOBgQDCGeqri0cYGtHXB4Fyr/K40hux1tMCMBpkP2diiGfUNXFke0j+yOECpDxJ
+JVjGOxey8Gr3Dv9YvRcslghSs+JSrj5NvinQFwTe+axoEv54SenyRiVoAHipNF6
Ep+hZeNS3off9hlqpP8Rv2GVINfpCFi5Q3FbmPW/FH5vlzOjxA==
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,5FCFE0ADFEDC2E77
Zh3AsUVq2PuWtdrg/TkjjkKTFW7Ol5PWB1/sxbiwbl+nIjhjnKpKqCKmzfYi+3yu
Lmvqfi0YeYJ9oukAtocbfT0FylBPijBmp2Whl7xrOZijIwwXyPdYedLSCgQYL6jC
QdHvoTu293J8FTyF8b7CYullHbBVLDjbR+iz1I5PB+/9vEQ4XNcb510jpuOfv3yg
QoyY1rps+rI4KvIS6AfpsYz/Jq4KBX4FWIt6orgz5GScMpS7McXU4VVpBlSRL/+Z
dvABymWNtSuqGbqL5HyrQJI2meZxnLJB8CSuI4+O1jkq0h/J6mc/oUVCL0GGsZfD
+j6fwoYB7V64bkxfxj9KjCbvFpKIjZDSqtaVPzYkPG8Xq+qbsFzAuRyn2chHjuqG
AV2wgJLFxdS1BRN1NV7BT3Z0584CRppFOZ00KKOhID24ky/0xeRmrEkaysoQVWZx
0LXAjGvqjsfnc+szjExuRyaQ7T/UvpiVLo5nM9sE/S8IpKkyf0xUimncg+v7s2BT
7aAZh79IQjLgGn5OD3AZnlBeGzUO0GgeCicpRLXm2XbuEbvgn0fd4avEBT/EoEGq
Kc86cL5yKbe0quTp0HpvJzR2b9KQTZrdsw/og4wN1cPn10knPI6SSViAq+KSwOqI
+K8OMCOEUlckI+iRN62z1CaFzBV/lHJMkjEryHpBsFPKvvOeETTbP4ozWa5IE/OX
D9makdAzUHs1iTzacxhliPKvHTHFQDVU58O0gukHqPEAb4LSAuV7vk3DsuKSzSpp
rylxTjqNhzqCuOsh3lgLuzU4OKHeHDePQcHCJlm5Qu1NTWsEbfGBNg==
-----END RSA PRIVATE KEY-----
EOB;
file_put_contents("/tmp/test.pem", $pem_data);
$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', "/tmp/test.pem");
stream_context_set_option($streamContext, 'ssl', 'passphrase', "testpass");
$conn = stream_socket_client(
'ssl://bugs.php.net:443',
$error,
$errorString,
60,
STREAM_CLIENT_CONNECT,
$streamContext
);
if ($conn == false) {
echo "$error: $errorString\n";
}
unlink("/tmp/test.pem");
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment