# Keccak

## Description

This operation allows you to hash data using the Keccak cryptographic hash algorithm. Keccak is the original algorithm that was standardized as SHA-3 by the National Institute of Standards and Technology (NIST). It is widely used in cryptographic applications, such as blockchain technologies (e.g., Ethereum).

***

## Data types

These are the input/output expected data types for this operation:

### Input data

![](https://965373739-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkxZeV4nlXcIAjMGZxzLI%2Fuploads%2FZmr35bwgundYfOW63E3q%2Fimage.png?alt=media\&token=2ba8baff-b40b-4dd4-ae2c-2a2ad5696788) - Data you want to hash. This could be text, binary, or hexadecimal data.

### Output data <a href="#output-data" id="output-data"></a>

![](https://965373739-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkxZeV4nlXcIAjMGZxzLI%2Fuploads%2FRDngsaxu99O216cFqn81%2Fimage.png?alt=media\&token=53e171be-7591-4c56-acdb-4e8e8646241d) - Keccak hash value in hexadecimal format.

***

## Parameters

These are the parameters you need to configure to use this operation (mandatory parameters are marked with a <mark style="color:red;">**\***</mark>):

<details>

<summary>Size<mark style="color:red;"><strong>*</strong></mark></summary>

Choose the desired bit size of the hash output. Choose one of the following:

* **512**
* **384**
* **256**
* **224**

</details>

***

## Example

Suppose you want to **hash** your input strings using the **Keccak** algorithm:

1. In your Pipeline, open the required [Action](https://onum.gitbook.io/onum-docs/the-workspace/pipelines/actions) configuration and select the input **Field**.
2. In the **Operation** field, choose **Keccak**.
3. Set **Size** to `256`.
4. Give your **Output field** a name and click **Save**. The strings in your input field will be hashed using the Keccak algorithm.

For example, the following string:

```csv
Hello World!
```

will be hashed as:

```json
3ea2f1d0abf3fc66cf29eebb70cbd4e7fe762ef8a09bcc06c8edf641230afec0
```

{% hint style="info" %}
You can try out operations with specific values using the **Input** field above the operation. You can enter the value in the example above and check the result in the **Output** field.
{% endhint %}
