# Snefru

Snefru is a cryptographic hash function invented by Ralph Merkle in 1990 while working at Xerox PARC. The function supports 128-bit and 256-bit output. It was named after the Egyptian Pharaoh Sneferu, continuing the tradition of the Khufu and Khafre block ciphers. Snefru lives in the **Hashing** category of the `fx` menu.

## Parameters

| Parameter | Type   | Required | Default | Description                                            |
| --------- | ------ | -------- | ------- | ------------------------------------------------------ |
| Input     | string | yes      | —       | Value to transform. Previous step output or a literal. |
| Size      | number | no       | `128`   | Numeric value. Default `128`.                          |
| Rounds    | string | no       | `8`     | Choose one of: `8`, `4`, `2`.                          |

`Input` is the primary value (previous step output or a literal).

## Returned value

| Type     | Description                          |
| -------- | ------------------------------------ |
| `string` | Result of the Snefru transformation. |

## Limitations

- This operation treats Input as raw bytes (binary-capable). Non-text payloads may display differently after decoding.

## Example

<details>
<summary>Run Snefru</summary>

Snefru is a cryptographic hash function invented by Ralph Merkle in 1990 while working at Xerox PARC. Adjust optional parameters when the defaults do not match your payload.

1. Set **Input** to the value to transform (previous step output or a literal).

2. Review **Size**, **Rounds** and keep defaults unless your format requires otherwise.

3. Confirm **Output value** shows the transformed result.

</details>
