gs_encrypt
背景信息
GaussDB 200提供了gs_encrypt工具为输入的明文字符串进行加密操作。
语法
gs_encrypt [OPTION]... PLAINTEXT说明:
“PLAINTEXT”前面不需要加短选项或长选项。“PLAINTEXT”是需要加密的明文字符串。
参数说明
OPTION的取值如下所示:
- -?, --help
显示帮助信息。
- -V, --version
显示版本号信息。
- -k PASSWORD, --key=PASSWORD
加密操作时使用的明文密钥。
- -v VectorValue,--vector=VectorValue
加密操作时使用的随机数。字符串长度必须等于16。
- -f FilePrefix, --file-prefix=FilePrefix
加密操作时使用的cipher和rand文件前缀字符串。cipher和rand文件必须存放在$GAUSSHOME/bin目录下。
- -B Value,--key-base64=Value
加密时使用的明文密钥,以base64编码。
- -D Value, --vector-base64=Value
加密时使用的随机数,以base64编码。base64编码前的字符串长度必须为16。
- -N, --key-name=value
在KMS服务器上创建的集群密钥名称,仅支持小写字母,数字和下划线,长度3至20位。
- -U, --kms-url-=value
指定数据库透明加密特性使用的KMS服务的地址。
地址格式为:kms://<HTTP协议>@<KMS实例1的主机名>;<KMS实例2的主机名>...:<KMS实例的HTTP端口号>/kms 。
示例:kms://https@host1;host2:29800/kms ,用户请根据实际KMS服务URL填写。
- -I, --init=value
指集群使用加密算法。 必须为SM4-CTR-128或者AES-CTR-128。
示例
示例1: 通过输入key和vector明文值来对明文字符串进行加密操作。
gs_encrypt -k gauss@123 -v 1234567890123456 test_encrypt命令回显:
zBN2LnZwvqSalQeqlhjHdzEyMzQ1Njc4OTAxMjM0NTY=示例2: 已经存在cipher和rand文件,通过文件前缀来对明文字符串进行加密操作。
- 生成cipher和rand文件
gs_guc generate -S Mppdb@123 -D $GAUSSHOME/bin -o test命令回显:
gs_guc encrypt -S ***- 执行加密操作
gs_encrypt -f test test_encrypt命令回显:
fZjSsJMnyihCER3sH+z7FqPuVPjVi6gt1uG9I6NiVZ0=示例3: 通过输入base64加密后的key和vector密文来对明文字符串进行加密操作。
- 输入base64加密后的key
python >>> import base64 >>> print base64.b64encode("Gauss@123");命令回显:
R2F1c3NAMTIz- 输入base64加密后vector密文
>>> print base64.b64encode("1234567890abcdef");命令回显:
MTIzNDU2Nzg5MGFiY2RlZg==- 执行加密操作
gs_encrypt -B R2F1c3NAMTIz -D MTIzNDU2Nzg5MGFiY2RlZg== test_encrypt命令回显:
3UiikfcFNY1FiJWL8Sbi2zEyMzQ1Njc4OTBhYmNkZWY=
查看更多:华为GaussDB 200 服务端工具「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」关注作者【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。评论




