string exponent1 = "010001";
string modulus1 = "b316e0613bb3dd9d42f99f6591912fea92cb6e574c579232c50f259470a363691978d4f88c3959cf9b4d9e97ef9d43c2ad486437507624fc81e025082c9cd275d40fe1b318720099ec791ebae4faa52875dd4c8ae9dc2c17449138206f2110a70a26ba309e5c5e080003ccc2984dfbe9baf355fd0787fd882068c3273f5671e9";
用C#语言实现 标准加密,即每次加密结果都一样;
不要用RSACryptoServiceProvider这个类,这个类产生的加密结果每次都不一样,好像跟java的后台解密会对不上;
明文:zfmm789456123
密文:请各位大侠帮忙实现一下,谢谢!
------解决思路----------------------
每次结果不一样是因为算法有padding,正是因为不一样才能保证RSA公钥加密的安全。想和 java 那边一致就先要知道 java 那边使用的 rsa 配置是什么,C# 这边 RSACryptoServiceProvider的Encrypt 使用 false 参数相当于 RSA/ECB/PKCS1Padding