
小さな Go CLI で、柔軟な文字セットと除外設定を備えた安全なランダムパスワードを生成します。
暗号学的に安全な乱数生成には
crypto/randを使用しています。文字セットフラグが指定されない場合、デフォルトですべてのセットが有効になります。
# 最新版
go install github.com/bilalbaraz/passgen@latest
# 特定のバージョン
go install github.com/bilalbaraz/passgen@<version>
brew tap bilalbaraz/tap
brew install passgen
wget -L https://github.com/bilalbaraz/passgen/releases/latest/download/passgen_linux_amd64.zip \
&& unzip passgen_linux_amd64.zip \
&& sudo mv passgen /usr/local/bin/ \
&& rm passgen_linux_amd64.zip
wget -L https://github.com/bilalbaraz/passgen/releases/latest/download/passgen_linux_arm64.zip \
&& unzip passgen_linux_arm64.zip \
&& sudo mv passgen /usr/local/bin/ \
&& rm passgen_linux_arm64.zip
# 基本(デフォルトですべての文字セット)
passgen --len 16 --count 3
# 小文字/大文字/数字のみ
passgen --len 24 --count 5 --lower --upper --digits
# 記号のみ、"@$" を除外
passgen --len 20 --symbols --exclude "@$"
# 曖昧な文字を除外 (0 O 1 l I)
passgen --len 16 --no-ambiguous
# 生成したパスワードをクリップボードにコピー
passgen --len 20 --count 3 --copy
# 最初のパスワードをターミナルにQRコードとして表示(-count 1 が必要)
passgen --len 20 --qr
go run .
go build .
go run ./cmd/passgen
go build ./cmd/passgen
go test -v ./...
--len <n> または -l <n>--lower, --upper, --digits, --symbols--count <n> または -c <n>--exclude "..." または -x "..."--no-ambiguous--copy または -p--qr または ( の場合のみ有効)設定ファイルはありません。すべての動作はCLIフラグで制御します。
-copy は pbcopy(macOS)、clip(Windows)、または wl-copy/xclip(Linux)を使用します。-q--count 1-h / --help