Pracuję nad wdrożeniem algorytmu klucza . Ale nie mogłem użyć wartości 2048 bitów. Jak mogę go użyć?Jak mogę używać biginta z C#?
Chcę użyć dużej liczby całkowitej.
Pracuję nad wdrożeniem algorytmu klucza . Ale nie mogłem użyć wartości 2048 bitów. Jak mogę go użyć?Jak mogę używać biginta z C#?
Chcę użyć dużej liczby całkowitej.
Można użyć System.Numerics.BigInteger
(dodać odniesienie do zestawu System.Numerics). Jak wspomniano w komentarzach, może to nie być właściwe podejście.
Rzeczywiście, BigInteger jest drogą do zrobienia. Niewielka uwaga: jest dostępna tylko w .NET 4.0 i nowszych. –
Natywna obsługa dużych liczb całkowitych została wprowadzona w .NET 4.0. Wystarczy dodać odwołanie do zestawu do System.Numerics
, dodać deklarację using System.Numerics;
u góry pliku kodu i dobrze jest przejść. Typ, którego szukasz, to BigInteger
.
BigInteger
jest dostępny w .NET 4.0 lub nowszym. There are some third-party implementations as well (W przypadku, gdy używasz wcześniejszej wersji frameworka).
Lepsze wykorzystanie System.Numerics.BigInteger
.
Tutaj używa się BigInteger
. Ta metoda drukuje numery w sekwencji Fibonacciego do 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); }
}
Zwykle algorytmy klucza RSA pracują na 8 bitach naraz. Twój klucz zostanie umieszczony w tablicy bajtów z 8 indeksami. – Trisped
nie duplikuj. nie chcę używać długich lub int64. nie wystarczają one dla mnie –