---
name: "gsasl_scram_secrets_from_salted_password"
section: "3"
platform: "linux"
package: "gsasl"
version: "2.2.4-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/gsasl_scram_secrets_from_salted_password"
---

# gsasl\_scram\_secrets\_from\_salted\_password(3)

API function

## NAME

gsasl\_scram\_secrets\_from\_salted\_password - API function

## SYNOPSIS

**#include \<gsasl.h\>**

**int gsasl\_scram\_secrets\_from\_salted\_password(Gsasl\_hash** *hash***, const char \*** *salted\_password***, char \*** *client\_key***, char \*** *server\_key***, char \*** *stored\_key***);**

## ARGUMENTS

- Gsasl\_hash hash

  a **Gsasl\_hash** element, e.g., **GSASL\_HASH\_SHA256**.

- const char \* salted\_password

  input array with salted password.

- char \* client\_key

  pre-allocated output array with derived client key.

- char \* server\_key

  pre-allocated output array with derived server key.

- char \* stored\_key

  pre-allocated output array with derived stored key.

## DESCRIPTION

Helper function to derive SCRAM ClientKey/ServerKey/StoredKey.  The\
  *client\_key* ,  *server\_key* , and  *stored\_key* buffers must have room to hold digest for given  *hash* , use **GSASL\_HASH\_MAX\_SIZE** which is sufficient for all hashes.

Return value: Returns **GSASL\_OK** if successful, or error code.

## SINCE

1\.10

## REPORTING BUGS

Report bugs to \<bug-gsasl@gnu.org\>.\
 General guidelines for reporting bugs: https://www.gnu.org/gethelp/\
 GNU SASL home page: https://www.gnu.org/software/gsasl/

## COPYRIGHT

Copyright © 2002-2026 Simon Josefsson.\
 Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

## SEE ALSO

The full documentation for **gsasl** is maintained as a Texinfo manual.  If the **info** and **gsasl** programs are properly installed at your site, the command

-

  **info gsasl**

should give you access to the complete manual. As an alternative you may obtain the manual from:

-

  **https://www.gnu.org/software/libidn/gsasl/manual/**
