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


 


Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.


  Mostrar Mensajes
Páginas: 1 ... 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 [78] 79 80
771  Foros Generales / Dudas Generales / Re: ¿Utilizáis a menudo la recursividad al programar? en: 8 Febrero 2017, 01:52
Sí... es cierto que todo lo que se hace con recursividad, puede resolverse con iteración.

En general debes intentar resolver siempre con Iteración... la recursividad consume más recursos, con cada llamada, debe depositarse en la pila todos los campos utilizados en la funciñon que se autoinvoca (salvo los que sean estáticos, que se comparten entre llamadas y se alojan a nivel del módulo).

Sin embargo hay unos pocos casos, donde siempre la recursividad es más elegante, o bien efectiva y sencilla.

El caso más típico para la recursividad, es recorrer las subcarpetas y ficheros de una carpeta dada y en general cualquier operación con árboles. La razón en estos casos, es que tras llegar al fondo de una 'ruta', se va regresando hacia atrás, y te deja justo en el sitio correcto para  'surfear' en la siguiente ruta... metódico y sencillo. Casos así con iteración, exigirían mantener alguna colección y punteros que señalicen el avance de cada rama...

Código:

funcion Recorrer(Ruta)
    Mientras Ruta tenga Subcarpetas
          llamada a Recorrer(Subcarpeta(s))
          Hacer algo, si hay algo que hacer con la Subcarpeta(s)
    Fin mientras
    Mientras Ruta tenga Ficheros
       Hacer Lo que sea que haya que hacer con el Fichero(f) (si hay algo que hacer, con los ficheros, si no, este bucle sobra)
    Fin mientras
fin funcion

En el ejemplo, ves que fácil es recorrer todo un árbol de directorios... hacrlo iterativo, es mucho más complicado. también queda garantizado que no se colapse la pila, porque el nivel de anidamiento de las carpetas está limitado por los S.O. (16, 32, etc...).
772  Seguridad Informática / Seguridad / Re: Saber programar? en: 7 Febrero 2017, 21:39
Si a uno le basta con usar herramientas conocidas para hacer sus 'tareas', probablemente no necesite saber programar (es a esto a lo que se suele llamar 'lamer')  :silbar: :silbar: :silbar:

En cambio si uno quiere aplicar su ingenio, diseñando y fabricando por sí mismo las herramientas (aunque solo sea para medio colaborativo, para que otras cooperen juntas), es obligatorio no solo saber programar, si no además, estar bien empapado en la materia que quiera controlar...
773  Foros Generales / Foro Libre / Re: ¿Por qué practicas el hacking? en: 7 Febrero 2017, 21:34
Ya, pero hay que diferenciar...

Como programador uno prefiere tener código para modificar si llega el caso... sin embargo a menudo se olvida que la mayor parte de los usuarios, no saben un ápice de programar y por tanto les importa un pimiento que el código esté disponible o no, les basta que funciones bien y punto.

Es como si al adquirir un coche, exigiéramos que llevara en el maletero, todas las herramientas necesarias para desmontar todas y cada una d elas piezas del vehículo... por supuesto, cualquier  aficionado a la mecánica o proofesional del ramo, estaría encantado, pero la mayor parte del público, vería una carga inútil en el maletero... todo lo que piden a sus coches es que funcione bien y gaste poco.

Los usuarios como tal, prefieren que sea gratis o al menos baratos y no les importa tanto el asunto si el código está disponible.
774  Foros Generales / Noticias / Re: Opera 43 ya está disponible, con carga instantánea de páginas y optimización ... en: 7 Febrero 2017, 16:22
Odio los programas que pecan de 'actualicitis'...

No puedo entender que un programa deba actualizarse cada semana, o peor cada 2 días... en síntoma de que o son tonterías lo que se cambia, o peor si son errores graves, te hace preguntarte qué clase de programadores hay detrás, que no consiguen que el programa sea estable... ...y te acaban sembrando la duda: ¿arreglan un error y crean 2 nuevos o tenían miles de errores y cada semana toca corregir media docena?.

Si no es por un error grave de seguridad, tocar tanto las narices con actualizaciones, solo obedece a que tal empresa, quiera hacerse notar con una constante omnipresencia... ¿te das por aludido, adobe, con tu flash-player?.
775  Foros Generales / Foro Libre / Re: Tabulaciones o espacios? en: 7 Febrero 2017, 16:15
Ambos sistemas pueden ser desestimados por los editores de texto plano, y no tanto por editores de código.

Hay editores que filtran los tabuladores y hay editores que cuando encuentran varios espacios, los remplazan por uno solo.

Yo personalmente prefiero 4 espacios de indentación... se gana mucha claridad, con menos siento que me asfixio y con más siento que me 'traslado'...
776  Foros Generales / Noticias / Re: ¿Por qué ocupan tanto espacio los juegos actuales? Os lo explicamos en: 5 Febrero 2017, 23:37
No estoy de acuerdo, en las razones que explican.

Creo que eso son las excusas...

Y creo que la realidad, es que habrán pensado algo como:
"Si quieren piratearnos, que se preparen para adquirir discos a patadas, y si los comparten por internet,, que se tiren días-semanas (o meses) de descarga, solo para un único juego"

