Esempio n. 1
0
        private void FromDescriptionTest()
        {
            MacDescription mds  = new MacDescription(64, Digests.SHA256);
            MacDescription mds2 = new MacDescription(mds.ToBytes());
            MacDescription mds3 = new MacDescription(mds2.ToStream());

            if (!mds.Equals(mds2) || !mds.Equals(mds3))
            {
                throw new Exception("MacStreamTest: Description serialization has failed!");
            }
            mds  = new MacDescription(32, BlockCiphers.Rijndael, IVSizes.V128, BlockSizes.B128, RoundCounts.R14);
            mds2 = new MacDescription(mds.ToBytes());
            mds3 = new MacDescription(mds2.ToStream());
            if (!mds.Equals(mds2) || !mds.Equals(mds3))
            {
                throw new Exception("MacStreamTest: Description serialization has failed!");
            }
            mds  = new MacDescription(32, Digests.Blake2S256);
            mds2 = new MacDescription(mds.ToBytes());
            mds3 = new MacDescription(mds2.ToStream());
            if (!mds.Equals(mds2) || !mds.Equals(mds3))
            {
                throw new Exception("MacStreamTest: Description serialization has failed!");
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Convert the MacKey structure to a MemoryStream
        /// </summary>
        ///
        /// <returns>The MemoryStream containing the MacKey</returns>
        public MemoryStream ToStream()
        {
            MemoryStream stream = new MemoryStream();
            BinaryWriter writer = new BinaryWriter(stream);

            writer.Write(Description.ToBytes());
            writer.Write(KeyId);
            stream.Seek(0, SeekOrigin.Begin);

            return(stream);
        }
Esempio n. 3
0
 /// <summary>
 /// Set the MacDescription structure
 /// </summary>
 ///
 /// <param name="KeyStream">The stream containing a key package</param>
 /// <param name="Description">The MacDescription structure</param>
 public static void SetCipherDescription(Stream KeyStream, MacDescription Description)
 {
     KeyStream.Seek(MACDSC_SEEK, SeekOrigin.Begin);
     new BinaryWriter(KeyStream).Write(Description.ToBytes());
 }