Difference between revisions of "Hashing Module"

From BaseX Documentation
Jump to navigation Jump to search
Line 85: Line 85:
 
| '''Examples'''
 
| '''Examples'''
 
|
 
|
* {{Code|util:md5("", "MD5")}} returns {{Code|D41D8CD98F00B204E9800998ECF8427E}}.
+
* {{Code|util:hash-binary(xs:base64Binary(""), "MD5")}} returns {{Code|D41D8CD98F00B204E9800998ECF8427E}}.
* {{Code|util:md5("", "")}} raises an error.
 
 
|}
 
|}
  

Revision as of 01:30, 14 June 2012

This XQuery Module contains cryptographic hash functions.

Conventions

All functions in this module are assigned to the http://basex.org/modules/hash namespace, which is statically bound to the hash prefix.
All errors are assigned to the http://basex.org/errors namespace, which is statically bound to the bxerr prefix.

Functions

util:md5

Signatures util:md5($value as item()) as xs:hexBinary
Summary Computes the MD5 hash of the given $value, which may be a string or a binary item (xs:base64Binary, xs:hexBinary).
Examples
  • util:md5("BaseX") returns 0D65185C9E296311C0A2200179E479A2.
  • util:md5(xs:hexBinary("")) returns D41D8CD98F00B204E9800998ECF8427E.

util:sha1

Signatures util:sha1($value as item()) as xs:hexBinary
Summary Computes the SHA-1 hash of the given $value, which may be a string or a binary item (xs:base64Binary, xs:hexBinary).
Examples
  • util:sha1("BaseX") returns 3AD5958F0F27D5AFFDCA2957560F121D0597A4ED.
  • util:sha1(xs:hexBinary("")) returns DA39A3EE5E6B4B0D3255BFEF95601890AFD80709.

util:sha256

Signatures util:sha256($value as item()) as xs:hexBinary
Summary Computes the SHA-256 hash of the given $value, which may be a string or a binary item (xs:base64Binary, xs:hexBinary).
Examples
  • util:sha256("BaseX") returns 15D570763DEB75D728BB69643392873B835CCCC94A2F1E881909DA47662821A3.
  • util:sha256(xs:hexBinary("")) returns E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855.

util:hash

Signatures util:hash($value as xs:string, $algorithm as xs:string) as xs:hexBinary
Summary Computes the hash of the given string, using the specified $algorithm.
The following algorithms are supported: MD2, MD5, SHA-1,SHA-256,SHA-384, and SHA-512.
Errors HASH0001: the specified hashing algorithm is unknown.
Examples
  • util:hash("", "MD5") returns D41D8CD98F00B204E9800998ECF8427E.
  • util:hash("", "") raises an error.

util:hash-binary

Signatures util:hash-binary($value as basex:binary, $algorithm as xs:string) as xs:hexBinary
Summary Computes the hash of the given binary item (xs:base64Binary, xs:hexBinary), using the specified $algorithm.
The following algorithms are supported: MD2, MD5, SHA-1,SHA-256,SHA-384, and SHA-512.
Errors HASH0001: the specified hashing algorithm is unknown.
Examples
  • util:hash-binary(xs:base64Binary(""), "MD5") returns D41D8CD98F00B204E9800998ECF8427E.

Errors

Code Description
HASH0001 The specified hashing algorithm is unknown.

Changelog

This module was introduced with Version 7.3.