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

  • 6 Respuestas
  • 10408 Vistas

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

Desconectado hackmin

  • *
  • Underc0der
  • Mensajes: 67
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
Código: Java
  1. package poo;
  2.  
  3. import java.util.Random;
  4.  
  5. public class Password {
  6.  
  7.    public static void main(You are not allowed to view links. Register or Login[] args) {
  8.       Password longitud = new Password(<img src="https://underc0de.org/foro/Smileys/default/cool.gif" alt="8&#41;" title="Cool" class="smiley" />;
  9.       int indice = longitud.Longitud;
  10.       int esFuerte = 0;
  11.      
  12.       for(int i = 1; i <= indice ;i++){
  13.          You are not allowed to view links. Register or Login.out.print(Password.generarPassword());
  14.           Password.GetSeguridadContraseña();
  15.       }
  16.       You are not allowed to view links. Register or Login.out.println();
  17.       You are not allowed to view links. Register or Login.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)(You are not allowed to view links. Register or Login.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  You are not allowed to view links. Register or Login 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: 5667
  • Actividad:
    60%
  • Country: ar
  • Reputación 37
  • ANTRAX
  • Skype: underc0de.org
  • Twitter: @Underc0de
    • Ver Perfil
    • Underc0de
    • Email
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
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: You are not allowed to view links. Register or Login
;9_ptq/dF/A*Lix]fIX)yl$)jZxCzV(`6H/g?vyD#o8>+ nBE.P?^-*$hiIAUyE*
En la web de kaspersky dice You are not allowed to view links. Register or Login

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

  • *
  • Underc0der
  • Mensajes: 45
  • Actividad:
    0%
  • Reputación 0
  • Skype: [email protected]
    • Ver Perfil
    • Email
Muy bueno,le ha dado ideas a este novato. :D graciad

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5667
  • Actividad:
    60%
  • Country: ar
  • Reputación 37
  • ANTRAX
  • Skype: underc0de.org
  • Twitter: @Underc0de
    • Ver Perfil
    • Underc0de
    • Email
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

  • *
  • Ex-Staff
  • *****
  • Mensajes: 1439
  • Actividad:
    0%
  • Reputación 1
  • [email protected]'s
  • Twitter: sniferl4bs
    • Ver Perfil
    • Snifer@L4bs
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
You are not allowed to view links. Register or Login


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
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: You are not allowed to view links. Register or Login
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

 

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

Iniciado por graphixx

Respuestas: 3
Vistas: 3785
Último mensaje Febrero 23, 2015, 10:13:28 am
por Hu3c0
Como compilar programas Java en la consola de comandos de Windows

Iniciado por tar3kw0rm3d

Respuestas: 2
Vistas: 4145
Último mensaje Junio 04, 2013, 02:55:07 pm
por tar3kw0rm3d
Cheat-Sheet: JAVA - Hoja Guía para que no se me olvide

Iniciado por Denisse

Respuestas: 0
Vistas: 277
Último mensaje Marzo 20, 2020, 03:09:32 am
por Denisse
Java Extremo [Video Cursos Completos] [Español] [ISO] 2009

Iniciado por graphixx

Respuestas: 9
Vistas: 9557
Último mensaje Diciembre 04, 2017, 02:36:34 am
por graphixx
Sobreescritura y SobreCarga de Métodos en Java ( Overriding y Overloading )

Iniciado por Expermicid

Respuestas: 0
Vistas: 2175
Último mensaje Noviembre 02, 2014, 05:02:04 pm
por Expermicid