public virtual void DecodeX509BasicConstraints2Extension( byte[] encoded, out bool certificateAuthority, out bool hasPathLengthConstraint, out int pathLengthConstraint) { BasicConstraintsAsn constraints = BasicConstraintsAsn.Decode(encoded, AsnEncodingRules.BER); certificateAuthority = constraints.CA; hasPathLengthConstraint = constraints.PathLengthConstraint.HasValue; pathLengthConstraint = constraints.PathLengthConstraint.GetValueOrDefault(); }
public virtual byte[] EncodeX509BasicConstraints2Extension( bool certificateAuthority, bool hasPathLengthConstraint, int pathLengthConstraint) { BasicConstraintsAsn constraints = default; constraints.CA = certificateAuthority; if (hasPathLengthConstraint) { constraints.PathLengthConstraint = pathLengthConstraint; } AsnWriter writer = new AsnWriter(AsnEncodingRules.DER); constraints.Encode(writer); return(writer.Encode()); }
public virtual byte[] EncodeX509BasicConstraints2Extension( bool certificateAuthority, bool hasPathLengthConstraint, int pathLengthConstraint) { BasicConstraintsAsn constraints = new BasicConstraintsAsn(); constraints.CA = certificateAuthority; if (hasPathLengthConstraint) { constraints.PathLengthConstraint = pathLengthConstraint; } using (AsnWriter writer = AsnSerializer.Serialize(constraints, AsnEncodingRules.DER)) { return(writer.Encode()); } }