わけあってHTTP Signatureの実装をしており、SHA-256と仲良くしようと頑張っている。
しかし、HTTP上ではSHA-256ダイジェストはBase64で表現されることが多い一方で、linuxでsha256sumコマンドを使ってもhex形式で結果が返るので、結果が正しいかすぐ確認できない。
調べるとxxdコマンドを使うのが良いことがわかった。
$ echo -n '{}' | sha256sum | xxd -r -p | base64 RBNvo1WzZ4oRRq0W9+hknpT7T8If536DEMBg9hyq/4o=
xxdはhexフォーマットのダンプを作成したり、それを戻したりするツール。-rオプションでhex形式をバイナリに戻し、-pオプションでそれをそのまま出力させている。