public static string Operar(string llave1, string llave2
     , EnumOperacionLlave operacionLlave)
 {
     switch (operacionLlave)
     {
         case EnumOperacionLlave.Concatenacion:
             return Concatenacion(llave1, llave2);
         case EnumOperacionLlave.XOR:
             return XOR(llave1, llave2);
         default:
             throw new Exception("Error: Operacion - Operar");
     }
 }
        public CriptografiaCampo(Mensaje mensaje, CRIPTOGRAFIA_CAMPO criptografiaCampo)
        {
            this.llave1 = Llave.ValorLlave(mensaje, criptografiaCampo.CRC_LLAVE_1
                , criptografiaCampo.CAMPO_LLAVE_1, criptografiaCampo.CRC_TIPO_LLAVE_1);

            this.segundaLlave = criptografiaCampo.CRC_SEGUNDA_LLAVE;

            if (segundaLlave)
            {
                this.llave2 = Llave.ValorLlave(mensaje, criptografiaCampo.CRC_LLAVE_2
                    , criptografiaCampo.CAMPO_LLAVE_2, criptografiaCampo.CRC_TIPO_LLAVE_2.Value);
                this.operacionLlave = (EnumOperacionLlave)Enum.ToObject(typeof(EnumOperacionLlave), criptografiaCampo.CRC_OPERACION_LLAVE);
            }
            this.algoritmo = (EnumAlgoritmo)Enum.ToObject(typeof(EnumAlgoritmo), criptografiaCampo.CRC_ALGORITMO);
        }