# crypto.salsa20: make the number of rounds a comptime parameter \(\#13442\) · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/907f3ef887776dc7e0ed3661230e5c11973ad6a6)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: 907f3ef887776dc7e0ed3661230e5c11973ad6a6

Requested commit: 907f3ef887776dc7e0ed3661230e5c11973ad6a6

Commit: 907f3ef887776dc7e0ed3661230e5c11973ad6a6

Tree: 0d70fef9b419e87145b51f0d9758412af396034c

Author: Frank Denis

Committer: GitHub

## Message

```
crypto.salsa20: make the number of rounds a comptime parameter (#13442)

...instead of hard-coding it to 20.

- This is consistent with the ChaCha implementation
- NaCl and libsodium, that this API is designed to interop with,
also support 8 and 12 round variants. The 12 round variant, in
particular, provides the same security level as the 20 round variant,
but is obviously faster.
- scrypt currently uses its own non optimized version of Salsa, just
because it use 8 rounds instead of 20. This will help remove code
duplication.

No behavior nor public API changes. The Salsa20 and XSalsa20 still
represent the 20-round variant.
```

## Parents

- [4c719ad3387651913d45437958bdac839442b52f](https://git.cafe/gitcafe/zig/commit/4c719ad3387651913d45437958bdac839442b52f?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/907f3ef887776dc7e0ed3661230e5c11973ad6a6?format=markdown)
