示例#1
0
 public static void Verify(this IdentityEntry subject)
 {
     subject.VerifyNotNull(nameof(subject));
     subject.DirectoryId.VerifyDocumentId();
     subject.Subject.VerifyNotEmpty(nameof(subject.Subject));
     subject.ClassType.VerifyNotEmpty(nameof(subject.ClassType));
     subject.PublicKey.VerifyNotNull(nameof(subject.PublicKey));
     subject.Properties.VerifyNotNull(nameof(subject.Properties));
 }
示例#2
0
    public static RSAParameters GetRsaParameters(this IdentityEntry identityEntry)
    {
        identityEntry.VerifyNotNull(nameof(identityEntry));
        identityEntry.PublicKey.VerifyNotNull(nameof(identityEntry.PublicKey));

        RSA rsa = RSA.Create();

        rsa.ImportRSAPublicKey(identityEntry.PublicKey, out int publicReadSize);

        if (identityEntry.PrivateKey != null)
        {
            rsa.ImportRSAPrivateKey(identityEntry.PrivateKey, out int privateReadSize);
        }

        return(rsa.ExportParameters(identityEntry.PrivateKey != null));
    }