Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 a 10 de 12
  1. #1
    Administrador Avatar de Cartoondivine
    Data de Ingresso
    Nov 2005
    Localização
    127.0.0.1
    Posts
    9.699

    Gerador de Senhas Seguras em Perl

    [center:2dwwfdf6]Gerador de Senhas Seguras[/center:2dwwfdf6]

    Oi pessoal, todo mundo sabe a importância de ter uma senha segura em qualquer situação nos dias de hj, tanto para serviços online, como e-mails, fóruns, e sites de relacionamentos quanto para arquivos internos, como pastas, documentos e etc.
    Pensando nisso, resolvi criar um script em Perl, mas procurando no Google eu percebi que tinham alguns já pronto, só que oq tinha em um, faltava no outro ou eram cometidos alguns exageros no script. Então, resolvi tendo base em alguns, criar um q gerasse uma senha com no mínimo doze caracteres randomicamente e salvasse esse resultado em um arquivo (.txt). Após mais de duas semanas mexendo nesses scripts, simplificando e ao mesmo tempo tendo erros na execução, ontem consegui que ele rodasse perfeitamente e hj estou postando para vcs.
    Mas eu pensei no seguinte, nem todos tm Perl instalado na máquina para rodar esse scrip, para atender a todos eu tinha q converter (.pl) para (.exe), pois bm, hj fiz essa conversão e esta bm funcional, vou disponibilizar o arquivo compilado junto com o script.

    Então vamos ao script:

    Código:
    #!/usr/bin/perl
    system("color 4");
    {
      print q {
      ##################################################################
      #                                                                #
      #                www.forum-invaders.com.br/phpbb/                #
      #                 cartoondivine - Administrador                  #
      #                                                                #
      ##################################################################
      }
    }
    sleep 3;
    system("color 7");
    my $senha;
    my $valor = "@ARGV";
    $valor =~ s/[^0-9]//g;
    
    if (!length $valor) { $valor = 12; }
    my @cars = ('a' .. 'z','A' .. 'Z',0 .. 9,qw(! ? ^ ~ @ # $ % & * - _ + = ));
    for (my $i = 0 ; $i < $valor ; $i++)
    
    {
          reverse $senha .= @cars[int(rand(@cars))];
    }
    
    print "\n$senha\n";
    
    {
    print "\n====================================\n";
    print "|   Salvar senha em um arquivo?    |\n";
    print "====================================\n\n";
    print "[s] Sim     [n] Nao\n";
    $salvar=<STDIN>;
    chomp($salvar);
    }
    
    if ($salvar eq "s")
    {
    print "\nDigite o nome para o arquivo: ";
    $arq=<STDIN>;
    chomp($arq);
    
    if ($arq =~ /[\.][t][x][t]$/)
    {
    $arq =~ s/[\.][t][x][t]$//gi;
    }
    
    open(ARQ,">$arq\.txt");
    {
    print ARQ "$senha\n";
    }
    close(ARQ);
    
    if (-e "$arq\.txt")
    {
    print "\nArquivo salvo com sucesso!\n";
    sleep 2
    }
    else
    {
    print "\nO arquivo nao foi salvo.\n";
    sleep 2
    }
    }
    # Comentários
    # Usage: script.pl ou script.pl [valor]
    # Example: perl script.pl 12
    Salve e execute conforme o indicado no cabeçalho do script.
    Ressalto mais uma vz q este script não é em todo meu, eu trabalhei em cima de vários até chegar a esse formato, então vai ficar como "by Cartoondivine" mesmo. Esse script é composto por pelo menos três outros, aos quais eu tive q editar e acrescentar.
    Agradeço ao "RØD GSA" pela ajuda indireta neste script, pois mtas das funções aqui foram tiradas de scripts dele, tal como o cabeçalho, que ficou idêntico ao código dele, mas isso se explica pq eu não achei forma melhor de expor oq o script faz, belo trabalho cara.

    Okay, agora vamos ao executável a partir desse código:
    Download

    Como Utilizar?
    Extraia o arquivo para seu desktop e dê dois cliques com o botão esquerdo do mouse em cima do executável. Após cinco segundos, será mostrado a senha gerada e as opções de salvar ou não a senha em um arquivo de texto. Digite [s] caso afirmativo e logo em seguida escolha um nome para esse arquivo. Tecle [Enter] e sua senha será salva em sua área de trabalho.

    Abraços! :mrgreen:

  2. #2
    Membro
    Data de Ingresso
    Jun 2008
    Localização
    Salvador, Bahia.
    Posts
    297

    Re: Gerador de Senhas Seguras em Perl

    Olá Cartoondivine, paz e luz!

    Cara, montei um desses em C - C++ junto com um frater do Viva o Linux.

    Segue:

    Código:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <time.h>
    
    int generate(int type);
    int save_key();
    void about(void);
    
    int key_num[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
    
    char key_lchar[52] = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
       
    char key_espec[17] = { '_', '.', '-', '$', '%', '/', '&', '(', ')', '[', ']', '?', '!', '@', '=', '+', '*' };
       
    int main()
    {
       int opc;
       int op1;
       int to1 = 1;
       int to2 = 2;
       int to3 = 3;
       int to4 = 4;
       
       printf("Key Generator 0.9, by morte137\n");
       printf("Escolha a opção...\n");
       printf("[1]Gerar senha\n");
       printf("[2]Sobre o Key Generator.\n");
       printf("[3]Sair\n");
       scanf("%d", &opc);
       
       if(opc == 1)
       {
          printf("Escolha a opção.\n");
          printf("[1]Senha com letras somente\n");
          printf("[2]Senha com numeros somente\n");
          printf("[3]Senha com Letras e numeros\n");
          printf("[4]Senhas com tudo, inclusive caracteres especiais\n");
          scanf("%d", &op1);
          
          if(op1 == 1)
             generate(to1);
          
          if(op1 == 2)
             generate(to2);
          
          if(op1 == 3)
             generate(to3);
          
          if(op1 == 4)
             generate(to4);
       }
       
       if(opc == 2)
          about();
       
       if(opc == 3)
          exit(0);
       
       return(0);
    }
          
    int generate(int type)
    {
       char *pass;
       int quant;
       int qtn;
       int n = 0;
       
       srand(time(NULL));
       pass = (char *) malloc(sizeof(char));
       
       if(type == 1)
       {
          printf("Digite a quantidade de caracteres que desenha.\n");
          scanf("%d", &quant);
          
          for(n = 0; n <= quant; n++)
          {
             printf("%c", key_lchar[rand()%57]);
             sleep(1);
          }
          printf("\n");
       }
       
       if(type == 2)
       {
          printf("Digite a quantidade de caracteres que desenha.\n");
          scanf("%d", &quant);
          
          for(n = 0; n <= quant; n++)
          {
             printf("%d", key_num[rand()%11]);
             sleep(1);
          }
          printf("\n");
       }
          
       if(type == 3)
       {
          printf("Digite a quantidade de caracteres que desenha.\n");
          scanf("%d", &quant);
          qtn = quant / 2;
          
          for(n = 0; n <= qtn; n++)
          {
             printf("%c", key_lchar[rand()%57]);
             printf("%d", key_num[rand()%11]);
             sleep(1);
          }
          printf("\n");
       }
       
       if(type == 4)
       {
          printf("Digite a quantidade de caracteres que desenha.\n");
          scanf("%d", &quant);
          qtn = quant / 2;
          
          for(n = 0; n <=qtn; n++)
          {
             printf("%c", key_lchar[rand()%57]);
             
             if(n % 2 == 0)
             {
                if((rand()%11) % 2 == 0)
                   printf("%c", key_espec[rand()%18]);
                
                else
                   printf("%d", key_num[rand()%11]);
             }
             
             else
                printf("%d", key_num[rand()%11]);
             
             sleep(1);
          }
          printf("\n");
       }
       
       free(pass);
       return(0);
    }
    
    void about(void)
    {
       printf("Key Generator 0.9.6\n");
       printf("Autor: Morte137 e Alexandre.exe\n");
       printf("Contato: morte137@gmail.com ou comercial_bravia@live.com\n");
       printf("Agradecimentos: GNU por seus ótimos manuais, além dos mesmos agradecimentos de sempre.\n");
       printf("O que haverá no 1.0: Interface Grafica\n");
    }
    Nunca desenvolvemos o 1.0 :mrgreen:
    [center:1t0hjwuw]It´s true: the time to the revolution is now![/center:1t0hjwuw]

    [center:1t0hjwuw]A vida é doce, a morte, um sonho.[/center:1t0hjwuw]

    [center:1t0hjwuw][/center:1t0hjwuw]

  3. #3
    Administrador Avatar de Cartoondivine
    Data de Ingresso
    Nov 2005
    Localização
    127.0.0.1
    Posts
    9.699
    Opa...boa Alexandre.exe, pena eu não saber C - C++ :cry:
    NO entanto, não tm como vc simplificar os caracteres? Vou te dar um exemplo aqui.
    Código:
    @cars=("a","b","c","d","e","f","g",
    "h","i","j","k","l","m","n","o","p","q",
    "r","s","t","u","v","x","y","w","z",
    "A","B","C","D","E","F","G","H","I","J",
    "K","L","M","N","O","P","Q","R","S","T",
    "U","V","X","Y","W","Z","1","2","3","4",
    "5","6","7","8","9","0");
    para...

    Código:
    @cars = ('a' .. 'z','A' .. 'Z',0 .. 9,qw(! ? ^ ~ @ # $ % & * - _ + = ));
    Veja, no primeiro código, sobre os caracteres, foi incluso todas as letras maiúsculas e minúsculas na unha e sem caracteres especiais, eu ia fazer aqui mas deu até preguiça por esse exemplo :shock: , sendo q podia simplificar, ficando só mais trabalhoso incluir alguns caracteres especiais 8)

    Enfim, é isso ai. Abraços! =)

  4. #4
    Membro
    Data de Ingresso
    Jun 2008
    Localização
    Salvador, Bahia.
    Posts
    297

    Re:

    Citação Postado originalmente por Cartoondivine
    Opa...boa Alexandre.exe, pena eu não saber C - C++ :cry:
    NO entanto, não tm como vc simplificar os caracteres? Vou te dar um exemplo aqui.
    Código:
    @cars=("a","b","c","d","e","f","g",
    "h","i","j","k","l","m","n","o","p","q",
    "r","s","t","u","v","x","y","w","z",
    "A","B","C","D","E","F","G","H","I","J",
    "K","L","M","N","O","P","Q","R","S","T",
    "U","V","X","Y","W","Z","1","2","3","4",
    "5","6","7","8","9","0");
    para...

    Código:
    @cars = ('a' .. 'z','A' .. 'Z',0 .. 9,qw(! ? ^ ~ @ # $ % & * - _ + = ));
    Veja, no primeiro código, sobre os caracteres, foi incluso todas as letras maiúsculas e minúsculas na unha e sem caracteres especiais, eu ia fazer aqui mas deu até preguiça por esse exemplo :shock: , sendo q podia simplificar, ficando só mais trabalhoso incluir alguns caracteres especiais 8)

    Enfim, é isso ai. Abraços! =)

    Olá Cartonndivine, paz e luz!

    Até que dá, mas toh com a maior preguiça :mrgreen:

    Acho que quem poderia ajudar mesmo é o Foxxdd.

    E ele sempre está online.

    Vou ver mais tarde se o faço.

    Abraços Fraternos!
    [center:1t0hjwuw]It´s true: the time to the revolution is now![/center:1t0hjwuw]

    [center:1t0hjwuw]A vida é doce, a morte, um sonho.[/center:1t0hjwuw]

    [center:1t0hjwuw][/center:1t0hjwuw]

  5. #5
    Ei cartonn

    Parabéns pelo feito, dias e dias correndo atrás , dando erro aqui ali e no final deu certo.
    Parabéns e que venham mais coisas boas.

    Beijus
    Luzinha

  6. #6
    Wannabe
    Data de Ingresso
    Apr 2007
    Localização
    Sao Paulo, Interior
    Posts
    420
    Legal o source

    estou pensando em fazer um em Java depois.. mas vou ter que rever bastante coisas pois faz tempo que nao abro aqui hhuauhauaha

    Abraços
    [center:105nilpl]Entre nos topicos, baixe as videos e aprenda![/center:105nilpl]

    [center:105nilpl]Curso de Eletrônica Digital

    Curso de Programação para Microcontrolador em C - PIC 16F628A[/center:105nilpl]
    [center:105nilpl]Não esqueça de dar um Uppp!!![/center:105nilpl]

  7. #7
    Administrador Avatar de Cartoondivine
    Data de Ingresso
    Nov 2005
    Localização
    127.0.0.1
    Posts
    9.699

    Re: Gerador de Senhas Seguras em Perl

    Ê laiá! Aqui estou aqui outra vz. 8)
    Seguinte, queria opiniões sobre esse code ai, oq vcs acham q pode ser melhorado, se poderia ter alguma outra função...lembrando q é um script relativamente simples, ao interpretar ele retorna uma senha de 12 caracteres e vc tm a opção de salvar em arquivo de texto ou não, para mais caracteres, é só entrar com o comando script.pl [valor] e terá o resultado, enfim...eu estava querendo colocar outras funções e de algum modo poder diminuir esse code ao máximo (sem perder funções), se alguém souber sobre isso ou tm alguma ideia q poderia ser implementada, gostaria mto de saber.

    Há um script para criar senhas para o Linux, no momento esqueci o nome, gostaria de fazer igual mas tô sem meios para tanto, se alguém souber de algo, plz, comenta ai tbm vai. ^^

  8. #8
    Newbie
    Data de Ingresso
    Aug 2007
    Posts
    38

    Re: Gerador de Senhas Seguras em Perl

    Muito bom testado e aprovado xD

    Parabens

  9. #9

    COMO USAR PIC 16F628A NO LUGAR DO TECLADO PS2

    ALGUEM PODERIA ME DAR UM HELP ......
    TENHO UM PIC 16F628A E QUERO USAR ELE EM UM PROGRAMA DE MUSICA QUERO SUBSTITUIR O TECLADO PS2 POR UMA INTERFACE Q USA O PIC 16F628A TIPO PARA EU ESCOLHER AS MUSICAS TENHO QUE PRESSIONAR NO TECLADO A LETRA (Q) PARA TOCAR A (W) PARA POR NOVA LISTA (E) E POR DIANTE .....
    ALGUEM SABE ME DIZER COMO ENCONTRO O FONTE, PODE SER EM C++ OU EM ASSEMBLE *.ASM

  10. #10
    Administrador Avatar de Cartoondivine
    Data de Ingresso
    Nov 2005
    Localização
    127.0.0.1
    Posts
    9.699

    Re: COMO USAR PIC 16F628A NO LUGAR DO TECLADO PS2

    Citação Postado originalmente por MAXELLP
    ALGUEM PODERIA ME DAR UM HELP ......
    TENHO UM PIC 16F628A E QUERO USAR ELE EM UM PROGRAMA DE MUSICA QUERO SUBSTITUIR O TECLADO PS2 POR UMA INTERFACE Q USA O PIC 16F628A TIPO PARA EU ESCOLHER AS MUSICAS TENHO QUE PRESSIONAR NO TECLADO A LETRA (Q) PARA TOCAR A (W) PARA POR NOVA LISTA (E) E POR DIANTE .....
    ALGUEM SABE ME DIZER COMO ENCONTRO O FONTE, PODE SER EM C++ OU EM ASSEMBLE *.ASM

    Cara...vc viu o conteúdo do meu tópico? Chega a ser até desrespeitoso postar algo que não tem correlação com o assunto tratado nele (pensei que alguém tinha postado algo para me ajudar no golfe), além de digitar em caixa alta não ser mto bem aceito em fóruns. Enfim, deixa eu voltar para meus estudos... :arrow:

Tópicos Similares

  1. [Tutorial] ~Criando Senhas Seguras e Fáceis de Lembrar~
    Por Bronson no fórum Matérias e Artigos
    Respostas: 11
    Último Post: 15 May 2009, 20:05
  2. Gerador de senhas seguras
    Por C0M3ND4D0R no fórum Matérias e Artigos
    Respostas: 1
    Último Post: 16 Apr 2008, 10:10
  3. [Matéria] Como criar senhas seguras
    Por Cartoondivine no fórum Segurança
    Respostas: 4
    Último Post: 25 Sep 2006, 21:49

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •