elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ... 238
161  Programación / Programación General / Re: Correcta y rápida evitación de dibujos sin pintados en alguna fila y columna. en: 18 Diciembre 2024, 18:32 pm
No parece tan sencillo, según lo que pensé:


Puede haber más casos a tener en cuenta, puede haber errores en lo que pensé... Aún no tengo una fórmula general. Tampoco estoy seguro de que convenga hacerlo, ya lo comenté. Lo que se me ocurrió ahora es que quizá hay alguna ecuación que permita generar solamente los números que se quieren, porque los dibujos son también números. ¿Ideas sobre eso?
162  Programación / Programación General / Re: Ayuda con las funciones de string de AS 1.0. en: 18 Diciembre 2024, 03:56 am
Intenté, ahora, usar la que se supone que remueve el caracter especificado (no el de la posición especificada):
Nota: Fija iba a ser un número pero como no funciona, probando lo cambié a un string:
Código
  1. Fija = "12345";
  2. // El que será probado 1ero:
  3. Candidato = 1;
  4. // Mensaje que se mostrará en pantalla:
  5. Respuesta = "A "+Fija+" se le quita el caracter o grupo C. Asignar un valor a C para que luego del proceso, "+Fija+" < C. Se recomienda... ";
  6. // Se repite en F2:
  7. function ProbarCandidato () {
  8. trace ("Probando el Candidato "+Candidato);
  9. // Ojo que si Candidato tiene largo 2 se haría otra cosa:
  10. NuevaFija = Fija.split(Candidato);
  11. trace ("NuevaFija: "+NuevaFija);

Eso es parte del código, que me da esto:
Probando el Candidato 1
NuevaFija: ,2345
No se logró el objetivo.
Candidato fue modificado, es 2
Probando el Candidato 2
NuevaFija: 1,345
No se logró el objetivo.
Candidato fue modificado, es 3
Probando el Candidato 3
NuevaFija: 12,45

Según veo, es un array, de hecho la descripción dice que genera uno, ok. ¿Y lo puedo convertir en una cadena usando .join? Veo que no, por lo que dijo EdePC. ¿Entonces en este caso deberé usar un while?
163  Programación / Programación General / Correcta y rápida evitación de dibujos sin pintados en alguna fila y columna. en: 16 Diciembre 2024, 19:00 pm
Se quiere, entre otras cosas, que los dibujos generados en blanco y negro tengan algún cuadradito pintado (negro) en cada fila y columna.

El 1ero es así:
BBN
BNB
NBB

Va pintando y despintando, desde abajo a la izquierda.

En cierto punto, queda así:
BBN
BNN
BBB
Ese no debe mostrarse. El programa continuará pintando y despintando, hasta hallar un dibujo que cumpla las condiciones. Pero puede verse que, por el orden conque pinta, se generarán varios dibujos que no servirán.

Para evitar eso, puse en el código, que mire cada columna y fila, comenzando desde la izquierda y abajo, y, bueno, esto:
Código
  1. } else if (SinPintadosEn == "Columna") {
  2. // El puntero se pone en la columna indicada,
  3. // de la última fila:
  4. Puntero = CuadraditosPorFila*(CuadraditosPorFila-1)+Puntero2;
  5. } else if (SinPintadosEn == "Fila") {
  6. // El puntero se pone en la fila indicada,
  7. // de la última columna:
  8. Puntero = CuadraditosPorFila*Puntero2;
Si se detecta una columna sin pintados, enseguida el programa hace eso, pintará un cuadradito inferior, en la columna donde haga falta. El Puntero indica cual se pintará.
Si en cambio detecta una fila sin pintados, también enseguida pintará uno, a la derecha, en la fila donde haga falta.

Pensé que eso era bueno, pero hace que algunos dibujos correctos no se muestren, la versión antigua del programa está en la izquierda:
https://youtu.be/iZuwk7YcGaw

Quizá la solución sea, en vez de pintar enseguida al detectar una falla, terminar de revisar cada fila y columna, y si se detecta una falla en ambos casos entonces pintar el cuadradito que solucione ambas. Pero no estoy seguro de que funcione bien, a estas alturas. Además, cuando sólo falle en 1 aspecto, estará revisando medio en vano, quizá sea mejor producir los dibujos normalmente y no mostrarlos si no cumplen las condiciones. Lo que estoy intentando es evitar que se produzcan innecesarios, pero si requiere análisis "innecesarios", no sé si es mejor. ¿Sugerencias?

Código en cuestión:
Código
  1. // Para juzgar:
  2. // ¿El dibujo tiene cuadraditos pintados en toda columna y fila?
  3. Puntero2 = CuadraditosPorFila;
  4. // Esto puede que cambie:
  5. CuadraditoenCadaFyC = "Sí";
  6. do {
  7. // ¿La columna Puntero2 no tiene algún cuadradito pintado?
  8. if (eval("PintadosenC"+Puntero2)<1) {
  9. CuadraditoenCadaFyC = "No";
  10. // Para saber qué corregir:
  11. SinPintadosEn = "Columna";
  12. } else if (eval("PintadosenF"+Puntero2)<1) {
  13. // La fila Puntero2 no tiene algún cuadradito pintado:
  14. CuadraditoenCadaFyC = "No";
  15. SinPintadosEn = "Fila";
  16. } else {
  17. Puntero2--;
  18. }
  19. } while (CuadraditoenCadaFyC == "Sí" && Puntero2>0);
  20. // ¿El dibujo tiene cuadraditos pintados en toda columna y fila?
  21. if (CuadraditoenCadaFyC == "No") {
  22. // No, no mostrarlo y hacer otro:
  23. // trace ("    No ocupa cada F y C, salteándolo.");
  24. DibujosPequeños++;
  25. // Actualizar MinCuadraditoPintado si corresponde:
  26. if (Puntero<MinCuadraditoPintado) {
  27. // Esto no viene al caso.
  28. } else if (SinPintadosEn == "Columna") {
  29. // El puntero se pone en la columna indicada,
  30. // de la última fila:
  31. Puntero = CuadraditosPorFila*(CuadraditosPorFila-1)+Puntero2;
  32. } else if (SinPintadosEn == "Fila") {
  33. // Probablemente es innecesario poner la condición
  34. // El puntero se pone en la fila indicada,
  35. // de la última columna:
  36. Puntero = CuadraditosPorFila*Puntero2;
  37. } else {
  38. // Probablemente es innecesario poner este else y su contenido
  39. // El puntero se pone en el cuadradito inferior derecho:
  40. Puntero = MaxPosiciondePuntero;
  41. trace("Caso que no debería ocurrir");
  42. }
164  Seguridad Informática / Seguridad / Re: es posible que te rastreen desde las cookies? en: 16 Diciembre 2024, 02:51 am
Avast me dice a veces que tengo una cookie de seguimiento, que me están siguiendo, así que como dice Daniel pensé que las cookies eran algo que se generaba en la PC del visitante, no en la PC donde está la página, pero sobre si te pueden rastrear por una o qué son exactamente, no sé.

Posiblemente te refieres a otra cosa. En el juego Uplink (creo que se llamaba así) que me mostraron hace tiempo, me recomendaron borrar los rastros que dejara en las PC atacadas. Nunca lo jugué, pero debe ser algo así, registros de visitantes y eventos. Muchas páginas deben de tener, varias otras quizá no... Pero dicen que a los piratas no los cazan, en general. Sino mira las páginas de cosas piratas que hay sin que el FBI o cosas así las cierren. O es muy difícil o no lo intentan realmente. Animefenix cerró recientemente, pero bue, la gente dice que son como hidras.
165  Programación / Desarrollo Web / Re: Cual es el mejor software para foros? en: 16 Diciembre 2024, 02:42 am
wanchopeee: Crea otro tema y pregunta eso.
166  Programación / Programación General / Re: ¿Cómo aprender a hacer programas que resuelvan dudas? en: 16 Diciembre 2024, 02:32 am
Estoy retomando esto.

La duda más simple, digamos, la de decir un número mayor a otro X, conocido, tiene estas características:
- Sólo tiene 1 variable, X.
- La variable es de tipo número positivo entero.
- El candidato (el valor que se prueba como posible solución) no tiene partes, es sólo 1 variable de tipo número positivo entero.
- Sólo tiene 1 condición a cumplir.
- La condición es de tipo "candidato", "símbolo comparador", "valor". El candidato es el valor que se prueba como posible solución.
- Se puede resolver mediante 1 acción.

Pueden nombrarse más, pero no tiene mucho sentido hacerlo, me parece.

¿Cuales serían las siguientes dudas, un poquito más complicadas?

Si agregamos más variables como X, es decir, si por ejemplo hay varios números a superar, eso implica que la condición a cumplir se complicará ¿verdad? Por eso por ahora, prefiero aumentar o complicar otra cosa, algo que no implique complicar otras cosas.

En cuanto a complicar X:
Si lo hacemos negativo, la duda podría ser cual es su número contrario, pero eso implica complicar la condición a cumplir, ya no es comparar 2 números sino que se requiere cierto proceso. Otro ejemplo no se me ocurre, decir un número menor al negativo implicaría complicar al candidato pues ya no podría ser positivo.
Si a X la hacemos decimal, si es positivo, no habría diferencia. Si la duda fuese adivinar X, eso implica complicar al candidato y especialmente el modo conque varía, ya que no es lo mismo sumarle 1 que sumarle distintas cantidades decimales.
Si a X la hacemos un texto, ya no es algo que se pueda superar (si hablamos de longitud, eso es complicar la condición a cumplir). Si la duda fuese adivinar el texto, eso implica complicar al candidato y cómo varía.

Hacer que el candidato tenga partes parece que complica su aplicación, por ejemplo si la duda fuese hallar 2 números que al multiplicarse resulten X, entonces hay que multiplicarlos en vez de simplemente comparar uno.
Además no se me ocurren muchas dudas así, que dado un número haya que decir varios números que deban cumplir alguna condición. ¿Se les ocurre?

Que el candidato sea negativo, decimal o texto, complica el cómo varía. Además X es un positivo entero, así que:
Si el candidato es un negativo ¿para qué? No para superar a X. ¿Para ser superado? Sería demasiado fácil. Otros objetivos complican la condición, creo.
Si el candidato es un decimal ¿para qué? Podría ser porque la situación lo requiere, como si fuese un desafío. Bueno, pero no tiene mucho sentido.
Si el candidato es un texto, no podrá superar a un número. En longitud, ya se ha dicho, es otra cosa. Si el texto representa otro sistema de numeraciòn, puede ser, pero no me gustan ese tipo de dudas, de convertir gramos en moles, número en texto, etc xP

Agregar una condición parece implicar agregar una variable o complicar la complejidad de la condición. Por ejemplo, en vez de que el candidato (C) simplemente deba ser mayor a X, puede ser X < C < Y. Se agregó la variable Y. Si decimos que C deba ser un número primo, eso implica procesos, no una comparación simple.

El tipo de condición a cumplir, sí, por fin, parece poder complicarse sin que eso implique complicar otras cosas. Es lo que quiero complicar, por eso. Teníamos que C > X. Podemos cambiarlo, por ejemplo, a que C sea más largo que X. Esto me lleva a la pregunta de cuales son los procesos que se pueden aplicar en C, que resulten en un valor no azaroso. Ordenados por complejidad.

Dificultad 0: No hay proceso, C se usa como tal:
C > X, o C == X, etc, depende del contexto.

A continuación digo procesos y ejemplos de condición a cumplir, en definitiva son dudas o desafíos, quisiera que agreguen a la lista, y los ordenen por complejidad.
Ah, los procesos no deben implicar variables, más allá de X y C. Por ejemplo C+Y > X no sirve porque se agregó la variable Y.
Y los procesos los clasifico en 4 tipos para más claridad.

Procesos que sólo quitan caracteres (recuérdese que C es entero positivo, así que el caracter 0 no siempre se podría quitar):
- C quita el caracter nro C a X ¿qué valor debe tener C para que luego del proceso se cumpla que C+C < X?
- A X se le quitan caracteres, desde el inicial hasta X ¿qué valor debe tener C para que luego del proceso X sea un número más divisible que antes?
- A X se le quitan caracteres, desde el último hasta X ¿qué valor debe tener C para que luego del proceso X sea un número menos simétrico que antes?

Procesos que no cambian los caracteres, sólo los cambian de lugar:
- Desde el inicio de X se busca un caracter C, y se pone en el lugar C ¿qué valor debe tener C para que luego del proceso X sea mayor que antes?
- Desde el final de X se busca un caracter C, y se pone en el lugar C ¿qué valor debe tener C para que luego del proceso X sea menos ordenado que antes?
- El caracter nro C de X se pone en la posición C+C ¿qué valor debe tener C para que luego del proceso, la potenciación de los caracteres de X sea mayor que antes?

Procesos que sólo agregan caracteres:
- A X se le agrega C en la posición C ¿qué valor debe tener C para que luego del proceso X sea divisible entre C?
- El caracter C de X se agrega en su posición C ¿qué valor debe tener C para que luego del proceso X sea la suma de los caracteres del X original?
- X se agrega al final de X, C veces ¿qué valor de C logra que luego del proceso X sea lo más cercano posible a C*X (el original)?

Procesos matemáticos (que pueden hacer cambios de los otros tipos):
- X=X/C ¿qué valor debe tener C como mínimo para que luego del proceso se cumpla que C>X?
- X=X*C ¿qué valor debe tener C para que los caracteres del nuevo X sean todos iguales?
- X=C/X ¿qué valor debe tener C para que el nuevo X tenga C decimales?

Los procesos que impliquen más de un tipo de proceso, son más complejos que los simples, claro. Parece haber 2 aspectos aquí: El proceso y la condición a cumplir. ¿Se pueden separar? ¿se puede complicar el proceso sin complicar la condición? ¿y viceversa? Creo que me desvié, me suele pasar xP Ahora me siento algo perdido ¿sugerencias?

A ver, el código:
Código:
X = Un número entero positivo
C = 1
Repetir
   Si C > X
      // Solución hallada, fin
   sino
      C++

Supongamos que la mínima complicación que puede hacerse a eso, del tipo de complicación que mencioné, es:
Código:
X = Un número entero positivo
C = 1
Repetir
   Si C+C > X
      // Solución hallada, fin
   sino
      C++

Ahí el proceso está en la condición, pero puede ser algo anterior ¿o no?
Código:
BaseX = Un número entero positivo
C = 1
Repetir
   // Proceso que implica definir X usando BaseX y C.
   Si C > X
      // Solución hallada, fin
   sino
      C++

Supongo que me falta práctica, pero quiero practicar desde lo más sencillo a lo más complicado, así que necesito entender cual es el orden...

La condición puede ser X > BaseX por ejemplo. O SimetriaDeX > SimetriaDeBaseX. No son variables nuevas realmente, son propiedades de las otras. En fin ¿sugerencias? Se me acabaron los puntos para GPT hoy, mañana le pregunto.
167  Programación / Programación General / ¿Se puede hacer un bat que abra john the rippley y le de un comando? en: 15 Diciembre 2024, 19:07 pm
Tendré que usarlo muchas veces creo, así que quisiera automatizar un poco la tarea:
- Abrir la carpeta run donde están los ejecutables de john.
- En la barra de direcciones, escribir CMD.
- Pasarle el comando john --wordlist=Mywords.txt rar.hashes.

Ese archivo lo cambiaré manualmente luego de que john termine.

¿Cómo lo hago?

baia baia, respuesta de God PT:
Citar
¡Claro que puedes hacerlo! Puedes crear un archivo batch (`.bat`) para automatizar este proceso y que ejecute directamente el comando sin necesidad de escribir manualmente en la barra de direcciones o abrir el símbolo del sistema por separado. Aquí tienes una guía paso a paso:

### 1. **Crea el archivo batch**

1. Abre un editor de texto como *Bloc de notas* o cualquier otro editor de texto simple.
2. Escribe el siguiente código (personalizando las rutas según tu configuración):

```batch
@echo off
:: Cambia a la carpeta donde está el ejecutable de John the Ripper
cd /d "C:\ruta\a\la\carpeta\run"

:: Ejecuta el comando con el archivo de wordlist y el archivo de hashes
john --wordlist=Mywords.txt rar.hashes

:: Pausa para que puedas ver el resultado
pause
```

3. Guarda el archivo con la extensión `.bat`. Por ejemplo, podrías llamarlo `ejecutar_john.bat`.

   - Asegúrate de que al guardar uses **Guardar como...** y selecciones "Todos los archivos" como tipo, para evitar que Windows lo guarde como `ejecutar_john.bat.txt`.

---

### 2. **Cómo usar el archivo batch**

1. Coloca el archivo batch (`.bat`) en cualquier lugar que te sea conveniente.
2. Haz doble clic en el archivo batch. Esto hará lo siguiente:
   - Cambiará al directorio `run` donde está el ejecutable de John the Ripper.
   - Ejecutará el comando `john --wordlist=Mywords.txt rar.hashes`.
   - Mantendrá abierta la ventana de la consola al final (gracias al comando `pause`) para que puedas leer los resultados.

---

### 3. **Personaliza el archivo batch**

Si más adelante necesitas cambiar los parámetros (como el archivo de wordlist o el archivo de hashes), simplemente edita el archivo batch con un editor de texto y ajusta las líneas correspondientes.

---

### 4. **Automatización adicional (opcional)**

Si siempre tendrás los archivos `rar.hashes` y `Mywords.txt` en la misma carpeta, podrías simplificar aún más las cosas:

- Coloca el archivo batch en el directorio donde están los archivos, y modifica el batch para que no tengas que cambiar de directorio:

```batch
@echo off
:: Ejecuta John the Ripper directamente en el directorio actual
"C:\ruta\a\la\carpeta\run\john.exe" --wordlist=Mywords.txt rar.hashes

:: Pausa para ver los resultados
pause
```

De este modo, el archivo batch puede ejecutarse desde cualquier lugar, pero necesitarás asegurarte de que `Mywords.txt` y `rar.hashes` estén en la misma carpeta que el batch.

---

### 5. **Cosas a tener en cuenta**

- Si utilizas rutas con espacios, asegúrate de que estén entre comillas, como en `"C:\Program Files\John the Ripper\run"`.
- Si necesitas cambiar el archivo `rar.hashes` manualmente, asegúrate de que esté en el directorio donde espera el batch.
- Si tienes varias tareas similares pero con diferentes archivos, podrías crear diferentes archivos batch para cada tarea con los nombres de archivo correspondientes.

¡Y listo! Con esto, puedes automatizar el proceso y ahorrarte tiempo.
168  Foros Generales / Foro Libre / Re: expliquen en: 14 Diciembre 2024, 16:18 pm
Ni idea si es IA, pero es spam sobre un casino, spam con la excusa de responder algo.
169  Foros Generales / Noticias / Re: No te has enterado, pero Google tiene una nueva función en su buscador que cambia todos los resultados en: 11 Diciembre 2024, 11:18 am
Lo que necesita es un bloqueador de resultados, como solía haber. Quizá alguien lo rehizo, yo es que me cansé de buscar otro. Hablo de una extensión en la que agregabas páginas y luego ellas no eran mostradas en los resultados de Google. Aunque supongo que especificar la búsqueda es mejor. Es que yo ponía Nombre de la serie capítulo número, pero entre algunas tonterías me aparecían resúmenes en Youtube, y eso no lo voy a bloquear...
170  Foros Generales / Noticias / Re: Si usas esta letra, tus contraseñas serán casi imposibles de descifrar: así lo aseguran los hackers en: 11 Diciembre 2024, 11:09 am
Hoy Cuevana no me dejó ver una serie tranquilo así que no ando paciente, y ahora esto ¿por qué en vez de tanto blablabla no dicen la letra? ¿por qué Internet tiene tanta basura en los 1eros puestos?
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ... 238
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines