Exemple #1
0
        /*
         * Método privado para almacenar la clave pública
         * */
        private void AlmacenarClavePublica(XmlDocument xmlDoc)
        {
            string path      = Constants.PathClavePublica(this.MessageRecieve.Source);
            string publicKey = xmlDoc.DocumentElement.GetElementsByTagName("key")[0].InnerText;

            File.WriteAllText(path, publicKey);
            this._publicKeyClient = Cripto.ImportPublicKey(path);
        }
Exemple #2
0
 //Constructor para mensajes (no conexion)
 public PostBox(string source, string destination, string tipoMensaje, string db_name,
                string db_type, XmlNode body, SymmetricAlgorithm symmetricKey, Cripto keyPair)
 {
     this._process         = new Process();
     this._messageRequest  = new Message(source, destination, tipoMensaje, db_name, db_type, body);
     this._messageResponse = new Message();
     this._symmetricKey    = symmetricKey;
     this._keyPair         = keyPair;
     this._publicKeyClient = Cripto.ImportPublicKey(Constants.PathClavePublica(destination));
 }
Exemple #3
0
        /*
         * Método privado para encriptar el elemento <source>
         * */
        private XmlDocument EncriptarSourceAsimetrico(XmlDocument doc)
        {
            this._publicKeyClient = Cripto.ImportPublicKey(Constants.PathClavePublica(doc.DocumentElement.GetElementsByTagName("destination")[0].InnerText));

            string xmlAEncriptar = doc.DocumentElement.GetElementsByTagName("source")[0].InnerXml;

            string xmlEncriptado = Cripto.Encryption(xmlAEncriptar, this._publicKeyClient);

            doc.DocumentElement.GetElementsByTagName("source")[0].InnerXml = xmlEncriptado;

            return(doc);
        }