Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: eduardo17445 en 28 Mayo 2014, 01:20 am



Título: buenas pueden darme una idea
Publicado por: eduardo17445 en 28 Mayo 2014, 01:20 am
de como hacer una contraseña aleatoria de una longitud


Título: Re: buenas pueden darme una idea
Publicado por: x64core en 28 Mayo 2014, 01:22 am
de como hacer una contraseña aleatoria de una longitud
a que te referis con 'de una longitud' ? De todos modos no especificas más detalles. podes usar rand


Título: Re: buenas pueden darme una idea
Publicado por: engel lex en 28 Mayo 2014, 01:30 am
que tal si muestras lo que llevas de código, o como crees que es y te decimos como corregirlo, resolverlo o mejorarlo? dale! piensa un poco que puedes usar


Título: Re: buenas pueden darme una idea
Publicado por: x64core en 28 Mayo 2014, 01:32 am
que tal si muestras lo que llevas de código, o como crees que es y te decimos como corregirlo, resolverlo o mejorarlo? dale! piensa un poco que puedes usar
Cómo el podria mostrar código si lo que esta pidiendo es una idea de como programarlo?


Título: Re: buenas pueden darme una idea
Publicado por: eduardo17445 en 28 Mayo 2014, 01:35 am
OSEA DEL NUMERO QUE LE ASIGNE A LA LONGITUD
#include <iostream>
#include <conio.h>
using namespace std;
class password{
      int l;
      int c;
      public:
             void ingresar();
             void esfuerte();
             void mostrar();
             password();//CONSTRUCTOR POR DEFECTO
             password(int l,int c);CONSTRUCTOR ALEATORIO
             };
            
             password::password()
             {
               int longitud=0;
               int contrase=0;
              }
              password::password(int longitud,int contrase)
              {
                 if(longitud==8)              
                    contrase=c;
                     longitud=l;  
                                        
                
              }
              void password::ingresar()
             {
                  cout<<"longitud";
                  cin>>l;
                  cout<<"contraseña";
                  cin>>c;
             }
             void password::esfuerte()
             {
              MAYUSCULA=
                  
              
             void password::mostrar()
             {
                  cout<<"longitud"<<l;
                  cout<<"contraseña"<<c;
             }
            
                 int main()
                 {
                     password a;
                     a.ingresar();
                     a.mostrar();
                     system("pause");
                     return 0;
                 }


Título: Re: buenas pueden darme una idea
Publicado por: x64core en 28 Mayo 2014, 01:43 am
@eduardo17445:
No escribas en mayusculs y solamente copies y peges sin explicacion ni nada sólo por pegar y si vas a pegar código
hacelo con GeSHi. Ya te dije que lo hagas con rand: http://www.cplusplus.com/reference/cstdlib/rand/
De nuevo no especificas detalles veo que 'c' es de tipo int.



Título: Re: buenas pueden darme una idea
Publicado por: eduardo17445 en 28 Mayo 2014, 01:46 am
SI POR QUE la contraseña q es c y la longitud que es l las puse enteras


Título: Re: buenas pueden darme una idea
Publicado por: x64core en 28 Mayo 2014, 01:59 am
Ahi mismo en el enlace hay un ejemplo. esto genera valor entero aleatorio:

Código:
unsigned long GetRandomInteger()
{
    return (rand() & 0xFFFF)  | ((rand() & 0xFFFF) << 16);
}


Título: Re: buenas pueden darme una idea
Publicado por: engel lex en 28 Mayo 2014, 02:07 am
si quieres una contraseña alfanumerica la idea seria la siguiente...

crea un array de carateres (lo llamaré base) con todos los que creas que vayas a usar, (minusculas, mayusculas, numeros, etc) este será fijo


creas un array con la logitud necesaria de caracteres a usar (lo llamaré pass)

con un for vas recorriendo pass y en cada carácter usas rand para sacar al azar un valor de base, y lo introduces en la posición que estés, esto te permitirá hacer un generador flexible de cuantos caracteres quieras y con la tabla que te guste :P


-----modificado-----

incluso puedes acotar rand para que solo saque caracteres especificos, por ejemplo del 10 al 36 que teóricamente serían mayusculas, del 0 al 10 que serían numeros, o del 0 al 36 que serían numeros y mayúsculas


Título: Re: buenas pueden darme una idea
Publicado por: x64core en 28 Mayo 2014, 02:13 am
si quieres una contraseña alfanumerica la idea seria la siguiente...

crea un array de carateres (lo llamaré base) con todos los que creas que vayas a usar, (minusculas, mayusculas, numeros, etc) este será fijo


creas un array con la logitud necesaria de caracteres a usar (lo llamaré pass)

con un for vas recorriendo pass y en cada carácter usas rand para sacar al azar un valor de base, y lo introduces en la posición que estés, esto te permitirá hacer un generador flexible de cuantos caracteres quieras y con la tabla que te guste :P
Entonces si es alfanumerica podes usar un bucle comprobando el código ascii del valor numerico devuelto por rand




Título: Re: buenas pueden darme una idea
Publicado por: engel lex en 28 Mayo 2014, 02:19 am
Entonces si es alfanumerica podes usar un bucle comprobando el código ascii del valor numerico devuelto por rand

también, pero creo que es más fácil acotar los valores ya que si no tienes que hacer los saltos que hay entre números y letras, o entre mayúsculas y minusculas


Título: Re: buenas pueden darme una idea
Publicado por: x64core en 28 Mayo 2014, 03:11 am
también, pero creo que es más fácil acotar los valores ya que si no tienes que hacer los saltos que hay entre números y letras, o entre mayúsculas y minusculas
Acortar los valores a que refieres a obtener sólo valores de un determinado rango? siempre vas a terminar
usando condiciones ya que los valores ascii de las mayusculas, minusculas y numeros no son correlativos.