using System; namespace Org.BouncyCastle.Crypto.Parameters { public class AeadParameters : ICipherParameters { private readonly byte[] associatedText; private readonly byte[] nonce; private readonly KeyParameter key; private readonly int macSize; /** * Base constructor. * * @param key key to be used by underlying cipher * @param macSize macSize in bits * @param nonce nonce to be used * @param associatedText associated text, if any */ public AeadParameters( KeyParameter key, int macSize, byte[] nonce, byte[] associatedText) { this.key = key; this.nonce = nonce; this.macSize = macSize; this.associatedText = associatedText; } public virtual KeyParameter Key { get { return key; } } public virtual int MacSize { get { return macSize; } } public virtual byte[] GetAssociatedText() { return associatedText; } public virtual byte[] GetNonce() { return nonce; } } }