public void CertificateAuthority_Critical() { BasicConstraintsExtension bce = new BasicConstraintsExtension(); bce.Critical = true; bce.CertificateAuthority = true; bce.PathLenConstraint = 0; Assert.AreEqual("30-12-06-03-55-1D-13-01-01-FF-04-08-30-06-01-01-FF-02-01-00", BitConverter.ToString(bce.GetBytes()), "GetBytes"); BasicConstraintsExtension bce2 = new BasicConstraintsExtension(bce.ASN1); Assert.IsTrue(bce2.Critical, "Critical"); Assert.IsTrue(bce2.CertificateAuthority, "CertificateAuthority"); Assert.AreEqual(0, bce2.PathLenConstraint, "PathLenConstraint"); }
public void CertificateAuthority_NoPathLengthConstraint() { BasicConstraintsExtension bce = new BasicConstraintsExtension(); bce.CertificateAuthority = true; bce.PathLenConstraint = BasicConstraintsExtension.NoPathLengthConstraint; Assert.AreEqual("30-0C-06-03-55-1D-13-04-05-30-03-01-01-FF", BitConverter.ToString(bce.GetBytes()), "GetBytes"); BasicConstraintsExtension bce2 = new BasicConstraintsExtension(bce.ASN1); Assert.IsFalse(bce2.Critical, "Critical"); Assert.IsTrue(bce2.CertificateAuthority, "CertificateAuthority"); Assert.AreEqual(BasicConstraintsExtension.NoPathLengthConstraint, bce2.PathLenConstraint, "PathLenConstraint"); }
public void NotCertificateAuthority() { BasicConstraintsExtension bce = new BasicConstraintsExtension(); bce.CertificateAuthority = false; // CertificateAuthority isn't encoded (default value is false) bce.PathLenConstraint = Int32.MaxValue; // PathLenConstraint is ignored (per RFC3280) Assert.AreEqual("30-09-06-03-55-1D-13-04-02-30-00", BitConverter.ToString(bce.GetBytes()), "GetBytes"); BasicConstraintsExtension bce2 = new BasicConstraintsExtension(bce.ASN1); Assert.IsFalse(bce2.Critical, "Critical"); Assert.IsFalse(bce2.CertificateAuthority, "CertificateAuthority"); Assert.AreEqual(BasicConstraintsExtension.NoPathLengthConstraint, bce2.PathLenConstraint, "PathLenConstraint"); }