Tinkey は、鍵を管理するための Tink のコマンドライン ユーティリティです。Tinkey を使用すると、リモート KMS に保存されている鍵暗号鍵で鍵セットを暗号化または復号できます。Tinkey には、AWS KMS と Google Cloud KMS のサポートが組み込まれています。
インストール
Tinkey は、ビルド済みのバイナリからインストールすることも、Homebrew を使用することも、Tink ソースからビルドすることもできます。
ビルド済みのバイナリ
Tinkey の最新リリースは 1.14.0(ダウンロード)です。Linux、macOS、Windows で動作します。
Homebrew
Homebrew を使用して Tinkey をインストールするには、次のコマンドを実行します。
brew tap tink-crypto/tink-tinkey https://github.com/tink-crypto/tink-tinkey
brew install tinkey
ソースから
Tink のソースコードから最新バージョンの Tinkey をビルドするには、Bazelisk で Bazel を使用します。
TINKEY_URL="https://github.com/tink-crypto/tink-tinkey/archive/refs/tags/v1.14.0.zip"
TINKEY_SHA256="0ef4cd6a01e4b500c33a782dc34eb29858d0e0399022fa9e94b4ad0837190dc1"
curl -LsS "${TINKEY_URL}" -o tinkey.zip
echo "${TINKEY_SHA256} tinkey.zip" | sha256sum -c
unzip tinkey.zip && cd "tink-tinkey-1.14.0"
bazelisk build //:tinkey
これにより、バイナリ bazel-bin/tinkey が生成されます。
コマンド リファレンス
Tinkey を使用して、鍵の生成や、鍵の暗号化、復号、ローテーションなどの管理タスクを行うことができます。
表に記載されているコマンドを使用するための構文は tinkey <command>
[<args>] です。
| コマンド | アクション |
|---|---|
help |
使用可能なすべてのコマンドのヘルプ メッセージを出力します。 |
add-key |
新しい鍵を生成して鍵セットに追加します。 |
convert-keyset |
キーセットの形式の変更、暗号化、復号を行います。 |
create-keyset |
新しい鍵セットを作成します。 |
create-public-keyset |
秘密鍵セットから公開鍵セットを作成します。 |
list-key-templates |
サポートされているすべての鍵テンプレートを一覧表示します。 |
delete-key |
鍵セット内の指定された鍵を削除します。 |
disable-key |
鍵セット内の指定された鍵を無効にします。 |
enable-key |
鍵セット内の指定された鍵を有効にします。 |
list-keyset |
鍵セット内の鍵を一覧表示します。 |
promote-key |
指定されたキーをプライマリに昇格します。 |
rotate-keyset |
[非推奨] 新しい鍵を追加して、それをメインにします。(代わりに、まず add-key で新しい鍵を追加し、後で promote-key で明示的にプライマリにすることをおすすめします。分散システムでは、新しく追加された鍵をプライマリに昇格する前に、すべてのサーバーで利用可能であることを確認する必要があります。 |