Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[Java] Generador de contraseñas + si es fuerte o no

  • 6 Respuestas
  • 9418 Vistas

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado hackmin

  • *
  • Underc0der
  • Mensajes: 67
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« en: Marzo 16, 2015, 04:45:10 pm »
Código: Java
  1. package poo;
  2.  
  3. import java.util.Random;
  4.  
  5. public class Password {
  6.  
  7.         public static void main(String[] args) {
  8.                 Password longitud = new Password(8);
  9.                 int indice = longitud.Longitud;
  10.                 int esFuerte = 0;
  11.                
  12.                 for(int i = 1; i <= indice ;i++){
  13.                         System.out.print(Password.generarPassword());
  14.                          Password.GetSeguridadContraseña();
  15.                 }
  16.                 System.out.println();
  17.                 System.out.println(Password.esFuerte());
  18.                
  19.         }
  20.        
  21.        
  22.         protected static int Longitud;
  23.         private static char GetAscii;
  24.         private static int NumAleatorio;
  25.         private static int esFuerte;
  26.         private static int Minuscula =0 ;
  27.         private static  int mayuscula = 0 ;
  28.         private static int Numeros = 0;
  29.        
  30.         public Password(){
  31.                 this.Longitud = 8;
  32.         }
  33.         public Password(int longitud){
  34.                 this.Longitud = longitud;
  35.         }
  36.        
  37.         public static char generarPassword(){
  38.                 GetAscii = 'A';
  39.           for(int i = 1; i <= Longitud;i++){
  40.                
  41.                   NumAleatorio = 32+(int)(Math.random()* 92);
  42.                   GetAscii = (char)NumAleatorio;
  43.                   if(i == Longitud){
  44.                         return GetAscii;  
  45.                   }
  46.                  
  47.           }    
  48.            return GetAscii;
  49.         }
  50.                
  51.                
  52.           public static void GetSeguridadContraseña(){
  53.                  
  54.                  
  55.                
  56.                  if(NumAleatorio >= 65 && NumAleatorio <= 90 ){
  57.                          mayuscula++;
  58.                  }
  59.                  if(NumAleatorio >= 97 && NumAleatorio <= 122 ){
  60.                          Minuscula++;
  61.                  }
  62.                
  63.                  if(NumAleatorio >= 48 && NumAleatorio <= 57 ){
  64.                          Numeros++;
  65.                  }
  66.                  
  67.                
  68.                
  69.                  
  70.           }
  71.          
  72.           public static  String esFuerte(){
  73.                  
  74.                   if(Minuscula > 1 && mayuscula > 2 && Numeros > 5){
  75.                                 return "La contraseña es Segura!";
  76.                          }
  77.                   else{
  78.                           return "la contraseña es Débil!!";
  79.                   }
  80.                  
  81.           }
  82.        
  83.          
  84.                
  85.         }
  86.        
  87.  
  88.  

Mi  pregunta es: ¿una contraseña wifi puede obtener 64 caracteres en total? si es así admite todo tipo de carcateres?, es decir Astericos,letras,numeros?
« Última modificación: Marzo 20, 2015, 08:54:02 am por Expermicid »

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5499
  • Actividad:
    16.67%
  • Reputación 36
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #1 en: Marzo 16, 2015, 05:15:38 pm »
Hola bro! Muy buen aporte!
Respondiendo un poco a tu pregunta, te dejo esta tabla con los cifrados WEP y WPA y la cantidad de caracteres disponibles en cada uno de ellos

Código: Text
  1. WEP:
  2. 64-bits = 10 caracteres
  3. 128-bits = 26 caracteres
  4. 256-bits = 58 caracteres
  5.  
  6. WPA:
  7. 64-bits = 8 caracteres
  8.  
  9. WPA2:
  10. 160-bits = 20 caracteres
  11. 506-bits = 64 caracteres

Espero que te sirva y te dejo puntos por tu aporte!

Saludos!
ANTRAX


Desconectado hackmin

  • *
  • Underc0der
  • Mensajes: 67
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #2 en: Marzo 16, 2015, 06:06:16 pm »
Antrax, muchas gracias!

Entonces lo recomendable sería ocupar todos los caracteres por así decirlo no?

Entonces si generamos una contraseña de 64 caracteres como por ejemplo esta:

