Hash directive
The HASH directive generates a message digest.
Syntax
hash :column 'algorithm' [encode (true/false)]
The column
 is the name of the column to which the hashing <algorithm>
 is applied.
If encode
 is set to true
, the hashed digest is encoded as hex
 with left-padding zeroes. By default, encode
 is set to true
. To disable hex
 encoding, set encode
 to false.
Usage Notes
The HASH directive, when applied on a column
, will replace the content of the column with the message hash. No new columns are created with the application of this directive.
These algorithms are supported by the HASH directive:
BLAKE2B-160
BLAKE2B-256
BLAKE2B-384
BLAKE2B-512
GOST3411
GOST3411-2012-256
GOST3411-2012-512
KECCAK-224
KECCAK-256
KECCAK-288
KECCAK-384
KECCAK-512
MD2
MD4
MD5
RIPEMD128
RIPEMD160
RIPEMD256
RIPEMD320
SHA
SHA-1
SHA-224
SHA-256
SHA-384
SHA-512
SHA-512/224
SHA-512/256
SHA3-224
SHA3-256
SHA3-384
SHA3-512
Skein-1024-1024
Skein-1024-384
Skein-1024-512
Skein-256-128
Skein-256-160
Skein-256-224
Skein-256-256
Skein-512-128
Skein-512-160
Skein-512-224
Skein-512-256
Skein-512-384
Skein-512-512
SM3
Tiger
WHIRLPOOL
Example
Using this record as an example:
{
"message": "secret message"
}
Applying this directive:
hash :message 'SHA3-384'
generates a message digest and replaces the column with it:
The column message
 is replaced with the digest created using the SHA3-384 algorithm. The type of column is a string.
Note: By default, encoding is on. When encode
 is set to false
, the output column type is a byte array.
Created in 2020 by Google Inc.