在很多资料中,在C#中实现RSA算法时都不会考虑密钥的格式问题。但跨平台的时候就会出现问题了。C#中需要完整的参数格式(公钥为M、E。私钥为M、E、D、Q、P、DP、DQ、IQ)。但在其他平台下,公钥仅为M,私钥为D,公共参数为E,仅此而已。所以,在C#签名和解密的时候遇到了问题。C#中的私钥需要太多参数。而其他平台给的参数又很有限。问题来了:1、C#中能否存在使用参数少的RSA算法类?2、假如没有,C#怎么样与其他平台进行RSA的加密、解密、签名、验签动作?
解决方案
15
可以参考下贴的讨论,包含有完整的代码:
http://bbs.csdn.net/topics/390447249?page=1#post-394404121
(c# RSA中有了私钥对d和n怎么解密啊)
http://bbs.csdn.net/topics/390447249?page=1#post-394404121
(c# RSA中有了私钥对d和n怎么解密啊)
10
15
这里有RSA实现的原理 http://blog.csdn.net/zhuankeshumo/article/details/17151859 那几个元素在什么语言里面都是有的