{"id":18597318,"url":"https://github.com/wiremoons/passgen","last_synced_at":"2025-04-10T17:30:53.201Z","repository":{"id":24325030,"uuid":"27721845","full_name":"wiremoons/passgen","owner":"wiremoons","description":"Password generator using a library of three letter words - written in Go","archived":false,"fork":false,"pushed_at":"2023-05-07T10:40:18.000Z","size":11366,"stargazers_count":6,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-06-19T11:16:29.260Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wiremoons.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-12-08T15:43:20.000Z","updated_at":"2023-05-07T09:46:49.000Z","dependencies_parsed_at":"2024-06-19T11:15:14.084Z","dependency_job_id":"a48c3666-262c-4895-b010-f58e097afa8c","html_url":"https://github.com/wiremoons/passgen","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiremoons%2Fpassgen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiremoons%2Fpassgen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiremoons%2Fpassgen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiremoons%2Fpassgen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wiremoons","download_url":"https://codeload.github.com/wiremoons/passgen/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223441947,"owners_count":17145680,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T01:27:40.303Z","updated_at":"2024-11-07T01:27:40.831Z","avatar_url":"https://github.com/wiremoons.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![MIT licensed](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/hyperium/hyper/master/LICENSE)\n\n## THREE WORD - PASSWORD GENERATOR\n\n## Application Summary\n\nA simple command line application written to generate a random password created\nfrom a pool of English three letter words.\n\n### About\n\nThis application will generate password suggestions based on a pool of\nover 1,000 three letter English words. The words are selected\nfrom the pool randomly, and then displayed to the screen so you can\nchoose one for use as a very secure password.\n\nIt is important that you combine the three letter words together to\nform a single string of characters (without the spaces)\u0026mdash;to\nobtain a password with a minimum length on 9 characters. Longer\ncombinations are stronger, but unfortunately not all sites or computer\nsystems accept really long passwords still.\n\nYou can of course add digits/numbers to your password also, and\npunctuation characters too if you wish\u0026mdash;but it would be wiser to\nkeep the password simple, and easy to remember, but change it more\nfrequently instead, using a fresh newly generated one every few weeks.\n\nThe application outputs mixed case passwords also. The switching of certain password letters to upper case is also done randomly, so as to enhance the overall entropy of the resultant password. \n\nAdditionally with each password suggested, a randomly generated number is provided, which can be include it in the password you select from the outputs, should you wish.\n\n### Application Usage\n\nThe program is run from a command prompt\u0026mdash;so on Windows using\nPowershell or cmd.exe, and on Linux or MacOSX in a Terminal\nwindow using a shell such as bash. \n\nWhen the program is run without any command line arguments, it displays the following output:\n\n```\n\n                        THREE WORD - PASSWORD GENERATOR\n                        ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\n• Number of three letter words available in the pool is: 1312\n• Number of three letter words to include in the suggested password is: 3\n        • Password character length will therefore be: 9\n• Mixed case passwords to be provided: true\n• Offering 3 suggested passwords for your consideration:\n\n        off due lar    offduelar    OFfdUelAr    50\n        lep poa fid    leppoafid    lEpPoAfid    19\n        mos box sei    mosboxsei    moSbOXSEi    15\n\nTo change the password suggestion output shown above, use the command line options.\nRun the program as follows for more help:  passgen.exe -h\n\nAll is well\n```\nUsing the command line parameters, you can also use `passgen` in the following ways:\n\nIf you need to generate a 12 character password randomly created from three\nletter words\u0026mdash;perhaps as part of a command line pipe, you could use this\nfollowing options:\n```\n./passgen -q -r -w 4\njeealtmimwha\n```\nOr as above - but include random mixed case in the password also:\n```\n./passgen -q -r -w 4 -c\npaxGoADEvbIt\n```\nor just generate a random block of output from the three letter words, and\ninclude mixed case:\n```\n./passgen -q -r -w 200 -c\nONyKORMirpLunoGOPtYePpUygJuROWsonSoxBaTLACarkDiGdaLDuNdSOLYmfiXhAYyaDPASDUo\nFagthegOovLyPasDALhoeEmSwrYHAJlaGCaWSUNSalPulISmUTuCoPtoOGASlowlEumacFAAEnd\nwEtYAKaInGIfIDENixvAReRSaFtFaadAganISUQmUddElAYSFeHmAwDOmshABUswedTetVexDzO\nLiglEpUrNYoNGaTKosOSEAlBdAMpULHOGERMTskkiPdIStsKCUTAysRoEawNganIFFThyARtgoX\naLFDIfLAtNAssOvhOytUTuEYLeeLoXrETGIDnAtRagORDtOpdIFcadDoeZuztOElYMErEYeHwaT\nweeNothONdeWpiAEaUDodSEgKiSUDSmiSpsTSisRoceHsReClODPIgUSEPEWfesmOcjiGnOtoUR\noPsmAareXDoGMAmaiSTidJEthotgNutHYMoNMoEmOIBAlauawiTorcsUbnubDOTTIgVETbOSbOP\nSALcoxLumEcuaFToOFuLEkIfYOBohsAbaGUSfuNgOOHonZaSSAZWAEtoCfeWREDCABPosvAVaah\n```\n\nThe full list of command line arguments available are shown below, and also when you run: `passgen -help`:\n```\nUsage of ./passgen:\n  -c=false:     USE: '-c=true' to get mixed case passwords. Note: useful with -q only [DEFAULT: lowercase]\n  -h=false:     USE: '-h' to provide more detailed help about this program\n  -q=false:     USE: '-q=true' to obtain just ONE password - no other screen output [DEFAULT: additional info output]\n  -r=false:     USE: '-r=true' to remove spaces. Note: useful with -q only [DEFAULT: with spaces]\n  -s=3:         USE: '-s no.' where no. is the number of password suggestions offered [DEFAULT: 3]\n  -v=false:     USE: '-v=true.' display the application version [DEFAULT: false]\n  -w=3:         USE: '-w no.' where no. is the number of three letter words to use [DEFAULT: 3]\n```\nThe command line options are explained in more detail below:\n- **-c** : 'c' stands for 'case'. Used to get mixed case passwords. **Note:** useful with `-q` only\n- **-h** : 'h' stands for 'help'. if run with the `-h` option a screen of help text will be displayed\n- **-s** : 's' stands for 'suggestion'. By default three passwords will be suggested. Change by adding a different number, so `-s 5` would provide five passwords.\n- **-w** : 'w' stands for 'word'. By default the suggested passwords consist of three x three letter words, so 9 characters in length. If you wanted a longer password length, you can change the number of words\u0026mdash;so using `-w 4` would provide four words instead, giving a password length of 12 characters.\n- **-q** : 'q' stands for 'quiet'. This option only outputs ONE password (optionally at the length specified with -w) and no other text, so useful for using with command line pipes. Use with option `-r` to also remove spaces in the password and the `-c` options to obtain a mixed case password suggestion.\n- **-r** : 'r' stands for 'remove'. This options removes any spaces from the password suggestions that are output **Note:** useful with `-q` only\n- **-v** : 'v' stands for 'version'. This options only outputs the version of the application\n\n### Downloading the Application\n\nPre-compiled binaries are available from the Release page below. These are provide for Windows (32bit and 64bit), MacOSX (64bit), and Linux (64bit):\n\n- [passgen Release 0.7.0](https://github.com/wiremoons/passgen/releases/tag/0.7.0)\n- [passgen Pre-Release 0.5](https://github.com/wiremoons/passgen/releases/tag/0.5)\n- [passgen Pre-Release 0.4](https://github.com/wiremoons/passgen/releases/tag/0.4)\n\nFinal compiled binary versions for Linux, Windows, macOS and FreeBSD are available in the `binaries/` sub folder\nof this GitHub repo. The functionality is the same as the *0.7.0* release. Future versions of the application will \nhave an adjusted appearance - so please one of these binaries if you dislike the newer version.\n\n### Compiling the Program\n\nAssuming you already have Go installed and set-up on your computer—you\ncan download and install with the go command:\n\n```\ngo get -u -v github.com/wiremoons/passgen\n```\n\nThere is also a `Makefile` that I use to cross compile the program for Linux (32 and 64 bit versions for Intel \nand ARM/Raspberry Pi), Windows (32 bit and 64 bit versions for Intel and 64 bit ARM), FreeBSD (64 bit version), \nand macOS (64 bit versions for Intel and Apple Silicon arm64).\n\nThis can be done (assuming you have `make` installed your computer, and Go set-up correctly) by downloading the source zip file or Git cloning the `passgen` repo with the command:\n\n```\ngit clone https://github.com/wiremoons/passgen/\n```\n\nAfter you have a copy of the source code, you can use the 'Makefile'. Read the Makefile for the options - but to get a copy of all the binary version run:\n\n```\nmake all\n```\n\nYou can also run the command: `make help` for further assistance.\n\n## To Do\n\nThe following enhancements are planned in the future:\n\n- TODO - maybe check for newer version and update if needed?\n- TODO - add support for tags and better versioning info on compile\n- TODO - update the interface with colour output options etc.\n\n\n## License\n\nThis program is licensed under the \"MIT License\". See\nhttp://opensource.org/licenses/mit for more details.\n\nA copy of the license is available\n[here](https://github.com/wiremoons/passgen/blob/master/LICENSE).\n\n## OTHER INFORMATION\n\n- Latest version is kept on GitHub here: [Wiremoons GitHub Pages](https://github.com/wiremoons)\n- The program is written in Go - more information here: [Go](http://www.golang.org/)\n- The program was written by Simon Rowe, and is licensed under [The MIT License (MIT)](http://opensource.org/licenses/mit)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiremoons%2Fpassgen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwiremoons%2Fpassgen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiremoons%2Fpassgen/lists"}