Files
SuperVPN/output/Libraries/BouncyCastle.Crypto/Org/BouncyCastle/Pkix/PkixCertPathValidatorResult.cs
2025-10-09 09:57:24 +09:00

51 lines
1.4 KiB
C#

using System;
using System.Text;
using Org.BouncyCastle.Crypto;
namespace Org.BouncyCastle.Pkix;
public class PkixCertPathValidatorResult
{
private TrustAnchor trustAnchor;
private PkixPolicyNode policyTree;
private AsymmetricKeyParameter subjectPublicKey;
public PkixPolicyNode PolicyTree => policyTree;
public TrustAnchor TrustAnchor => trustAnchor;
public AsymmetricKeyParameter SubjectPublicKey => subjectPublicKey;
public PkixCertPathValidatorResult(TrustAnchor trustAnchor, PkixPolicyNode policyTree, AsymmetricKeyParameter subjectPublicKey)
{
if (subjectPublicKey == null)
{
throw new NullReferenceException("subjectPublicKey must be non-null");
}
if (trustAnchor == null)
{
throw new NullReferenceException("trustAnchor must be non-null");
}
this.trustAnchor = trustAnchor;
this.policyTree = policyTree;
this.subjectPublicKey = subjectPublicKey;
}
public object Clone()
{
return new PkixCertPathValidatorResult(TrustAnchor, PolicyTree, SubjectPublicKey);
}
public override string ToString()
{
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.Append("PKIXCertPathValidatorResult: [ \n");
stringBuilder.Append(" Trust Anchor: ").Append(TrustAnchor).Append('\n');
stringBuilder.Append(" Policy Tree: ").Append(PolicyTree).Append('\n');
stringBuilder.Append(" Subject Public Key: ").Append(SubjectPublicKey).Append("\n]");
return stringBuilder.ToString();
}
}