示例#1
0
        private static string PasoCinco(string llave, string digitos, int[] sumaDigitos, long suma_total, long[] sumas)
        {
            long total = 0;

            for (int i = 0; i < sumas.Length; i++)
            {
                total += suma_total * sumas[i] / sumaDigitos[i];
            }

            string mensaje = Base64.Convert(total, 64);
            string codigo  = AllegedRC4.Apply(mensaje, llave + digitos).Insert(2, "-").Insert(5, "-").Insert(8, "-");

            if (codigo.Length > 11)
            {
                codigo = codigo.Insert(11, "-");
            }
            return(codigo);
        }
示例#2
0
        private static string PasoTres(string autorizacion, string numero, string nitci, string fecha, string monto, string llave, string digitos)
        {
            string arc4 = AllegedRC4.Apply(autorizacion + numero + nitci + fecha + monto, llave + digitos);

            return(arc4);
        }