Skip to main content

Introduction

The hash_sha512 function returns the SHA-512 hash of a scalar value as a 128-character hexadecimal string. Use it when your security policy or compliance requirements demand the strongest standard hash available, or when you need a longer digest than SHA-256 provides. SHA-512 produces a 512-bit digest, making it the most collision-resistant of the SHA hash functions available in APL. It’s well suited for high-security fingerprinting, long-term integrity verification, and compliance use cases. For most everyday hashing tasks, hash_sha256 is sufficient.

For users of other query languages

If you come from other query languages, this section explains how to adjust your existing queries to achieve the same results in APL.
Splunk provides the sha512(X) function that returns a 128-character hex string. APL’s hash_sha512 works the same way.
... | eval hashed = sha512(id)
ANSI SQL has no standard SHA-512 function. PostgreSQL provides encode(digest(value, 'sha512'), 'hex'). APL’s hash_sha512 returns the same 128-character lowercase hex digest.
SELECT encode(digest(id, 'sha512'), 'hex') AS hashed FROM sample_http_logs

Usage

Syntax

hash_sha512(source)

Parameters

NameTypeRequiredDescription
sourcescalarYesThe value to hash. APL converts it to a string before hashing.

Returns

The SHA-512 hash of source as a 128-character lowercase hexadecimal string.

Use case examples

Anonymize user IDs with a maximum-strength hash before publishing compliance-sensitive usage summaries.Query
['sample-http-logs']
| extend hashed_id = hash_sha512(id)
| summarize request_count = count() by hashed_id
| top 5 by request_count
Run in PlaygroundOutput
hashed_idrequest_count
0878a61b503dd5a9fe9ea3545d6d3bd41c3b50a47f3594cb8bbab3e47558d68fc8fcc409cd0831e91afc4e609ef9da84e0696c50354ad86b25f2609efef6a834128
95c6eacdd41170b129c3c287cfe088d4fafea34e371422b94eb78b9653a89d4132af33ef39dd6b3d80e18c33b21ae167ec9e9c2d820860689c647ffb725498c497
cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e85
The query uses SHA-512 to produce maximum-strength anonymized user keys before aggregating request counts.
  • hash_sha256: Returns a 64-character SHA-256 hex digest. Use hash_sha256 when SHA-256 strength is sufficient and you prefer shorter digests.
  • hash_sha1: Returns a 40-character SHA-1 hex digest. SHA-1 is deprecated for security use; prefer hash_sha512.
  • hash_md5: Returns a 32-character MD5 hex digest. Not cryptographically safe; use hash_sha512 for security contexts.
  • hash: Returns a signed 64-bit integer hash. Use hash when you need a compact numeric key rather than a hex string.