info:mot2passe

Ceci est une ancienne révision du document !


echo "usage: mot2passe length"
date +%s | sha256sum | base64 | head -c $1 ; echo    

si vous avez le malheur d'être sur unix et pas sur linux:

date +%s | sha256sum | base64 | ghead -c $1 ; echo

ce script a un défaut, il dépend de la date donc pas possible de générer plusieurs mots de passe; dans ce cas, utiliser p. ex. openssl:

openssl rand -base64 8 | sed 's/.$//g'

source et autres exemples https://www.howtogeek.com/howto/30184/10-ways-to-generate-a-random-password-from-the-command-line/

source: http://forum.ubuntu-fr.org/viewtopic.php?id=246040 (la source contient plein de caractères supplémentaires)

// Random ASCII password generator
// Compile it with g++
// Run it as ./name_of_the program length_desired

#include <cstdlib>
#include <iostream>
#include <climits>
#include <ctime>

const char ascii_table[] = {
    '0',    '1',    '2',    '3',
    '4',    '5',    '6',    '7',    '8',    '9',
    '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'
    };

int main(int argc, char ** argv)
{
    if (argc == 1 || !atoi(argv[1])) return EXIT_FAILURE;
    int numChars = sizeof(ascii_table) / sizeof(ascii_table[0]);
    srand(time(NULL)+getpid());
    for (unsigned int i = 0; i < atoi(argv[1]); ++i) {
        int k = (int) ((double)numChars * (rand() / (RAND_MAX + 1.0)));
        std::cout << ascii_table[k];
    }
    std::cout << std::endl;
    return EXIT_SUCCESS;
}
  • info/mot2passe.1620012850.txt.gz
  • Dernière modification : 2021/05/03 05:34
  • de radeff