В .NET v4 (и более поздних версиях) Microsoft предоставляет новую сборку System.Numerics.dll
, которая включает тип BigInteger
. Однако он не предоставляет никакого метода для проверки простых чисел.
Mono (начиная с версии 1.0) также предоставляет тип [BigInteger][3]
, расположенный в его сборке Mono.Security.dll
. Вы можете использовать как есть или перенести методы простой проверки (существует несколько методов) на новый тип Microsoft BigInteger
.
Все ли они используют общую встроенную библиотеку, которая является общедоступной и к ней можно получить доступ из-за пределов своих классов
Да, и RSACryptoServiceProvider
, и DSACryptoServiceProvider
обращаются в CryptoAPI, чтобы сделать это. Однако CAPI не предоставляет свой собственный код BigInteger (даже для собственного кода), поэтому он вам не поможет.