Galois/Counter Mode
# Galois/Counter Mode

Galois/Counter Mode (GCM) ist ein Betriebsmodus, in dem Blockchiffren für eine symmetrische Verschlüsselungsanwendung betrieben werden können. Als wesentliche Eigenschaft bietet er Authenticated Encryption with Associated Data (AEAD), also einen authentifizierten Verschlüsselungsmodus mit assoziierten Daten, um sowohl die Authentifikation als auch die Verschlüsselung von Nachrichten zu ermöglichen. Weiter ist das Verfahren auf einen hohen Datendurchsatz, mit der Option zur Parallelisierung der Datenströme, ausgelegt und findet daher bei der Echtzeitverschlüsselung von Netzwerkdaten und bei Speicher wie Festplattensystemen Anwendung. Der Galois/Counter Mode wurde von David A. McGrew und John Viega entwickelt und im Jahr 2004 auf der Indocrypt vorgestellt. Seit 2007 ist das Verfahren im NIST-Standard 800-38D spezifiziert.

## Allgemeines

Der Betriebsmodus einer Blockchiffre, beispielsweise Advanced Encryption Standard (AES), ermöglicht es, Nachrichten zu verschlüsseln, die länger sind als die Blocklänge der Blockchiffre. In der Praxis häufig verwendete Betriebsmodi sind unter anderem der Cipher Block Chaining Mode (CBC) und der Counter Mode (CTR), auf dem auch GCM basiert.

Wie bei CTR wird auch bei GCM ein pro Block eindeutiger Zähler verwendet, die Blockgröße der Blockchiffre ist auf 128 Bit festgelegt. Werden die verschlüsselten Daten nicht verwendet, reduziert sich GCM auf die Authentifikation und wird dann als GMAC (Galois Message Authentication Code) bezeichnet. Es kann in diesem Anwendungsbereich auch als Ersatz für Fehlererkennungsverfahren verwendet werden.

Während die Verschlüsselung der Daten im Wesentlichen auf dem Betriebsmodus des adaptierten Counter Mode (CTR) basiert, wird die Authentifikationsfunktion durch parallel dazu laufende Multiplikationen im Galoiskörper $\operatorname {GF} \left(2^{128}\right)$ realisiert.

## Anwendungen

GCM findet unter anderem Anwendung im Netzwerkstandard IEEE 802.11ad, als Option bei IPsec und in Verbindung mit dem Advanced Encryption Standard (AES) als AES-GCM in Secure Shell (SSH), in TLS 1.2 sowie im LTO-Standard ab Generation 4.

