El Blog De Flamer
anun1
viernes, 29 de agosto de 2025
Generador De Claves Del Crackme $Edu$
jueves, 28 de agosto de 2025
Manejar Numeros Grandes en JavaScript Con BigInt
Hola amigos hoy veremos como manejar numeros grandes en javascript para eso usaremos la funcion BigInt() esta funcion es para manejar numeros grandes ya sea decimales, binarios o hexadecimales, segun buscando en internet esta funcion no tiene un limite fijo depende de tu memoria de tu equipo y es nueva fue lanzada en 2020 yo en lo personal no la conosia hasta que un amigo en el foro tenia un problema y recurri a chatgpt para que me creara una funcion para convertir numeros binarios grandes a decimales aqui les dejo la funcion que me arrojo chatgpt
function binarioGiganteADecimal(binario) {
let decimal = 0n; // Usamos BigInt (termina en n) para soportar números enormes
for (let bit of binario) { // Recorremos cada carácter ('0' o '1') de la cadena
decimal = (decimal << 1n) + BigInt(bit);
// (decimal << 1n) = decimal * 2
// Sumamos el bit actual convertido a BigInt
}
return decimal; // Devuelve el número decimal (BigInt)
bueno aqui mi codigo que le deje ami amigo ya modificado para que estubiera mas comodo de usar
- <html>
- <head>
- <body>
- <center>
- Numero Binario:<textarea id="bin" cols="200"></textarea><br>
- <input type="button" value="Convertir" onclick="conver()"><br><br>
- Numero Decimal:<textarea id="num" cols="200"></textarea>
- </center>
- <script>
- function binarioGiganteADecimal(binario) { //funcion binarioGiganteADecimal
- let decimal = 0n; //declara la variable decimal y es inicializada
- for (let bit of binario) { // recorre cada digito con el for
- decimal = (decimal << 1n) + BigInt(bit); // Desplazamiento binario
- }
- return decimal; //retorna el valor decimal obtenido
- }
- function conver() //funcion cover
- {
- let binario = document.getElementById("bin").value; //inicializa la variable binario dependiendo el valor dado en el campo detexto bin
- let decimal = binarioGiganteADecimal(binario);// manda llamar la funcion binarioGiganteADecimal y le envia el valor binario
- document.getElementById("num").value=decimal.toString(); // muestra el resultado en el campo de texto num
- }
- </script>
- </body>
- </html>
bueno ese es el codigo, otra cosa yo pensaba crear una funcion para convertir el binario a hexadecimal creando una funcion y si se preguntan como pues si tenemos un numero binario como este por ejemplo
1011001010110111
mi metodo era devidirlo en partes de 4 digitos asi
1011 0010 1011 0111
y convertir cada parte en su valor hexadecimal asi
1011 0010 1011 0111
B 2 B 7
y tenemos esto que el numero
1011001010110111 es igual a B2B7 esa es una forma de convertir binario a hexadecimal...asi que le pedi a chatgpt que me creara una funcion para convertir binario a hexadecimal en javascript y esto me arrojo
function binarioGrandeAHexadecimal(binario) {
// Validar que solo tenga 0 y 1
if (!/^[01]+$/.test(binario)) { //if que pregunta que solo debe contener 0 y 1
throw new Error("El número debe ser binario (solo 0 y 1).");
}
// Convertir de binario (string) a BigInt
let numero = BigInt('0b' + binario);
// Pasar a hexadecimal
return numero.toString(16).toUpperCase();
}
bueno ahora usaremos mi codigo con el metodo que les mostre arriba
<html>
<head>
<body>
<center>
Numero Binario:<br>
<input type="numer" id="bin" style="width:600;text-align:center;"><br><br>
<input type="button" value="Convertir" onclick="conver()"><br><br>
Numero Hexadecimal:<br>
<input type="text" id="num" style="width:600;text-align:center;">
</center>
<script>
function binarioGigante(binario)
{
let x=binario.length-4,digi="",cadena=""; //declaramos las variables
while(x>0) //ciclo while
{
digi=binario.substr(x,4); //extrae los ultimos 4 digitos de la variable binario
digi=parseInt(digi,2); //conbierte el valor de digi a decimal para despues a hexadecimal
cadena=digi.toString(16)+cadena; //aqui convierte el valor de la variable digi a Hexadecimal y lo concatena con la variable cadena
binario=binario.substr(0,x); //desecha los digitos obtenidos
x-=4;//x sele resta menos 4
}
x=binario.length; //x toma la longitud de binario que halla quedado
digi=binario.substr(0,x); //extrae los ultimos
digi=parseInt(digi,2);//conbierte el valor de digi a decimal para despues a hexadecimal
cadena=digi.toString(16)+cadena;//aqui convierte el valor de la variable digi a Hexadecimal y lo concatena con la variable cadena
return cadena; //retorna el valor en de la variable cadena
}
function conver()
{
let binario = document.getElementById("bin").value; //inicializa la variable cadena
if(!/^[01]+$/.test(binario)) //pregunta si la variable binario solo contiene 0 y 1
{
alert("Introduce solo números binarios (0 o 1)."); // esta alerta salta si hay un valor que no sea 0 o 1
}
else
{
let hexa = binarioGigante(binario); //manda llamar la funcion binarioGigante y le envia el binario para despues retornar a la variable hexa el resultado
document.getElementById("num").value=hexa.toUpperCase();// muestra el valor hexadecimal en el campo de texto en mayusculas
}
}
</script>
</body>
</html>
aqui una foto del programa en ejecucion
domingo, 24 de agosto de 2025
Generador De Claves Del Reto #3 de Rogerfm.Net
Hola amigos hoy les dejo el codigo del generador de claves del reto numero #3 de la pagina Rogerfm en javascript y html...se los dejo para que lo analicen y vean como el reto genera la clave aqui una foto del reto
<html>
<head>
<title>Generador De Claves Del Crackme #3 De Rogerfm.Net ...:::By Flamer:::...</title>
</head>
<body>
<center>
<h1>Crackme #3 de Rogerfm.Net</h1>
Nombre:    <input type="text" id="nick" size='50' style="text-align:center;"><input type="button" value="Copy" onclick="copiar1()"><br><br>
Serial:        <input type="text" id="pass" size='50' style="text-align:center;"><input type="button" value="Copy" onclick="copiar2()"><br><br>
<input type="button" id="102" value="Generar" onclick="genera()">
<input type="button" id="104" value="Limpiar" onclick="limpia()">
</center>
<script>
function copiar1()
{
let c=document.getElementById('nick');
c.select();
document.execCommand('copy');
}
function copiar2()
{
let c=document.getElementById('pass');
c.select();
document.execCommand('copy');
}
function limpia()
{
document.getElementById("nick").value="";
document.getElementById("pass").value="";
}
function genera()
{
let nom=document.getElementById("nick").value;
let x=0,digi="",edx=0,clave=0,r=17;
if(nom.length>=4)
{
for(x=0;x<nom.length;x++)
{
digi=nom.substr(x,1);
edx=digi.charCodeAt()+2159;
clave+=(edx * r);
r++;
}
document.getElementById("pass").value=clave.toString();
}
else
{
alert("El nombre debe ser mayor o igual a 4 digitos");
}
}
</script>
</body>
</html>
bueno solo lo copean lo pegan en el bloc de notas y lo aguardan con cualquier nombre pero con la extencion .html
aqui una foto de la clave Flamer
ahora la ponemos en el reto y veamos lo que nos arrojamartes, 19 de agosto de 2025
Limpiar La carpeta De Archivos Temporales desde VBScript
Hola amigos hoy veremos un simple codigo en Vbscript para limpiar la carpeta de archivos temporales
bueno primero pasamos a declarar las variables a usar pero primero como forzar a declararlas todas la variables y como omitir todos los errores
option explicit 'para forzar a que se declaren todas las variables
on error resume next ' para que omita todos los errores por si alguna carpeta o archivo no se puede eliminar que lo omita
dim tempo,fso,car,ar 'aqui estan las variables a usar
bueno ahora creamos el objecto FileSystemObject y tambien mandamos obtener la ruta de la carpeta temporal
set fso=CreateObject("Scripting.FileSystemObject") 'crea el objecto FileSystemObject
set tempo=fso.GetSpecialFolder(2) 'obtiene la ruta de los archivos temporales
ahora crearemos los dos ciclos para borrar los archivos y carpetas
for Each car in tempo.SubFolders ' for que obtiene todas las subcarpetas
fso.DeleteFolder car.path,True 'borra carpeta por carpeta obtenida
next ' fin del ciclo
for Each ar in tempo.Files 'obtiene archivo por archivo
fso.DeleteFile ar.path,true 'borra cada archivo obtenido
next 'fin del ciclo
por ultimo mostramos un mensaje al usuario con el comando msgbox
msgbox "Limpiesa Completa" 'muestra un mensaje de que la limpiesa a sido completa
aqui el codigo completo
option explicit
on error resume next
dim tempo,fso,car,ar
set fso=CreateObject("Scripting.FileSystemObject")
set tempo=fso.GetSpecialFolder(2)
for Each car in tempo.SubFolders
fso.DeleteFolder car.path,True
next
for Each ar in tempo.Files
fso.DeleteFile ar.path,true
next
msgbox "Limpiesa Completa"
bueno espero les guste y les sirva a alguien saludos Flamer
Nota si quieren probar el codigo solo copean y pegan en el bloc de notas y aguardan con el nombre que quieran pero con la extencion .vbs
lunes, 11 de agosto de 2025
Generador De Claves Del Reto 3 De Bocvk
Hola amigos hoy les traigo un reto que me paso mi amigo karmany por pedido mio le dije que me pasara algunos retos de los viejos pero solo me paso 3 en fin creo que en vez de enfocarme en los retos viejos deberia pasarme a los nuevos pero me gusta recordar viejos tiempos en fin aqui una foto del reto
Como dice hay que ingresar un nombre y un serial mayor a 6 digitos si no nos manda ese error asi que me di a la tarea de crearle un generador de claves, use la fuerza bruta por que se me hizo complicado reversearlo y como verifica digito por digito y como son de 0 a 255 en el codigo ascii dije no tardara mucho en encontrar la clave solo tardara unos segundos bueno sin tanto rollo aqui una foto del generador de claves
asi que aqui les dejo el codigo completo en javascript y html para que lo analizen
<html>
<head>
<title>Generador De Claves Crackme #3 de Bocvk ...:::By Flamer:::...</title>
</head>
<body>
<center>
<h1>Crackme #3 de Bocvk</h1>
Nombre:    <input type="text" id="nick" size='50' style="text-align:center;"><input type="button" value="Copy" onclick="copiar1()"><br><br>
Serial:        <input type="text" id="pass" size='50' style="text-align:center;"><input type="button" value="Copy" onclick="copiar2()"><br><br>
<input type="button" id="102" value="Generar" onclick="genera()">
<input type="button" id="104" value="Limpiar" onclick="limpia()">
</center>
<script>
function copiar1()
{
let c=document.getElementById('nick');
c.select();
document.execCommand('copy');
}
function copiar2()
{
let c=document.getElementById('pass');
c.select();
document.execCommand('copy');
}
function limpia()
{
document.getElementById("nick").value="";
document.getElementById("pass").value="";
}
function genera()
{
let nom=document.getElementById("nick").value;
let y=0;x=0,digi="",edx=0,clave="",clave2="",d="";
if(nom.length>=6)
{
for(x=0;x<nom.length;x++)
{
digi=nom.substr(x,1);
edx=digi.charCodeAt()+2;
edx=edx ^ 6;
edx-=1;
clave+=String.fromCharCode(edx);
}
for(x=0;x<clave.length;x++)
{
digi=clave.substr(x,1);
for(y=0;y<255;y++)
{
edx=y+3;
edx=edx ^ 9;
edx-=5;
d=String.fromCharCode(edx);
if(d==digi)
{
clave2+=String.fromCharCode(y);
}
}
}
document.getElementById("pass").value=clave2;
}
else
{
alert("El nombre debe ser mayor a 6 digitos");
}
}
</script>
</body>
</html>
creo que con eso ya se dan una idea de como funciona el reto, es pero sea de su agrado saludos Flamer
la clave para Flamer es Xb]ai|
aqui una foto y si tiene errores me avisan
domingo, 3 de agosto de 2025
Generador de claves del reto 1 de Alfa por Flamer en javascript
Hola amigos hoy les traigo un generador de claves para el reto de alfa, el codigo esta hecho en javascript si lo quieren probar solo copean y pegan el el bloc de notas y la aguardan con la extension .html
bueno primero una foto del reto, otra cosa este reto tiene tiempo que se publico pero como me gustan este tipo de retos asi que aqui se los traigo
bueno si ingresamos el nombre y la contraseña a parece esto
asi que aqui esta el codigo en html
<html>
<head>
<title>Keygen Crackme 1 De alfa ...:::By Flamer:::...</title>
</head>
<body>
<center>
<h1>Keygen Crackme 1 De alfa ...:::By Flamer:::...</h1>
Nombre:    <input type="text" id="nick" size='50' style="text-align:center;"><input type="button" value="Copy" onclick="copiar1()"><br><br>
Serial:        <input type="text" id="pass" size='50' style="text-align:center;"><input type="button" value="Copy" onclick="copiar2()"><br><br>
<input type="button" id="102" value="Generar" onclick="genera()">
<input type="button" id="104" value="Limpiar" onclick="limpia()">
</center>
<script>
function limpia()
{
document.getElementById("nick").value="";
document.getElementById("pass").value="";
}
function copiar1()
{
let c=document.getElementById('nick');
c.select();
document.execCommand('copy');
}
function copiar2()
{
let c=document.getElementById('pass');
c.select();
document.execCommand('copy');
}
function genera()
{
let x,suma=0,res1,res2,nom,digi;
nom=document.getElementById("nick").value;
res1=nom.length;
for(x=0;x<res1;x++)
{
digi=nom.substr(x,1);
suma+=digi.charCodeAt();
}
res1 = res1 * 5;
res2 = res1 * 5;
res2 = res1.toString() + res2.toString();
res1 = parseInt(res2) * 5;
res2 = res2.toString() + res1.toString();
res2 = res2 - suma;
document.getElementById("nick").value=nom;
document.getElementById("pass").value=res2;
}
</script>
</body>
</html>
el codigo se los dejo para que lo analisen y vean como es que el reto crea el serial dado segun su nombre y asi que lo ejecutamos y esta es su apariencia
asi que ingresamos el nombre y serial y aparece lo siguientemiércoles, 23 de julio de 2025
Sumar los digitos de un numero dado en javascript
Hola amigos hoy haremos un codigo para sumar los digitos de x numero dado por el usuario por ejemplo si el usuario ingresa 34 sumaremos 3+4 el resultado a mostrar en pantalla sera la siguiente:
3+4=7
y si la suma de los digitos de este numero dan como resultado un numero con mas de 1 digito seran devueltamente sumados ejemplo
56566 seria asi
5+6+5+6+6=28--->2+8=10--->1+0=1
bueno manos a la obra primero la funcion sum() es esta
function sum()
{
let n=document.getElementById("num").value.toString() //toma el numero y lo convierte en string
document.getElementById("log").value="" //limpia el campo de texto log
sumar(n) //manda llamar la funcion sumar y le manda la variable n
}
los que hace esta funcion es tomar el numero dado y convertirlo a string despues limpia el campo de texto log y al final manda llamar la funcion sumar mandandole la variable n que es el valor dado por el usuario
bueno ya que entendimos este pedaso de codigo pasamos a la funcion sumar(n) esta
function sumar(n) { let s=0,c="",x //inicializa las variables for(x=0;x<n.length;x++) //x=0 y pregunta si x es menor a la longitud de digitos de n para aumentar uno en uno con x++ { d=n.substr(x,1) //toma el digito de la variable n c+=d + "+" //concatena el digito tomado y le agraga un + s+=parseInt(d) //convierte el digito tomado y lo suma a la variable s } c=c.slice(0,-1)+"=" //remplaza el ultimo caracter de la variable c por un = c+=s //concatena el valor de s a la variable c document.getElementById("log").value+=c //agraga el contenido de la variable c a el campo de texto log c=s.toString()//convierte el valor de la variable s a string y lo almacena en la variable c if(c.length > 1) //pregunta si la variable c tiene mas de un digito si es asi entra y manda llamar la funcion sumar { document.getElementById("log").value+="--->" //agrega contenido al campo log sumar(c) //manda llamar la funcion sumar y le pasa la variable c } }
en esta funcion primero inicializa las variables s=0,c="" y la variable x con valor no definido por que en el ciclo sera definida a 0...bueno esta funcion resive la variable n que es el numero a sumar sus digitos.
bueno ahora pasaremos al for inicializa la variable x a 0 despues preguntara la longitud de la variable n, cuantos digitos tiene y si x es menor a eso, esto quiere desir que el ciclo dara el numero de vueltas segun el numero de digitos de la variable n y despues ira aumentando uno en uno el valor de x.
asi que despues tomamos digito por digito de la variable n asi
d=n.substr(x,1) despues lo concatena a la variable c añadiendole un + para despues convertirlo a entero y asi poderlo sumar a la variable s
al salir del for remplaza el ultimo caracter de la variable c por un = y despues en la siguiente linea a la variable c se le concatena la variable s para despues agragar el valor de c al campo de texto log
por ultimo el valor de la variable s es convertido a string y se almacena en la variable c para despues preguntar con un if si el valor de c tiene mas de un digito si es asi manda llamar la funcion sumar para que se repita la funcion y sume los nuevos digitos del numero obtenido.
bueno aqui el codigo completo
<html>
<head><title>Suma De Numeros</title>
</head>
<body>
<br><br><br><br>
<center>
Dame el numero a sumar:<input type="number" id="num">
<input type="button" value="Iniciar" onclick="sum()"><br><br>
<textarea id="log" cols="60" rows="10"></textarea>
</center>
<script>
function sumar(n)
{
let s=0,c="",x
for(x=0;x<n.length;x++)
{
d=n.substr(x,1)
c+=d + "+"
s+=parseInt(d)
}
c=c.slice(0,-1)+"="
c+=s
document.getElementById("log").value+=c
c=s.toString()
if(c.length > 1)
{
document.getElementById("log").value+="--->"
sumar(c)
}
}
function sum()
{
let n=document.getElementById("num").value.toString()
document.getElementById("log").value=""
sumar(n)
}
</script>
</body>
</html>
si lo quieren probar solo copeen y peguenlo en el bloc de notas y aguardar con la extencion .html aqui una foto
bueno asi que aumentemos el nivel si queremos sumar los numeros de un rango estimado por ejemplo del 100 al 1000 solo añadiriamos un for ala funcion sum() aqui el codigo completo no lo explico por que es casi lo mismo solo cambea la funcion sum un poco añadiendole un for y nuevas variables
<html>
<head><title>Suma De Numeros</title>
</head>
<body>
<br><br><br><br>
<center>
Sumar valores de rango:<input type="number" id="num1" style="text-align:center;">
a <input type="number" id="num2" style="text-align:center;"><br><br>
<input type="button" value="Iniciar" onclick="sum()"><br><br>
<textarea id="log" cols="50" rows="70"></textarea>
</center>
<script>
function sumar(n)
{
let s=0,c="",x
for(x=0;x<n.length;x++)
{
d=n.substr(x,1)
c+=d + "+"
s+=parseInt(d)
}
c=c.slice(0,-1)+"="
c+=s
document.getElementById("log").value+=c
c=s.toString()
if(c.length > 1)
{
document.getElementById("log").value+="--->"
sumar(c)
}
}
function sum()
{
let n1=parseInt(document.getElementById("num1").value) //convertimos los valores a enteros
let n2=parseInt(document.getElementById("num2").value) //usando el comando parseInt lo convertimos a entero
let x,n=""
document.getElementById("log").value="" //limpiamos el campo de texto log
for(x=n1;x<=n2;x++)//x es inicializada con el valor inicial de n1 y el ciclo termina con el valor dado segun el valor de n2
{
n=x.toString() //x es convertida en string y almacenada en n
sumar(n) //manda llamar la funcion sumar y le envia la variable n
document.getElementById("log").value+="\n"
}
}
</script>
</body>
</html>
aqui una foto
bueno eso creo que es todo espero les guste y saludos Flamer