---
name: "krb5_mk_priv"
section: "3"
platform: "linux"
package: "heimdal-dev"
version: "7.8.git20221117.28daf24+dfsg-9+deb13u1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/krb5_mk_priv"
---

# krb5\_mk\_priv(3)

generates integrity protected and/or encrypted messages

## NAME

**krb5\_mk\_safe**, **krb5\_mk\_priv** – generates integrity protected and/or encrypted messages

## LIBRARY

Kerberos 5 Library (libkrb5, -lkrb5)

## SYNOPSIS

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

*krb5\_error\_code*\

**krb5\_mk\_priv**(*krb5\_context context*, *krb5\_auth\_context auth\_context*, *const krb5\_data \*userdata*, *krb5\_data \*outbuf*, *krb5\_replay\_data \*outdata*);

*krb5\_error\_code*\

**krb5\_mk\_safe**(*krb5\_context context*, *krb5\_auth\_context auth\_context*, *const krb5\_data \*userdata*, *krb5\_data \*outbuf*, *krb5\_replay\_data \*outdata*);

## DESCRIPTION

**krb5\_mk\_safe**() and **krb5\_mk\_priv**() formats KRB-SAFE (integrity protected) and KRB-PRIV (also encrypted) messages into *outbuf*. The actual message data is taken from *userdata*. If the KRB5\_AUTH\_CONTEXT\_DO\_SEQUENCE or KRB5\_AUTH\_CONTEXT\_DO\_TIME flags are set in the *auth\_context*, sequence numbers and time stamps are generated. If the KRB5\_AUTH\_CONTEXT\_RET\_SEQUENCE or KRB5\_AUTH\_CONTEXT\_RET\_TIME flags are set they are also returned in the *outdata* parameter.

## SEE ALSO

[krb5\_auth\_con\_init(3)](/krb5_auth_con_init/3.md), [krb5\_rd\_priv(3)](/krb5_rd_priv/3.md), [krb5\_rd\_safe(3)](/krb5_rd_safe/3.md)
