几句Java翻译成C#代码

ruansheng8 2016-12-22 01:51:15
Java的BigInteger 类库和C#有点不一样,不知道要如何使用,有谁知道下面的代码要如何用C#写出来吗?

//下面这些是Java的代码
String hex = "37623432623933353435663935386463"
String modulus = "00e0b509f6259df8642dbc35662901477df22677ec152b5ff68ace615bb7b725152b3ab17a876aea8a5aa76d2e417629ec4ee341f56135fccf695280104e0312ecbda92557c93870114af6c9d05c4f7f0c3685b7a46bee255932575cce10b424d813cfe4875d3e82047b97ddef52741d546b8e289dc6935b3ece0462db0a22b8e7";
String pubKey = "010001";

BigInteger bigInteger1 = new BigInteger(hex, 16);
BigInteger bigInteger2 = new BigInteger(pubKey, 16);
BigInteger bigInteger3 = new BigInteger(modulus, 16);
// RSA加密计算
BigInteger bigInteger4 = bigInteger1.pow(bigInteger2.intValue()).remainder(bigInteger3);
String encSecKey = Hex.encodeHexStr(bigInteger4.toByteArray());
...全文
146 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruansheng8 2016-12-22
  • 打赏
  • 举报
回复
引用 1 楼 shingoscar 的回复:
构造函数->Parse pow->ModPow remainder->Remainder 基本就一样
bigInteger2.intValue() 这个方法不知道用C#怎么写。
ruansheng8 2016-12-22
  • 打赏
  • 举报
回复
引用 1 楼 shingoscar 的回复:
构造函数->Parse pow->ModPow remainder->Remainder 基本就一样
我用Parse试过了,但是计算的结果不一样,查Java的文档,问题应该是出在那个基数上。

//下面是文档里面的介绍
//将指定基数的 BigInteger 的字符串表示形式转换为 BigInteger。
BigInteger(String val, int radix) 
Poopaye 2016-12-22
  • 打赏
  • 举报
回复
构造函数->Parse pow->ModPow remainder->Remainder 基本就一样

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