hash_sha512
This page explains how to use the hash_sha512 function in APL.
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.
Usage
Syntax
hash_sha512(source)Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| source | scalar | Yes | The 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_countOutput
| hashed_id | request_count |
|---|---|
| 0878a61b503dd5a9fe9ea3545d6d3bd41c3b50a47f3594cb8bbab3e47558d68fc8fcc409cd0831e91afc4e609ef9da84e0696c50354ad86b25f2609efef6a834 | 128 |
| 95c6eacdd41170b129c3c287cfe088d4fafea34e371422b94eb78b9653a89d4132af33ef39dd6b3d80e18c33b21ae167ec9e9c2d820860689c647ffb725498c4 | 97 |
| cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e | 85 |
The query uses SHA-512 to produce maximum-strength anonymized user keys before aggregating request counts.
Fingerprint span IDs with SHA-512 for use in high-security audit trails.
Query
['otel-demo-traces']
| extend hashed_span = hash_sha512(span_id)
| project _time, ['service.name'], hashed_span, duration
| take 10Output
| _time | service.name | hashed_span | duration |
|---|---|---|---|
| 2024-01-15 10:23:01 | frontend | 0878a61b503dd5a9fe9ea3545d6d3bd41c3b50a47f3594cb8bbab3e47558d68f... | 320ms |
| 2024-01-15 10:23:02 | checkout | 95c6eacdd41170b129c3c287cfe088d4fafea34e371422b94eb78b9653a89d41... | 875ms |
| 2024-01-15 10:23:03 | cart | cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce... | 140ms |
The query outputs SHA-512 fingerprints of span IDs for external audit systems that require maximum-length digests.
List of related functions
- hash_sha256: Returns a 64-character SHA-256 hex digest. Use
hash_sha256when 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_sha512for security contexts. - hash: Returns a signed 64-bit integer hash. Use
hashwhen you need a compact numeric key rather than a hex string.