我努力实现RSA密钥算法。但我无法使用2048位的值。我怎么用呢?
我想使用大整数。
答案 0 :(得分:26)
您可以使用System.Numerics.BigInteger
(添加对System.Numerics程序集的引用)。正如评论中所提到的,这可能不是正确的方法。
答案 1 :(得分:8)
.NET 4.0中引入了对大整数的本机支持。只需向System.Numerics
添加一个程序集引用,在代码文件的顶部添加一个using System.Numerics;
声明,就可以了。您所追求的类型是BigInteger
。
答案 2 :(得分:6)
这是使用BigInteger
。此方法将Fibonacci序列中的数字打印到n
。
public static void FibonacciSequence(int n)
{
/** BigInteger easily holds the first 1000 numbers in the Fibonacci Sequence. **/
List<BigInteger> fibonacci = new List<BigInteger>();
fibonacci.Add(0);
fibonacci.Add(1);
BigInteger i = 2;
while(i < n)
{
int first = (int)i - 2;
int second = (int) i - 1;
BigInteger firstNumber = fibonacci[first];
BigInteger secondNumber = fibonacci[second];
BigInteger sum = firstNumber + secondNumber;
fibonacci.Add(sum);
i++;
}
foreach (BigInteger f in fibonacci) { Console.WriteLine(f); }
}
答案 3 :(得分:3)
BigInteger
在.NET 4.0或更高版本中可用。 There are some third-party implementations as well(如果您使用的是早期版本的框架)。
答案 4 :(得分:1)
更好地使用System.Numerics.BigInteger
。