Пример #1
0
        internal static IEngineProvider <IMac> CreateMacProvider(string name, IAuthenticationParametersWithIV <IParameters <Algorithm>, Algorithm> parameters, IEngineProvider <Org.BouncyCastle.Crypto.Internal.IBlockCipher> baseCipher)
        {
            switch (parameters.Algorithm.Mode)
            {
            case AlgorithmMode.CCM:
                return(new CcmMacProvider(baseCipher, parameters));

            case AlgorithmMode.GMAC:
                return(new GMacProvider(baseCipher, parameters));

            default:
                throw new ArgumentException("Unknown MAC algorithm passed to " + name + ".Provider: " + parameters.Algorithm.Mode);
            }
        }
Пример #2
0
 internal CcmMacProvider(IEngineProvider <Internal.IBlockCipher> baseProvider, IAuthenticationParametersWithIV <IParameters <Algorithm>, Algorithm> parameters)
 {
     this.baseProvider = baseProvider;
     this.parameters   = parameters;
 }