En fin habrán pensado que a los usuarios les saldrá más barato comprar el juego que adquirirlo pirateado y luego tener que comprar un disco duro ... tras 15-20 juegos necesitarás otro disco.... antes con el tamaño de un CD - DVD, necesitabas varios cientos para ocupar un disco de 1-2 Tb.
777  Seguridad Informática / Seguridad / Re: + 40Gb Diccionarios WPA/WPA2 HexaNail en: 5 Febrero 2017, 22:35
Es problema de cada programa, de como acepta las entradas... si UNICAMENTE y exclusivamente acepta como parámetro una ruta a un fichero de claves, es una perspectiva muy pobre.

Un programa podría contemplar otras 2 opciones.
A - Una de ellas sería aceptar como parámetro,  un array de claves.
B - Otras forma es que el propio programa tuviera implementado el diseño descrito en su estructura y en tal caso aceptara los parámetros del punto de inicio y fin de los bucles.

Como mínimo la opción 'A', si sería deseable y no llevaría ningún tiempo de consideración implementarlo...

Pero me reitero, no existe más problema que la ineficiencia del diseño de tal o cual programa.

El tiempo que se tarde en probar trillones de claves, es dependiente del tiempo que quiera perder quien recurre a un ataque de fuerza bruta... y por tanto ahí no cabe entrar... Solo me he descargado un fichero de los que se enlazan y tras abrirlo, observo que son permutaciones... deduzco que el resto continúan la sucuencia,  de donde empieza y donde termina ese.
778  Seguridad Informática / Seguridad / Re: + 40Gb Diccionarios WPA/WPA2 HexaNail en: 5 Febrero 2017, 19:55
Parecen ser ficheros de texto plano, luego basta que cambies la extensión como prefieras (*.txt por ejemplo) o a la que el programa exija-permita.

Aunque después de descargarme 1, lo veo un poco tontería y me explico:

Un dicccionario de por ejemplo 15 dígitos usando caracteres A-Z 0-9 (36 caracteres), tiene la friolera de 36^16 permutaciones = 221.073.919.720.733.357.899.776
redondeando 221 trillones... esto guardando a fichero ocupa 2byte por caracter + 1 byte adicional por palabra, total 221trillones * 31= 6.853trillones de bytes, es decir 6.233.032.319.271, 6 billones de Terabytes. Ni todos los duiscos duros de todo el planeta, podrian guardar el dicionario resultante.  :laugh: :silbar: :laugh:

Esto puede hacerse de una forma mucho más eficiente, si solo se generan las permutaciones para 5 caracteres que son en total 60 millones de permutaciones y que ocupa un espacio en disco de solo unos cientos de Mb.

Luego al probarlos, basta generar un triple bucle anidado, donde:
- Cada bucle, recorrerá desde la 1ª hasta la última permutación leída del fichero.
- Antes del primer bucle se genera una cadena de texto de 15 caracteres de largo...
- El bucle más externo (el 1º), coloca su valor con cada iteración en los 5 caracteres más a la izquierda.
- El bucle del medio (el 2º), coloca su valor con cada iteración en los 5 caracteres del centro.
- El bucle interno (el 3º), coloca su valor con cada iteración en los 5 caracteres de la derecha.
- Y acto seguido tienes la clave de 15 caracteres que puedes enviar-usar....

Y en resumen con este método basta un diccionario de solo 60 millones de permutaciones...  

Más aún puede hacerse uno de 4 bucles cada uno con 4 caracteres (para 16 caracteres), luego bastaría un diccionario de solo 1.679.616 permutaciones , que puede mantenerse ya en memoria (ocuparía alrededor de 10Mb. solo)... con lo que al ahorrarnos la lectura de fichero, se acelera mucho la velocidad. Más aún este diccionario de 4 caracteres puede crearse en menos de 1 segundo (, solo unas décimas, pero sería incluso válido aunque tardara 10 segundos).



779  Foros Generales / Foro Libre / Re: A quien consideras tu el "padre de la computacion"? en: 5 Febrero 2017, 19:06
Otro capítulo en el tiempo próximo al álgebra de Boole, es la operación binaria, la cual surgió en unión con propia definición de la base numérica de 2.

En ella se consideró el 0 y el 1 como los dígitos del sistema y que pudo ser reducido como:
0 = x - x
y
1 = x / x

...y que es el modo en que con las matemáticas se an resuelto el paso de la tecnología analógica a la digital...
780  Foros Generales / Noticias / Re: Windows 10 Cloud ¿el sistema operativo que no habrá que instalar? en: 1 Febrero 2017, 22:43
mmmm... no lo veo...
Si te quedas sin conexión, te quedas colgado?.
¡Que fácil entonces piratear cualquier transacción...! unos ataques bien dirigidos, durante cierto tiempo, se colapsa y ciertas gestiones que muchos negocios debieran haber hecho, quedan fuera, cosa que otros aprovechan, para sí mismos...

Siempre he optado por la independencia y cuanto más absoluta, mejor...
Páginas: 1 ... 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 [78] 79 80
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines