/// <summary> /// Reads the key container from an input stream /// </summary> /// /// <param name="KeyStream">An input stream containing an encoded key container</param> public AsymmetricContainer(MemoryStream KeyStream) { BinaryReader reader = new BinaryReader(KeyStream); byte[] data; int len; m_idTag = null; m_publicKey = null; m_publicKey = null; // tag len = reader.ReadInt32(); if (len > 0) { m_idTag = reader.ReadBytes(len); } // family m_asmEngine = (AsymmetricEngines)reader.ReadByte(); // parameters len = reader.ReadInt32(); data = reader.ReadBytes(len); m_asmParameters = ParamsFromBytes(data); // public key len = reader.ReadInt32(); if (len > 0) { data = reader.ReadBytes(len); m_publicKey = PublicKeyFromBytes(data); } // private key len = reader.ReadInt32(); if (len > 0) { data = reader.ReadBytes(len); m_privateKey = PrivateKeyFromBytes(data); } }
/// <summary> /// Reads the key container from an input stream /// </summary> /// /// <param name="KeyStream">An input stream containing an encoded key container</param> public AsymmetricContainer(MemoryStream KeyStream) { BinaryReader reader = new BinaryReader(KeyStream); byte[] data; int len; _idTag = null; _publicKey = null; _publicKey = null; // tag len = reader.ReadInt32(); if (len > 0) _idTag = reader.ReadBytes(len); // family _asmEngine = (AsymmetricEngines)reader.ReadByte(); // parameters len = reader.ReadInt32(); data = reader.ReadBytes(len); _asmParameters = ParamsFromBytes(data); // public key len = reader.ReadInt32(); if (len > 0) { data = reader.ReadBytes(len); _publicKey = PublicKeyFromBytes(data); } // private key len = reader.ReadInt32(); if (len > 0) { data = reader.ReadBytes(len); _privateKey = PrivateKeyFromBytes(data); } }