PKMacValueVerifier
                    class PKMacValueVerifier
                
                using Org.BouncyCastle.Asn1.Cmp;
using Org.BouncyCastle.Asn1.Crmf;
using Org.BouncyCastle.Asn1.X509;
using Org.BouncyCastle.X509;
namespace Org.BouncyCastle.Crmf
{
    internal class PKMacValueVerifier
    {
        private readonly PKMacBuilder m_builder;
        internal PKMacValueVerifier(PKMacBuilder builder)
        {
            m_builder = builder;
        }
        internal virtual bool IsValid(PKMacValue value, char[] password, SubjectPublicKeyInfo keyInfo)
        {
            m_builder.SetParameters(PbmParameter.GetInstance(value.AlgID.Parameters));
            return X509Utilities.VerifyMac(m_builder.Build(password), keyInfo, value.MacValue);
        }
    }
}