Skip to content

Kerberos Keys and Encryption Types

Which key type seals a Kerberos message, why RC4 means the NT hash, and how to spot it.

  • Kerberos

Why It Matters

An account's RC4 key is simply its NT hash, so a part sealed with it is quicker to guess offline than an AES one, and a stolen hash works in Kerberos too. The encryption type fields in events 4768 and 4769 in the domain controllers' Security logs show where RC4 is still in use, and so what to move to AES.

What Happens

Each account has several long-term Kerberos keys, all made from its password. A user's AES256 and AES128 keys are salted with the realm in capitals and the user name (CORP.EXAMPLEdana for dana), and the RC4 key is the NT hash itself, with no salt. A computer account has the same set, made from the password Windows sets and changes for it, with a salt built from its host name.

Every encrypted part of a message names its encryption type (etype), and the client lists the types it can use, strongest first. The DC seals each ticket in a type the target account's msDS-SupportedEncryptionTypes allows, with a session key in a type both sides allow. Where that attribute is empty, the DC assumes a domain default, which the 2026 updates changed.

Since the January 2025 updates (Windows Server 2016 and later), events 4768 and 4769 in the Security log also show what each side supports, which keys exist and which type the session key used. In 4768, Ticket Encryption Type describes the TGT itself, which the krbtgt key seals, so RC4 in a TGT request shows in Pre-Authentication EncryptionType and Session Encryption Type instead.

MSDS-SupportedEncryptionTypes in these events is a processed value, so Windows Server 2022 and earlier always list DES and RC4 there, while Windows Server 2025 lists only AES and stronger. Available Keys always lists RC4, and an account whose password was last set before the domain supported AES has no AES keys until its password is reset. Read the fields together before calling RC4 an attack.

Domain controllers updated since January 2026 write Kdcsvc events 201 to 209 to the System log when a service ticket request still needs RC4, or when the DC's own default allows it (KB5073381). Since April 2026 they assume only AES for accounts whose msDS-SupportedEncryptionTypes is empty, and the July 2026 updates removed the temporary rollback setting. RC4 service tickets now survive only where the service's account, or an explicit default set on the DC, still allows RC4, and Windows Server 2025 domain controllers issue no RC4 TGTs at all.

Encryption Type Codes in Kerberos Events

The encryption type fields in events 4768 and 4769 in the Security log hold a code, not a name. This table turns each code into its type and says what it means when you find it.

CodeTypeWhat It Means
0x12AES256-CTS-HMAC-SHA1-96The normal type for tickets, session keys and timestamps.
0x11AES128-CTS-HMAC-SHA1-96AES with a shorter key, and still sound.
0x17RC4-HMACAn account's RC4 key is its NT hash. Worth a look wherever both sides support AES.
0x18RC4-HMAC-EXPAn export-strength RC4 variant, from legacy systems only.
0x1, 0x3DES-CBC-CRC, DES-CBC-MD5Off by default since Windows 7 and Windows Server 2008 R2.
0xFFFFFFFFNoneShown in failure events, where nothing was issued.

msDS-SupportedEncryptionTypes Values

msDS-SupportedEncryptionTypes on an account is a bit mask, not an encryption type, so its values add up. A value of 0x18 there means AES only, which is not the same as the encryption type 0x18 in an event.

ValueAllows
0x1, 0x2DES (CRC and MD5)
0x4RC4-HMAC
0x8AES128
0x10AES256
0x20AES session keys, even where the ticket itself uses RC4
0x27DES, RC4 and AES session keys, the default assumed from November 2022 until April 2026
0x18AES128 and AES256 only, the default assumed since April 2026

What Is Logged

Each event below names the log it is written to, the machine that writes it and the audit setting that switches it on, then what to read in it for this page.

Event and LogWritten OnSwitch It OnWhat It Tells You
4768 A Kerberos authentication ticket (TGT) was requested (opens in a new tab) Security logDomain controllersAudit Kerberos Authentication ServicePre-Authentication EncryptionType and Session Encryption Type show RC4 in a TGT request, while Ticket Encryption Type is the TGT itself.AS Reply: The TGT explains how to read it.
4769 A Kerberos service ticket was requested (opens in a new tab) Security logDomain controllersAudit Kerberos Service Ticket OperationsRead Ticket Encryption Type for the service ticket against the service's MSDS-SupportedEncryptionTypes and Available Keys.TGS Reply: The Service Ticket explains how to read it.
201 to 209 The Key Distribution Center detected <Cipher Name> usage that will be unsupported in enforcement phase (opens in a new tab) System logDomain controllersDomain controllers with the January 2026 or later updates (KB5073381)It names clients and services that still need RC4 now that domain controllers assume AES by default, and a DC default that still allows it.

Check It on a Machine

These Windows Registry keys hold the settings this page names. Open one to see where it lives and how to read it on a machine.

Attacks That Hook in Here

These attacks work through what this page describes. Each card says what the attack is and, where it uses one of these steps, what it does there.

  • Kerberoasting

    Asks for service tickets, then guesses the service account's password offline.

  • AS-REP Roasting

    Asks for a TGT for an account that skips pre-authentication, then guesses offline.

  • Overpass-the-Hash

    Uses a stolen NT hash or AES key to get a real TGT, turning a hash into Kerberos.

  • Skeleton Key

    Patches LSASS on a DC so one master password signs in as any account.

Sources