<RSAKeyValue>
<Modulus>
uOUJIx+lijlJhcPkGPJv3lrtqRMe/FUBe6ulQ9bWyMbyy/sKCXdyfJC81FdPipG23U/4auvzsMIuquU+q11y8tVtzkkgd7G+bz42Cu8JyNe0YlVBDs6+CYKFMVLJAGCbV4i2DoCNx+CBTtZQw7b0csrQAO7AE9U65KBEYMrIrks=
</Modulus>
<Exponent>AQAB</Exponent>
以上是公钥******************************以下是私钥*********************************
<P>8K2OsOwvxiOiwOYltGkplkxz1sOVBPLB/GGmR97wVig63dZVu0qQdo6P4B2pFr0smaKostXDrBpUpR6yoAtpqQ==
</P>
<Q>xKpaBkU9ehxlwvF4OMwCZi/sb8uK/926S+Gu7JOFDyI0BYvlK9DMARjTwgSIzKO0jIttMYZv8JPonFxKJqrY0w==
</Q>
<DP>g69SjXcNRKom2MiUBLwtZvD5yJ5GoOh6Py7mnhhbA6kLXGlziwBnPpcOHZ/c7nYfOwiGqSLQ5w+ZFKdRMMRN0Q==</DP><DQ>RwCt4eerq2OHRduCKRdWomgY97/H3lrCANVpHxafingxyfLY+Xm3vYmmIj0a2q8b50YLVT8ROQ1dhN45Ez7Jaw==
</DQ>
<InverseQ>L4Is5lo9CXHslC6giZr6eof8n/tbU+lEsUxsSdsVX4H4qrap0w1UD0sOZZv/hY0n6IqbsnRuznhOAMq5R64MIw==
</InverseQ>
<D>EIstzh6+ySdnFLj6Z+EJcXPhYAd99kYE4/PvzaojfcOPZgEIXOB7Nfoda0KEs3lmS1ckeyyxmVdGpbPtb5fk+P5N90Sfhuewz7BNUqOfSomy8TwvX5Zh0wkra26rf7QNAUQJxB0ux72SAiGhKRstURLSCh3b4ewtaaxpiLF0lIE=
</D>
</RSAKeyValue>

解决方案 »

  1.   

    不好意思再请教一下, 我的这里只有私钥,用来解相对应的公钥加密过的密文这样的话,RSA.KEY应该怎么放置私钥
      

  2.   

    如果只有私钥不可能进行解密,因为用FromXmlString传入密钥时,如果没有公钥,会报错。
      

  3.   

    看看下面的连接可能对你有帮助!http://www.eggheadcafe.com/articles/20020630.asp
      

  4.   

    在<P></P><D></D>等等区域,这些中间能不能放一样的私钥, 因为对方只能给出一付公钥和一付私钥!不像.net中的RSA一生成就自动生成这么多的私钥!
      

  5.   

    xixi公主能解释一下RSAKeyValue中的
    Modulus,Exponent,p,Q,InverseQ等的代表的意思吗?真的感谢这几天对我的关心,呵呵,再帮一下忙,在msdn中找不到上述几项的解释
      

  6.   

    这些字段是用来计算的。RSA算法 :首先, 找出三个数, p, q, r, 
    其中 p, q 是两个相异的质数, r 是与 (p-1)(q-1) 互质的数...... 
    p, q, r 这三个数便是 private key 
     
    接著, 找出 m, 使得 rm == 1 mod (p-1)(q-1)..... 
    这个 m 一定存在, 因为 r 与 (p-1)(q-1) 互质, 用辗转相除法就可以得到了..... 
    再来, 计算 n = pq....... 
    m, n 这两个数便是 public key 
     
    编码过程是, 若资料为 a, 将其看成是一个大整数, 假设 a < n.... 
    如果 a >= n 的话, 就将 a 表成 s 进位 (s <= n, 通常取 s = 2^t), 
    则每一位数均小於 n, 然後分段编码...... 
    接下来, 计算 b == a^m mod n, (0 <= b < n), 
    b 就是编码後的资料...... 
     
    解码的过程是, 计算 c == b^r mod pq (0 <= c < pq), 
    於是乎, 解码完毕......这段话中:m就是Exponent,n是Modulus,p是P,q是Q,r是D,而InverseQ * p == 1 mod q
      

  7.   

    私钥是一串base64的字符串,那应该怎么放在key文件中呢?放在哪个区域?听了xixi公主这么一说,真的有点头大了!
      

  8.   

    StreamWriter sw = new StreamWriter("RSA.key");
    sw.Write(rsac.ToXmlString(true));
    sw.Close();如果要存储私钥,那么公钥也必须存储