LoginSignup
1
1

More than 5 years have passed since last update.

[GCP] Cloud KMS(CLOUD KEY MANAGEMENT SERVICE)で暗号化と復号

Last updated at Posted at 2018-12-01

概要

GCPサービスのCloud KMSを使い、暗号化と復号を行う。gloudコマンドから行う。
ファイルの暗号化と復号が一般的だが、標準入力を使う方法も紹介する。

KMSのサービスについては、公式ドキュメントを参照。

事前準備

  • GCPのWebコンソールから(gcloudコマンドからでも良いが)、キーリングとキーを作成する。

  • 適当なファイルを作成する。

$ echo "Hello" > hello.txt

ファイルの暗号化と復号

# 暗号化
$ gcloud kms encrypt --ciphertext-file=hello.txt.enc --plaintext-file=hello.txt \
    --key my-key --keyring my-ring --location global --project my-project

# 復号
$ gcloud kms decrypt --ciphertext-file=hello.txt.enc --plaintext-file=hello.txt.dec \
    --key my-key --keyring my-ring --location global --project my-project

$ cat hello.txt.dec
Hello

標準入力からデータを受け取って、暗号化と復号

# 暗号化
$ echo -n "Hello" | gcloud kms encrypt \
  --location global \
  --keyring my-ring \
  --key my-key \
  --plaintext-file - \
  --ciphertext-file - \
  --project my-project
 | base64

# 復号(復号するデータは自分の環境のものに置き換える)
$ echo -n "my-encrypted-data" | base64 -D | gcloud kms decrypt \
 --location global \
 --keyring my-ring \
 --key my-key \
 --ciphertext-file - \
 --plaintext-file -

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1