# How the SHA2() function works in Mariadb?

The `SHA2()`

function in MariaDB is a versatile function that allows you to compute various cryptographic hash values belonging to the SHA-2 family of hash functions.

The `SHA2()`

function in MariaDB is a versatile function that allows you to compute various cryptographic hash values belonging to the SHA-2 family of hash functions. The SHA-2 family includes four different hash functions: SHA-224, SHA-256, SHA-384, and SHA-512, each producing a hash value of different lengths (224, 256, 384, and 512 bits, respectively). These hash functions are widely used for data integrity checking, digital signatures, and secure password storage.

## Syntax

The syntax for the MariaDB `SHA2()`

function is as follows:

```
SHA2(str, hash_length)
```

`str`

: The string for which the SHA-2 hash value is to be computed.`hash_length`

: The desired length of the hash value in bits. It can be 224, 256, 384, or 512.

The function returns a hexadecimal string representation of the computed SHA-2 hash value, with a length that corresponds to the specified `hash_length`

parameter.

## Examples

### Example 1: Computing the SHA-256 hash value of a string

In this example, we’ll demonstrate how to use the `SHA2()`

function to compute the SHA-256 hash value of a given string.

```
SELECT SHA2('Hello, World!', 256);
```

The following is the output:

`dffd6021bb2bd5b0af676290809ec3a53191dd81c7f70a4b28688a362182986f`

The `SHA2()`

function computes the SHA-256 hash value of the string `'Hello, World!'`

and returns the 64-character hexadecimal representation.

## Related Functions

The following are some functions related to the MariaDB `SHA2()`

function:

- MariaDB
`SHA1()`

function is used to compute the SHA-1 160-bit cryptographic hash value of a given string. - MariaDB
`MD5()`

function is used to compute the MD5 128-bit cryptographic hash value of a given string. - MariaDB
`PASSWORD()`

function is used to encrypt a given string using the MySQL password encryption algorithm. - MariaDB
`ENCODE()`

and`DECODE()`

functions are used to encode and decode strings using various encryption algorithms.

## Conclusion

The `SHA2()`

function in MariaDB provides a flexible way to compute various cryptographic hash values from the SHA-2 family. By specifying the desired hash length, you can choose the appropriate hash function (SHA-224, SHA-256, SHA-384, or SHA-512) based on your security requirements and performance considerations. The SHA-2 family of hash functions is generally considered more secure than older hash functions like SHA-1 and MD5, making the `SHA2()`

function a preferred choice for applications that require stronger cryptographic hash capabilities.