Exemplo n.º 1
0
        internal static CT_Encryption Parse(XmlNode node, XmlNamespaceManager nameSpaceManager)
        {
            if (node == null)
            {
                return(null);
            }
            CT_Encryption encryption = new CT_Encryption();

            foreach (XmlNode childNode in node.ChildNodes)
            {
                if (childNode.LocalName == "keyData")
                {
                    encryption.keyData = CT_KeyData.Parse(childNode, nameSpaceManager);
                }
                else if (childNode.LocalName == "dataIntegrity")
                {
                    encryption.dataIntegrity = CT_DataIntegrity.Parse(childNode, nameSpaceManager);
                }
                else if (childNode.LocalName == "keyEncryptors")
                {
                    encryption.keyEncryptorsField = CT_KeyEncryptors.Parse(childNode, nameSpaceManager);
                }
            }
            return(encryption);
        }
Exemplo n.º 2
0
        internal static CT_KeyData Parse(XmlNode node, XmlNamespaceManager nameSpaceManager)
        {
            if (node == null)
            {
                return(null);
            }
            CT_KeyData ctObj = new CT_KeyData();

            ctObj.saltSize        = XmlHelper.ReadUInt(node.Attributes["saltSize"]);
            ctObj.blockSize       = XmlHelper.ReadUInt(node.Attributes["blockSize"]);
            ctObj.keyBits         = XmlHelper.ReadUInt(node.Attributes["keyBits"]);
            ctObj.hashSize        = XmlHelper.ReadUInt(node.Attributes["hashSize"]);
            ctObj.cipherAlgorithm = XmlHelper.ReadEnum <ST_CipherAlgorithm>(node.Attributes["cipherAlgorithm"]);
            ctObj.cipherChaining  = XmlHelper.ReadEnum <ST_CipherChaining>(node.Attributes["cipherChaining"]);
            ctObj.hashAlgorithm   = XmlHelper.ReadEnum <ST_HashAlgorithm>(node.Attributes["hashAlgorithm"]);

            if (node.Attributes["saltValue"] != null)
            {
                ctObj.saltValue = Convert.FromBase64String(node.Attributes["saltValue"].Value);
            }

            return(ctObj);
        }