Ignore:
Timestamp:
Sep 1, 2010, 9:13:18 PM (11 years ago)
Author:
Sven Rech
Message:

fixed rsa keygen bug

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/RSA/RSAKeyGenerator.cs

    r1818 r1890  
    2626using System.Security.Cryptography.X509Certificates;
    2727using System.Numerics;
     28using System.Diagnostics;
    2829
    2930namespace Cryptool.Plugins.RSA
     
    5859        #endregion
    5960       
    60         #region envents
     61        #region events
    6162
    6263        public event Cryptool.PluginBase.StatusChangedEventHandler OnPluginStatusChanged;
     
    250251                        RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
    251252                        RSAParameters rsaParameters = rsa.ExportParameters(true);
    252                         p = new BigInteger(rsaParameters.P);
    253                         q = new BigInteger(rsaParameters.Q);
    254                         n = new BigInteger(rsaParameters.Modulus);
    255                         e = new BigInteger(rsaParameters.Exponent);
    256                         d = new BigInteger(rsaParameters.D);
     253                        p = BigIntegerHelper.FromPositiveReversedByteArray(rsaParameters.P);
     254                        q = BigIntegerHelper.FromPositiveReversedByteArray(rsaParameters.Q);
     255                        n = BigIntegerHelper.FromPositiveReversedByteArray(rsaParameters.Modulus);
     256                        Debug.Assert(BigIntegerHelper.IsProbablePrime(p));
     257                        Debug.Assert(BigIntegerHelper.IsProbablePrime(q));
     258                        Debug.Assert((p * q) == n);
     259                        e = BigIntegerHelper.FromPositiveReversedByteArray(rsaParameters.Exponent);
     260                        d = BigIntegerHelper.FromPositiveReversedByteArray(rsaParameters.D);
     261                        Debug.Assert((e * d) % ((p - 1) * (q - 1)) == 1);
    257262                    }
    258263                    catch (Exception ex)
Note: See TracChangeset for help on using the changeset viewer.