Die Enigma-Maschine war ein mechanisches Gerät, das zum Verschlüsseln und Entschlüsseln geheimer Nachrichten verwendet wurde. Während des Zweiten Weltkriegs wurde die Enigma-Maschine vom deutschen Militär verwendet, um mit Truppen im Feld, Kriegsschiffen und U-Booten zu kommunizieren. Alliierte Kryptologen, die unter dem Codenamen ULTRA arbeiteten, knackten erfolgreich die meisten Enigma-Chiffren; Dies gab den Alliierten eine wichtige Informationsquelle für die Kriegsanstrengungen.
Die Enigma-Maschine selbst war mechanisch und sah aus wie eine Schreibmaschine. Jedes Mal, wenn eine Taste gedrückt wurde, lief das elektronische Signal durch eine Reihe von drehbaren Scrambling-Rädern, durch ein Plugboard und dann in eine andere Richtung zurück. Da jedes Rad gedreht werden konnte, um den Signalweg zu ändern, war eine große Vielfalt an verschiedenen Tasten möglich, und die Räder konnten einfach jedes Mal gedreht werden, wenn eine neue Taste benötigt wurde. Die Räder waren so angeordnet, dass sie sich jedes Mal drehten, wenn eine Taste gedrückt wurde, was Enigma gegen Angriffe mit Buchstabenfrequenzen sicher machte; auch die Startpositionen der Räder wurden oft mehrmals täglich gewechselt.
Theoretisch sollte Enigma gegen jede Art von Brute-Force-Angriff sicher sein, da es viel zu viele Verschlüsselungsmöglichkeiten gab, um sie alle einzeln auszuprobieren. Spätere Versionen von Enigma, wie die von deutschen U-Booten verwendeten Vier-Rotor-Modelle, erhöhten die Zahl der Kombinationen noch weiter. Trotzdem gaben erbeutete Codedokumente und menschliches Versagen den Kryptografen oft die Oberhand, und das polnische Militär entschlüsselte bereits 1932 die geheime deutsche Kommunikation. Ihre Arbeit gelangte schließlich nach Großbritannien und Amerika, und das Entschlüsseln des Codes ging weiter den ganzen Krieg über erfolgreich, trotz der Versuche der Deutschen, die Maschine immer komplexer zu machen.
Um den Enigma-Code erfolgreich zu knacken, mussten Regelmäßigkeiten oder bekannte Faktoren gefunden werden, um die große Anzahl möglicher Chiffren zu reduzieren. Mehrere einfache Texte, wie „Heil Hitler“, tauchten häufig in deutschen Nachrichten auf; Dies gab Kryptoanalytikern wichtige Hinweise, die eine verschlüsselte Nachricht durchsuchen und sehen konnten, wo ein solcher Satz vorkommen könnte. Die Deutschen übermittelten auch einfache, leicht zu analysierende Kopfzeilen aus sechs Buchstaben am Anfang von Nachrichten, wie beispielsweise „EINEIN“, um die Position der Ziffernräder für den Rest der Nachricht anzugeben. Als der Platz der möglichen Codeschlüssel noch zu groß wurde, wurden mehrere primitive Computer konstruiert, um die Tausenden von Möglichkeiten automatisch durchzuzählen; dies wurde zu einer der ersten Arbeiten im Bereich Universal Computing.