使用我自己的密钥文件进行RSP加密

时间:2012-10-21 22:02:55

标签: php encryption rsa

好的,所以我对密码学非常陌生

我想使用RSA加密字符串。我找到了很多例子,但大多数都生成了自己的公钥/私钥,或者他们使用了其他一些关键格式,比如pem / crt等。

我有自己的.key

格式的公钥和私钥文件
Public key -> http://pastebin.com/hPT9LRCT 
Private key-> http://pastebin.com/UYgJp8K7

如何在php中使用我的公钥加密字符串(“hello world”)?

你能告诉我一个例子或指出我正确的方向吗?

感谢, Vidhu

1 个答案:

答案 0 :(得分:1)

试试这个(使用phpseclib, a pure PHP RSA implementation):

<?php
include('Crypt/RSA.php');

$rsa = new Crypt_RSA();
$rsa->loadKey('MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArd+uKDi7g6cpmbotPre9KpFK4U1rM/FlEtHszIrMBmArLID4/uImes2L6K5sbKHbo3sIVdzFgrtB/ZdHTN11bM26OLpovCMs/HF3tqz93RMobdNv63IyOau4YgKZa+U2sW+1fGT1HtBesqGjlVlLZNJVR9ZETj4fuLKjNzOgegdbYFV9jIyP6JDi/9c6oyFRUI1anSWZcDFL+74Y4h4okAcbDgooczxBf3QlIJQdFVs9GOPCoIwmZ29c4VmBvESlRnjtXho/6sNQXlnLsG4v4GCzL7P1YOOf9FqV8XZuXJrEsTVJjDdYJdia6F3G/GRe+lRhReM42qlHqLKZpzjSFwIDAQAB'); // public key

$plaintext = 'hello world';

$rsa->setEncryptionMode(CRYPT_RSA_ENCRYPTION_PKCS1);
$ciphertext = $rsa->encrypt($plaintext);