谁可以给我说说有关xml加密的知识,网上找到的一个对XML加密代码,现在加入我的代码中,为什么我的代码运行时提示【privKeys.Load(Application.StartupPath + "\\xml.dev.keys.private");】找不到,这句是什么意思呀?特别是\\xml.dev.key.private能否跟我详细说一说。还有就是使用对称加密和非对称加密相结合的方法来加密xml,我在网上找到很久没有这方面便加让我理解的知识和代码!先谢谢各位了 public partial class frmConn : Form
    {
        //RSACryptoServiceProvider rsa;        public frmConn()
        {
            InitializeComponent();
        }        private void frmConn_Load(object sender, EventArgs e)
        {
            // 创建一个用于解密密钥的非对称密钥
            RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
            // 加载私有密钥
            XmlDocument privKeys = new XmlDocument();
            privKeys.Load(Application.StartupPath + "\\xml.dev.keys.private");
            // 使用私有密钥来解密密钥
            rsa.FromXmlString(privKeys.OuterXml);            XmlDocument xmlEncDoc = new XmlDocument();
            xmlEncDoc.Load("connString.xml");            EncryptedXml encXml = new EncryptedXml(xmlEncDoc);
            encXml.AddKeyNameMapping("asyncKey", rsa);            encXml.DecryptDocument();
            xmlEncDoc.Save("connString.xml");            //读取连接接字符串的值
            DAL.ConnConfig dbConn = new DAL.ConnConfig();
            txtPosName.Text = dbConn.GetPosName();
            txtServerAdd.Text = dbConn.GetdBAdd();
            txtDBName.Text = dbConn.GetdBName();
            txtUID.Text = dbConn.GetdBUID();
            txtPWS.Text = dbConn.GetdBPWS();
        }        private void btnOK_Click(object sender, EventArgs e)
        {
            //保存连接接字符串的值
            DAL.ConnConfig dbConn = new DAL.ConnConfig();
            dbConn.SavePosName(txtPosName.Text.Trim());
            dbConn.SavedBAdd(txtServerAdd.Text.Trim());
            dbConn.SavedBName(txtDBName.Text.Trim());
            dbConn.SavedBUID(txtUID.Text.Trim());
            dbConn.SavedBPWS(txtPWS.Text.Trim());
            MessageBox.Show("保存成功!");             //保存后进行文件加密操作
            ////check there is Xml to encrypt
            //if (string.IsNullOrEmpty("connString.xml") == false)
            //{
            //    try
            //    {
            RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
            // 加载一个公开密钥
            XmlDocument pubKeys = new XmlDocument();
            pubKeys.Load(Application.StartupPath + "\\xml.dev.keys.public");
            // 使用公开密钥加密密钥
            rsa.FromXmlString(pubKeys.OuterXml);                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load("connString.xml");                    rsa = new RSACryptoServiceProvider();                    XmlElement xmlElemt;
                    xmlElemt = xmlDoc.DocumentElement;                     EncryptedXml xmlEnc = new EncryptedXml(xmlDoc);                    xmlEnc.AddKeyNameMapping("asyncKey", rsa);                    EncryptedData encXml = xmlEnc.Encrypt(xmlElemt, "asyncKey");                    EncryptedXml.ReplaceElement(xmlElemt, encXml, false);                    xmlDoc.Save("connString.xml");            //    }
            //    catch (XmlException ex)
            //    {
            //        //likely the xml is not well formed
            //        throw ex;
            //    }
            //}            this.Close();
        }