GNKF: NKF ぽいなにか の v0.6.0 をリリースした

no extension

Go 言語における文字列処理の習作 gnkf の v0.6.0 をリリースした。

このバージョンで指定した文字列を BCrypt アルゴリズムで符号化する機能を追加した。

$ gnkf bcrypt -h
Hash and compare by BCrypt.

Usage:
  gnkf bcrypt [flags] string [string...]

Aliases:
  bcrypt, bc

Flags:
      --compare string   compare to BCrypt hashed string
  -c, --cost int         BCrypt cost (4-31) (default 10)
  -h, --help             help for bcrypt

Global Flags:
      --debug   for debug

こんな感じで使う。

$ gnkf bc password
$2a$10$ES0KxMf9p.t0FEMp8WB6we8X43rMzfXb9r5WvFeUSk8Q2z3wdjrCS

符号化した文字列を検証することもできる。

$ gnkf bc --compare '$2a$10$ES0KxMf9p.t0FEMp8WB6we8X43rMzfXb9r5WvFeUSk8Q2z3wdjrCS' foo bar password
compare BCrypt hashed string '$2a$10$ES0KxMf9p.t0FEMp8WB6we8X43rMzfXb9r5WvFeUSk8Q2z3wdjrCS' to...
foo : crypto/bcrypt: hashedPassword is not the hash of the given password
bar : crypto/bcrypt: hashedPassword is not the hash of the given password
password : match!

いやね。 最初は Java のパスワード処理を検証するミニツールを作ってたんだけど,符号化するところだけチェックすればいいのなら gnkf に組み込んじゃえばいいぢゃん,と思いついて「えいやっ」で組み込んでしまった。 反省はしない。

悪用しないように(笑)

ブックマーク

参考図書

photo
プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)
Alan A.A. Donovan (著), Brian W. Kernighan (著), 柴田 芳樹 (翻訳)
丸善出版 2016-06-20
単行本(ソフトカバー)
4621300253 (ASIN), 9784621300251 (EAN), 4621300253 (ISBN), 9784621300251 (ISBN)
評価     

著者のひとりは(あの「バイブル」とも呼ばれる)通称 “K&R” の K のほうである。この本は Go 言語の教科書と言ってもいいだろう。

reviewed by Spiegel on 2016-07-13 (powered by PA-APIv5)