RSA - 使用PHP加密巫婆java / android和解密 [英] RSA - encryption witch java/android and decryption with PHP
本文介绍了RSA - 使用PHP加密巫婆java / android和解密的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有移动应用程序,用RSA加密字符串并将加密数据发送到PHP Web服务器。
搜索后我发现 phpseclib 用于解密RSA
最新版本2.0。
无论我做什么,尽管使用了模式但仍然出现错误
我做错了什么?
我尝试了什么:
用于解密的私钥:
----- BEGIN RSA私钥-----
MIIBOgIBAAJBAJyHUgC1ijhsETeuoNMh4c4yrFoL4juL / yDderMC9fBd1TFgEoJ5dxzMzdlzVVj7Vc / H / I + k13yY3W0MknS // k8CAwEAAQJAaaL1l57s8lkUYZTL2tFh9 + vA32BnxLIdc0ullAwqeJV21wXcEyDA67fbmBywdt + pVKkeO2NU7fD3e + DZREuJ0QIhAPZNo9jirkRl4i / Lv3jWt6SmeUBeyIKK0u4lZiBF9KAZAiEAorDjj2c9WBdP46S9hK7yj0U5 / 0QHB0pO01j9QSVBvqcCIQDrYre7hqdU5qmLVATgzxMiX5ZxViP53gJHZaZ8IV7vwQIgTTYEGafWjjsqGBC0PQdGaMZi + wnPCB + 0 / + 0rpjoRfClsCIBPzZw lappnVxXHuUoQQeN6uevqSvmgvC42UyA4HABa
----- END RSA私钥-----
加密消息(base64编码):
SMZiVTAMizngWa5Yg2Xp0F3Coy4cIsLB6mru2rLhxnvS2SC\ / rm9pgPVLdA\ / hp + 1TIbzHZqjc2lnP\\\
kvzh797WlA == \ n
PHP示例代码:
$ rsa = new RSA();
$ rsa-> setEncryptionMode(RSA :: ENCRYPTION_PKCS1);
$ rsa-> loadKey($ privateKey);
echo $ rsa-> decrypt($ strBase64);
结果:
注意:解密第2553行的C:\ xampp \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ b模式:
$ rsa-> setEncryptionMode(RSA :: ENCRYPTION_OAEP);
结果:
注意:第2432行C:\ xampp \htdocs \prim41ws \vendor \ phpseclib \ phpseclib \ phpseclib \Crypt \ RSA.php中的解密错误
模式:
$ rsa-> setEncryptionMode(RSA :: ENCRYPTION_NONE);
结果:
string(128)我?W B'q ;k ?} 1? ? = ?x ?* ?_ aq ) D?'?m {? ? n ? C: t E? ?R = S?y 3$QC EV.3C { .Y jx 6?? ???e ˱] I ? S / 'I |
解决方案
rsa = new RSA();
rsa-> setEncryptionMode(RSA :: ENCRYPTION_PKCS1);
rsa-> LOADKEY(
I have mobile application that encrypts strings with RSA and sends that encrypted data to PHP web server.
After a search I found that phpseclib is used to decrypt RSA
Latest version 2.0.
No matter what I do I receive despite error despite used mode
Am i doing something wrong?
What I have tried:
Private key for decryption:
-----BEGIN RSA PRIVATE KEY----- MIIBOgIBAAJBAJyHUgC1ijhsETeuoNMh4c4yrFoL4juL/yDderMC9fBd1TFgEoJ5dxzMzdlzVVj7Vc/H/I+k13yY3W0MknS//k8CAwEAAQJAaaL1l57s8lkUYZTL2tFh9+vA32BnxLIdc0ullAwqeJV21wXcEyDA67fbmBywdt+pVKkeO2NU7fD3e+DZREuJ0QIhAPZNo9jirkRl4i/Lv3jWt6SmeUBeyIKK0u4lZiBF9KAZAiEAorDjj2c9WBdP46S9hK7yj0U5/0QHB0pO01j9QSVBvqcCIQDrYre7hqdU5qmLVATgzxMiX5ZxViP53gJHZaZ8IV7vwQIgTTYEGafWjjsqGBC0PQdGaMZi+wnPCB+0/0rpjoRfClsCIBPzZw+lappnVxXHuUoQQeN6uevqSvmgvC42UyA4HABa -----END RSA PRIVATE KEY-----
Encrypted message (base64 encoded):
SMZiVTAMizngWa5Yg2Xp0F3Coy4cIsLB6mru2rLhxnvS2SC\/rm9pgPVLdA\/hp+1TIbzHZqjc2lnP\nkvzh797WlA==\n
PHP sample code:
$rsa = new RSA(); $rsa->setEncryptionMode(RSA::ENCRYPTION_PKCS1); $rsa->loadKey($privateKey); echo $rsa->decrypt($strBase64);
Result:
Notice: Decryption error in C:\xampp\htdocs\prim41ws\vendor\phpseclib\phpseclib\phpseclib\Crypt\RSA.php on line 2553
Mode:
$rsa->setEncryptionMode(RSA::ENCRYPTION_OAEP);
Result:
Notice: Decryption error in C:\xampp\htdocs\prim41ws\vendor\phpseclib\phpseclib\phpseclib\Crypt\RSA.php on line 2432
Mode:
$rsa->setEncryptionMode(RSA::ENCRYPTION_NONE);
Result:
string(128) "IW��B'q����;k�}�1����=�x��*��_��aq�)�D 'm{� ��n��C:��t �E��R=�Sy�3$QC�EV.3C�{�.Y�jx�6!e�˱]�I ���S�/�'I�|"解决方案rsa = new RSA();
rsa->setEncryptionMode(RSA::ENCRYPTION_PKCS1);
rsa->loadKey(
这篇关于RSA - 使用PHP加密巫婆java / android和解密的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文