Autor
|
Tema: Saber en un programa la fórmula matemática. (Leído 3,111 veces)
|
Meta
|
Hola: Quiero saber en un programa la fórmula matemática que tiene incluida como muestra esta imagen. La descarga es aquí. https://mega.co.nz/#!wU9HCSAZ!fnT5yQRkR-PUiDrkPNB7TAlHNecRa9p-2EUVChCPuM0Donde pone seedNumber que como ejemplo introduje 123456789000, pulsas el botón generar y te sale en Password e código generado que en este caso es 1110EDEF, en hexadecimal. ¿Es posible saber lo que quiero?Parece que le código está hecho con VB 6 o C++ 6 de MicroSoft por supuesto. Vamos haber si se puede hacer una igeniería inversa de este pequeño programa que aparenta ser sencillo. Cuando averigüe la fórmula, lo pasaré a C#, C++ y V Basic 2013. Saludo.
|
|
« Última modificación: 31 Enero 2014, 21:59 pm por Meta »
|
En línea
|
|
|
|
.:UND3R:.
|
|
|
« Última modificación: 30 Enero 2014, 16:18 pm por .:UND3R:. »
|
En línea
|
Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
|
|
|
Meta
|
Hola: Estuve buscando que te busca en San Google gracias a los enlaces mostrados y llegué a esto: Es un programa de dotnet. Puedes usar ILSpy para encontrar y extraer la rutina generadora. private string Calculo_Password(string seedNumber) { int num = Convert.ToInt32(seedNumber.Substring(0, 6), 16); int num2 = num + 284206435; int num3 = Convert.ToInt32(seedNumber.Substring(10, 2), 16); num3 &= 7; int num4 = num2 >> num3 | num2 << 32 - num3; return (num4 ^ num).ToString("X"); }
Los que quieran confirmarlo sabrán su estilo de como hacerlo. Gracias por la ayuda mi muy distinguido amigo.
|
|
|
En línea
|
|
|
|
tincopasan
Desconectado
Mensajes: 1.286
No es lo mismo conocer el camino que recorrerlo.
|
pues de entrada le has errado al compilador! y mientras escribía el mensaje publicaron otro. en efecto la rutina es: int num = Convert.ToInt32(seedNumber.Substring(0, 6), 0x10); int num2 = num + 0x10f0a563; int num3 = Convert.ToInt32(seedNumber.Substring(10, 2), 0x10) & 7; int num4 = (num2 >> num3) | (num2 << (0x20 - num3)); num4 ^= num; return num4.ToString("X"); que es la misma que la ya publicada, claro que la salida es en hexa como esta y no en decimal como está expresada la anterior
|
|
|
En línea
|
|
|
|
Meta
|
Ok, eso me estaba fijando en el código, todo en hexadecimal. Otra cosa que no me sale, ya casi tengo olvidado la programación, ajjajaja. Tengo que reponerme. He hecho un formulario nuevo en C# pero no se hacer que me funcione bien. Código completo. Le introduje dos textBox y un Button que sus nombres son: button_Generar
textBox_seedNumber
textBox_Passwordusing System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace ZynPass { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button_Generar_Click(object sender, EventArgs e) { //void Calculo_Password(); } private string Calculo_Password(string seedNumber) { int num = Convert.ToInt32(seedNumber.Substring(0, 6), 0x10); int num2 = num + 0x10f0a563; int num3 = Convert.ToInt32(seedNumber.Substring(10, 2), 0x10) & 7; int num4 = (num2 >> num3) | (num2 << (0x20 - num3)); num4 ^= num; return num4.ToString("X"); } } }
|
|
|
En línea
|
|
|
|
Meta
|
Holas: Ya funciona. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace ZynPass { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button_Generar_Click(object sender, EventArgs e) { try { textBox_Password.Text = Calculo_Password(textBox_seedNumber.Text); } catch (Exception ex) { MessageBox.Show("Debe ingresar un número de 12 cifras hexadeximales [0-9, A-F, a-f]", "E R R O R", MessageBoxButtons.OK, MessageBoxIcon.Hand); } } private string Calculo_Password(string seedNumber) { int num = Convert.ToInt32(seedNumber.Substring(0, 6), 0x10); int num2 = num + 0x10f0a563; int num3 = Convert.ToInt32(seedNumber.Substring(10, 2), 0x10) & 7; int num4 = (num2 >> num3) | (num2 << (0x20 - num3)); num4 ^= num; return num4.ToString("X"); } } }
Gracias por la ayuda.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
programa de la formula general
Programación Visual Basic
|
leahcim
|
2
|
17,453
|
5 Octubre 2005, 18:02 pm
por _Sergi_
|
|
|
Hay alguna forma de saber con que programa se creo ese programa?
Dudas Generales
|
Senior++
|
2
|
3,380
|
31 Julio 2011, 15:16 pm
por Senior++
|
|
|
Me ayudan con una formula Matematica?
Foro Libre
|
Megan
|
3
|
2,250
|
9 Enero 2012, 04:26 am
por theluigy13etv
|
|
|
AYUDA PROGRAMA FORMULA SIMPSON 1/2
Programación C/C++
|
RUNJAVCOS
|
0
|
2,427
|
28 Septiembre 2013, 07:07 am
por RUNJAVCOS
|
|
|
Saber la nota de examen tipo test aplicando la siguiente formula
Foro Libre
|
El_Andaluz
|
7
|
4,977
|
10 Abril 2016, 22:13 pm
por ivancea96
|
|