Nonce

Eine Nonce (englisch) bezeichnet ein Wort, eine Buchstaben- oder Zahlenfolge, die nur zur einmaligen Verwendung vorgesehen ist. Früher stand Nonce für ein Wort, das bald durch etwas Besseres ersetzt werden sollte.

Ursprung

Das englische Wort „nonce“ geht auf die mittelalterliche Wendung „for the nonce“ = „für dies eine Mal, einstweilen“ (durch Neusegmentierung im Mittelenglischen aus „for þan anes“ hervorgegangen[1]) zurück, also eine vorläufige Aussage oder Regelung, die bald zu ändern sei. Die Verwendung wandelte sich im Druckwesen zu „nonce word“ = „vorläufiges Wort, Platzhalter“.[2] In der Linguistik bezeichnet man mit „nonce word“ (deutsch „Gelegenheitsbildung“) das spontan erfundene Wort zur (gegebenenfalls vorläufigen) Bezeichnung einer Sache, für die es bislang noch keine angemessene Bezeichnung gab.[3]

Verwendung in der Kryptographie

Typische Client-Server-Kommunikation mittels einer Nonce-basierten Authentisierung des Clients. Gibt hier der Server eine Nonce zweimal zurück, kann eine vorher aufgezeichnete Antwort des Clients mit Verwendung derselben Nonce genutzt werden, um sich ohne Kenntnis des Passwortes zu authentifizieren.

In der Kryptographie wurde die Bezeichnung Nonce (Abkürzung für: „used only once“[4] oder „number used once“[5]) aufgegriffen, um eine Zahlen- oder Buchstabenkombination zu bezeichnen, die nur ein einziges Mal in dem jeweiligen Kontext verwendet wird. In vielen Protokollen ist die Sicherheit des Verfahrens gefährdet, sollte eine Nonce zweimal verwendet werden. Ähnlich wie die Verwendung von schwachen Zufallszahlen lässt sich dieser Fehler nur schwer entdecken, da die Protokolle von außen betrachtet meist immer noch funktionieren, aber leicht angreifbar werden. Typische Möglichkeiten, eine Nonce zu erzeugen, sind die Verwendung von kryptografisch sicheren Zufallswerten, die ausreichend groß sind, so dass die Wahrscheinlichkeit einer doppelten Benutzung vernachlässigbar ist (siehe Geburtstagsparadoxon), oder die Verwendung eines Zählers.

Die Verwendung von Nonces ist eine Methode, um Replay-Angriffe zu verhindern. Nonces werden beispielsweise beim Verschlüsselungsprotokoll Transport Layer Security benutzt.

Fußnoten

  1. Douglas Harper: nonce. In: Online Etymology Dictionary. Abgerufen am 2. Juni 2013.
  2. Quark wurde ursprünglich als nonce word gewählt für eine „noch zu benennende Teilchenklasse“, verbreitete sich dann aber in dieser Form
  3. dict.cc
  4. Roger M. Needham, Michael D. Schroeder: Using encryption for authentication in large networks of computers. In: ACM (Hrsg.): Communications of the ACM. Band 21, Nr. 12, Dezember 1978, ISSN 0001-0782, S. 993–999, doi:10.1145/359657.359659.
  5. Ross Anderson: Security Engineering. A Guide to Building Dependable Distributed Systems. Wiley, 2001, ISBN 0-471-38922-6, S. 15 (cam.ac.uk).

Auf dieser Seite verwendete Medien

Nonce-cnonce-uml.svg
Autor/Urheber: en:User:Cameltrader, Lizenz: CC BY-SA 3.0
A UML diagram describing the sequence of actions involved in a nonce-based authentication, including a client nonce (cnonce). (Arrows and monospace texts have been rendered as paths, because the MediaWiki software doesn't support them.)