Código: [Seleccionar]
;9_ptq/dF/A*Lix]fIX)yl$)jZxCzV(`6H/g?vyD#o8>+ nBE.P?^-*$hiIAUyE*
En la web de kaspersky dice http://blog.kaspersky.com/password-check/

Que un ordenador de casa decente tardaría mas de 10.000 siglos en descrifarla...

Entonces me pregunto...

Si una persona pone esa contraseña en su red wifi, practicamente estaría 100% protegido?

y otra cosa en la tabla que tu me mostrastes, sale:
506-bits

¿Eso que es?, es decir los bits que hay en 64 caracteres o la seguridad?

Desconectado po6xsecpo

« Respuesta #3 en: Marzo 16, 2015, 06:34:04 pm »
Muy bueno,le ha dado ideas a este novato. :D graciad

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5499
  • Actividad:
    16.67%
  • Reputación 36
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #4 en: Marzo 17, 2015, 09:05:06 am »
En la WPA2 tenes un Máximo de 63 caracteres/506-bits.
De igual forma, nunca nadie está 100% seguro ponga la password que ponga.
Para poder sacar una WPA podes hacerlo de varias formas..
Por un lado con diccionario o fuerza bruta, que ahí si demoraría 10.000 siglos en romperla, y por otro lado tenes métodos como el Twin Attack, el cual consiste en crear un AP falso y que el cliente se conecte ahí poniendo su contraseña. Una vez hecho esto, el atacante obtendrá esa contraseña sin necesidad de reventarla por fuerza bruta

Saludos!
ANTRAX


Desconectado Snifer

  • *
  • Underc0der
  • Mensajes: 1439
  • Actividad:
    0%
  • Reputación 1
  • S[email protected]'s
    • Ver Perfil
    • Snifer@L4bs
  • Twitter: sniferl4bs
« Respuesta #5 en: Marzo 17, 2015, 09:50:24 am »
Ademas como aporte a los comentarios de Antrax y adicionar que toda contraseña es rompible a los ataques de fuerza bruta, o bien tecnicas adiciona Ing Social, con ello ya esta hecho todo.

Regards,
Snifer
http://www.sniferl4bs.com


Llaman traidor a la persona que evito que caiga el foro, gente bruta!



Desconectado Mr_Pack

  • *
  • Underc0der
  • Mensajes: 59
  • Actividad:
    0%
  • Reputación 1
    • Ver Perfil
    • r00tc0d3rs
    • Email
« Respuesta #6 en: Abril 13, 2016, 10:14:12 am »
Hola hackmin genial tu código,  pero creo que hay un error a la hora de la validación o si no es así corrígeme por favor

cuando se llama a la función  esFuerte :

Código: [Seleccionar]
public static  String esFuerte(){
                 
                  if(Minuscula > 1 && mayuscula > 2 && Numeros > 5){
                                return "La contraseña es Segura!";
                         }
                  else{
                          return "la contraseña es Débil!!";
                  }
                 
          }


está validando si el String que se generó como contraseña contiene mas de 1 minúscula, mas de 2 mayúsculas y que contenga mas de 5 números verdad ?
si no es así corrígeme por favor

pero pasa que me genera este pass:
Citar
Ro%B(hG7
La contraseña es Segura!

el cual contiene mas de 1 minúscula, mas de 2 mayúsculas, PERO no tiene sino 1 solo numero y aún así me marca como segura la contraseña.


Si no entendí bien tu código espero me disculpes, es solo una apreciación.

de todos modos gran aporte :D

Salu2
____________________________

my best crime is myself

 

¿Te gustó el post? COMPARTILO!



[Video Curso] Iniciacion a Java por DesarrolloWeb y EscuelaIT Mayo 2014

Iniciado por graphixx

Respuestas: 3
Vistas: 3590
Último mensaje Febrero 23, 2015, 10:13:28 am
por Hu3c0
Java Extremo [Video Cursos Completos] [Español] [ISO] 2009

Iniciado por graphixx

Respuestas: 9
Vistas: 9246
Último mensaje Diciembre 04, 2017, 02:36:34 am
por graphixx
Como compilar programas Java en la consola de comandos de Windows

Iniciado por tar3kw0rm3d

Respuestas: 2
Vistas: 3932
Último mensaje Junio 04, 2013, 02:55:07 pm
por tar3kw0rm3d
[LIBRO] Programación avanzada en Java - Sonia Jaramillo Valbuena

Iniciado por graphixx

Respuestas: 5
Vistas: 8308
Último mensaje Enero 23, 2019, 07:14:41 pm
por jashin
Tutorial: Traduccion de aplicaciones JAVA - Moviles [By :: SmartGenius :: ]

Iniciado por ProcessKill

Respuestas: 0
Vistas: 2421
Último mensaje Febrero 24, 2010, 04:26:07 pm
por ProcessKill