Ejemplo n.º 1
0
        /// <summary>
        /// Inserta un nuevo registro Certificado
        /// </summary>
        /// <param name="id_emisor">Id de Emisor al que pertenece</param>
        /// <param name="id_sucursal">Id de sucursal del emisor</param>
        /// <param name="tipo_certificado"></param>
        /// <param name="contrasena"></param>
        /// <param name="contrasena_revocacion"></param>
        /// <param name="id_usuario"></param>
        /// <returns></returns>
        public static RetornoOperacion InsertaCertificado(int id_emisor, int id_sucursal, TipoCertificado tipo_certificado,
                                                          string contrasena, string contrasena_revocacion, int id_usuario)
        {
            //Declaramos llaves de encriptación aleatorias
            string key_contrasena            = Cadena.CadenaAleatoria(10),
                   key_contrasena_revocacion = Cadena.CadenaAleatoria(10);

            //Encriptando contraseñas
            string contrasenaEnc    = Convert.ToBase64String(Encriptacion.EncriptaCadenaAES(contrasena, key_contrasena));
            string contrasenaEncRev = Convert.ToBase64String(Encriptacion.EncriptaCadenaAES(contrasena_revocacion, key_contrasena_revocacion));

            //Inicializando parametros
            object[] param = { 1,                       0, id_emisor,        id_sucursal, (byte)tipo_certificado,    (byte)Estatus.Vigente, contrasenaEnc,
                               "",         key_contrasena, contrasenaEncRev, "",          key_contrasena_revocacion,
                               id_usuario, true,           "",               "" };

            //Ejecutando el SP
            return(CapaDatos.m_capaDeDatos.EjecutaProcAlmacenadoObjeto(nombre_procedimiento, param));
        }