OpenSSL 암호화/복호화 테스트
"digest_alg" => "sha256"
"private_key_bits" => 2048
$res = openssl_pkey_new($config); - 키쌍 생성
openssl_pkey_export($res, $privKey); - 리소스에서 개인키 추출
$pubKey = openssl_pkey_get_details($res); - 리소스에서 공개키배열 추출
$pubKey = $pubKey["key"]; - 배열에서 공개키 추출
Public key:
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApF9D9Su4Wi7V+rVYNwTV
ktDaDa9Wnb9ne6OpcS230+/w79cT9vWL5kwGSeDnTzz+cdcbsSEEBNdoYWg5MC8P
WhNgZKJr+h0q91oONYUU/qc1Z8GRECSmZFINjdiM/Ao37M4sqKnWSJvcpiuncJ1B
gJ3k2ubkYqhUvQ3O34AIbgbWT4tP3njW8bQWGHFaf+kI36cFL8yOaVzY7+zw6aNJ
thlDuaAmHPd/6P/2MQk1uITIUSPed84UoKHK3smvTVwemgaV1mkTolQanCkdHzi7
DNWfgTJcEdz4N7whs4Jdv6hTCuf4BJadpXgFH7SJH3ljb1SpaYiTwccm1+N3sMwK
iwIDAQAB
-----END PUBLIC KEY-----
Private key:
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCkX0P1K7haLtX6
tVg3BNWS0NoNr1adv2d7o6lxLbfT7/Dv1xP29YvmTAZJ4OdPPP5x1xuxIQQE12hh
aDkwLw9aE2Bkomv6HSr3Wg41hRT+pzVnwZEQJKZkUg2N2Iz8CjfsziyoqdZIm9ym
K6dwnUGAneTa5uRiqFS9Dc7fgAhuBtZPi0/eeNbxtBYYcVp/6QjfpwUvzI5pXNjv
7PDpo0m2GUO5oCYc93/o//YxCTW4hMhRI953zhSgocreya9NXB6aBpXWaROiVBqc
KR0fOLsM1Z+BMlwR3Pg3vCGzgl2/qFMK5/gElp2leAUftIkfeWNvVKlpiJPBxybX
43ewzAqLAgMBAAECggEADATLO0oPGMkD7GkGIj/APhP3XbjMZIxyTKAS66ukHWMW
AvN/Cje6GwTEEPLY9vpGwJwx8imv2YrGnxi31cYbIUL5cWJO8uLfGWcEUvWAK36e
cQ++Q6fqYrt9Mjn7VRKKNE5/BXYlrPl4kM3wWFOnTng9G6R2XqBgUdKIpd7+vsyz
KpEgb1n/sxzzanXx8J3P4wSb99PCvmCXLIvcQdzEbgWhXrcLHj6SB18kwxi7l+ky
o4SefKcNqlNLKc8cGjlTQ9NqRo4ftv2P9A2YAnu3qIag9a1WAZMKWF9RPzeRuJ2U
5y8+5887rF62ikdLMvxshWATedPXzk8dyRqaCwOcgQKBgQDUc8y7FpS2xeN/BWc0
a+y4wsbcwlk/vZu4zT63Jq3PwAbIP3vggmuKbUxPxJcLx6BB+RcyLXN8v8oC0w68
OInpkfGmoiZd9Z3RGv46Ns6k+A08iuonQUjAaD9AxV7GmX+YMQrgwPvLcpkkmF2B
QUNoZUm1R9YFAvsydk3tcmINowKBgQDGEIKWdvyJde4oaib5tR7nXFCc3XAtpgU1
qEm/px/gz39/F2UitBloIXZQZpiyqvlUhBvzmESsUZ6llTmQtoH+erCaDOud5UWD
+BwjcB8uNxCIxMwR0/EtXv+R8YOzWKCHT5k9We2L6oQeBK1+/CXEPRUqTpvRupSa
nq27hQ6N+QKBgQDJXMhbOtfRNFafeduL0A8aP2KEsqAszeXejoo2xa5QDk1fVuxu
qq6LEXUW1dnkDF1UqmbV5EZlotIxQyHgPCZa/zzvFxkOTVI7cz4qpu/NZF4HWBL/
Cd2OoD/zgB6IVcydzz3kMIV3GzMTgGZ/r//X3sixzViIf37fIUpTF+rfyQKBgQCP
ER/y5bHW7RuBj+PlXYIcJp+IH5/HKXP75TqYOHUbY2a5+8EvBx6PDBS1UNadwEhn
VyIFnAiG3FIXUyoIsPxHQIJOVGThYdoL0G0q3/N144qK8HRjsE82sbczyVuTccJK
2yFaopmnBlg2grR71FDHZkPiknOVVAvBgDsIB72SqQKBgDRBHJgCKW5qfP4881/X
pbc/Lc3MW/3X5aD4+C+WgT9NlCiThq5gj+LFX4hhDJSMycQLJdNxUf/6ZwiJzOvi
c90hPQVQzXtQZLpYk60TqAg+aM9vlyZcGvuwGjLysXzQQCpqzwfqk5l0I52GHxiG
ch6jWrq7HblIbjsTqh/q4Y8s
-----END PRIVATE KEY-----
Plaintext:
plaintext data goes here
Ciphertext:
i4YNBcTh7NC3VfFm+8eZGn+yNNQLdmIFajq7l0rIfCBnOFW3UvuKSFCgsOy/EswMpbB2By2mwii/kEKUqAug1in5sytLq/ImXyAde5IuV5pRjp3n/5VIBrk5TYpT3lpc46yr+fO4vjk7ZDh9ujvn0Th8RAnHF/A96NuiY5f8jqVVsEt7RgIoFxQvEfziFMx4R+q5Yr/XEx90vlq+7ahUyK5rDfeCe4xRZQ0tMy0gJor5hn964e49J0CxRVg7l2Tm/1Jy5GFPvCD+Slx4ZPPD8N6VURMPceR54S7zpU4lSd1MZjuARWSAVkJmTAZsJGSnArljdxazb3XsNdx7WaWx7A==
Recoveredtext:
plaintext data goes here