Difference between revisions of "Hashing Module"
Jump to navigation
Jump to search
(9 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
=Conventions= | =Conventions= | ||
− | |||
− | |||
All functions and errors in this module are assigned to the <code><nowiki>http://basex.org/modules/hash</nowiki></code> namespace, which is statically bound to the {{Code|hash}} prefix.<br/> | All functions and errors in this module are assigned to the <code><nowiki>http://basex.org/modules/hash</nowiki></code> namespace, which is statically bound to the {{Code|hash}} prefix.<br/> | ||
Line 11: | Line 9: | ||
==hash:md5== | ==hash:md5== | ||
{| width='100%' | {| width='100%' | ||
− | |- | + | |- valign="top" |
− | | width='120' | ''' | + | | width='120' | '''Signature''' |
− | | | + | |<pre>hash:md5( |
− | |- | + | $value as xs:anyAtomicType |
+ | ) as xs:base64Binary</pre> | ||
+ | |- valign="top" | ||
| '''Summary''' | | '''Summary''' | ||
− | |Computes the MD5 hash of the given {{Code|$value}}, which may be of type xs:string, xs:base64Binary, or xs:hexBinary. | + | |Computes the MD5 hash of the given {{Code|$value}}, which may be of type {{Code|xs:string}}, {{Code|xs:base64Binary}}, or {{Code|xs:hexBinary}}. |
− | |- | + | |- valign="top" |
| '''Examples''' | | '''Examples''' | ||
| | | | ||
Line 26: | Line 26: | ||
==hash:sha1== | ==hash:sha1== | ||
{| width='100%' | {| width='100%' | ||
− | |- | + | |- valign="top" |
− | | width='120' | ''' | + | | width='120' | '''Signature''' |
− | | | + | |<pre>hash:sha1( |
− | |- | + | $value as xs:anyAtomicType |
+ | ) as xs:base64Binary</pre> | ||
+ | |- valign="top" | ||
| '''Summary''' | | '''Summary''' | ||
− | |Computes the SHA-1 hash of the given {{Code|$value}}, which may be of type xs:string, xs:base64Binary, or xs:hexBinary. | + | |Computes the SHA-1 hash of the given {{Code|$value}}, which may be of type {{Code|xs:string}}, {{Code|xs:base64Binary}}, or {{Code|xs:hexBinary}}. |
− | |- | + | |- valign="top" |
| '''Examples''' | | '''Examples''' | ||
| | | | ||
Line 41: | Line 43: | ||
==hash:sha256== | ==hash:sha256== | ||
{| width='100%' | {| width='100%' | ||
− | |- | + | |- valign="top" |
− | | width='120' | ''' | + | | width='120' | '''Signature''' |
− | | | + | |<pre>hash:sha256( |
− | |- | + | $value as xs:anyAtomicType |
+ | ) as xs:base64Binary</pre> | ||
+ | |- valign="top" | ||
| '''Summary''' | | '''Summary''' | ||
− | |Computes the SHA-256 hash of the given {{Code|$value}}, which may be of type xs:string, xs:base64Binary, or xs:hexBinary. | + | |Computes the SHA-256 hash of the given {{Code|$value}}, which may be of type {{Code|xs:string}}, {{Code|xs:base64Binary}}, or {{Code|xs:hexBinary}}. |
− | |- | + | |- valign="top" |
| '''Examples''' | | '''Examples''' | ||
| | | | ||
Line 56: | Line 60: | ||
==hash:hash== | ==hash:hash== | ||
{| width='100%' | {| width='100%' | ||
− | |- | + | |- valign="top" |
− | | width='120' | ''' | + | | width='120' | '''Signature''' |
− | | | + | |<pre>hash:hash( |
− | |- | + | $value as xs:anyAtomicType, |
+ | $algorithm as xs:string | ||
+ | ) as xs:base64Binary</pre> | ||
+ | |- valign="top" | ||
| '''Summary''' | | '''Summary''' | ||
− | |Computes the hash of the given {{Code|$value}}, using the specified {{Code|$algorithm}}. The specified values may be of type xs:string, xs:base64Binary, or xs:hexBinary.<br />The following three | + | |Computes the hash of the given {{Code|$value}}, using the specified {{Code|$algorithm}}. The specified values may be of type {{Code|xs:string}}, {{Code|xs:base64Binary}}, or {{Code|xs:hexBinary}}.<br/>The following three algorithms are supported: {{Code|MD5}}, {{Code|SHA-1}}, and {{Code|SHA-256}}. |
− | |- | + | |- valign="top" |
| '''Errors''' | | '''Errors''' | ||
|{{Error|algorithm|#Errors}} the specified hashing algorithm is unknown. | |{{Error|algorithm|#Errors}} the specified hashing algorithm is unknown. | ||
− | |- | + | |- valign="top" |
| '''Examples''' | | '''Examples''' | ||
| | | | ||
Line 73: | Line 80: | ||
=Errors= | =Errors= | ||
− | |||
− | |||
{| class="wikitable" width="100%" | {| class="wikitable" width="100%" | ||
! width="110"|Code | ! width="110"|Code | ||
|Description | |Description | ||
− | |- | + | |- valign="top" |
|{{Code|algorithm}} | |{{Code|algorithm}} | ||
|The specified hash algorithm is unknown. | |The specified hash algorithm is unknown. | ||
Line 88: | Line 93: | ||
;Version 9.0 | ;Version 9.0 | ||
− | * Updated: error codes | + | * Updated: error codes updated; errors now use the module namespace |
The module was introduced with Version 7.3. | The module was introduced with Version 7.3. |
Latest revision as of 15:30, 9 March 2023
This XQuery Module provides functions that perform different hash operations.
Contents
Conventions[edit]
All functions and errors in this module are assigned to the http://basex.org/modules/hash
namespace, which is statically bound to the hash
prefix.
Functions[edit]
hash:md5[edit]
Signature | hash:md5( $value as xs:anyAtomicType ) as xs:base64Binary |
Summary | Computes the MD5 hash of the given $value , which may be of type xs:string , xs:base64Binary , or xs:hexBinary .
|
Examples |
|
hash:sha1[edit]
Signature | hash:sha1( $value as xs:anyAtomicType ) as xs:base64Binary |
Summary | Computes the SHA-1 hash of the given $value , which may be of type xs:string , xs:base64Binary , or xs:hexBinary .
|
Examples |
|
hash:sha256[edit]
Signature | hash:sha256( $value as xs:anyAtomicType ) as xs:base64Binary |
Summary | Computes the SHA-256 hash of the given $value , which may be of type xs:string , xs:base64Binary , or xs:hexBinary .
|
Examples |
|
hash:hash[edit]
Signature | hash:hash( $value as xs:anyAtomicType, $algorithm as xs:string ) as xs:base64Binary |
Summary | Computes the hash of the given $value , using the specified $algorithm . The specified values may be of type xs:string , xs:base64Binary , or xs:hexBinary .The following three algorithms are supported: MD5 , SHA-1 , and SHA-256 .
|
Errors | algorithm : the specified hashing algorithm is unknown.
|
Examples |
|
Errors[edit]
Code | Description |
---|---|
algorithm
|
The specified hash algorithm is unknown. |
Changelog[edit]
- Version 9.0
- Updated: error codes updated; errors now use the module namespace
The module was introduced with Version 7.3.