Was berechnete Turings mysteriöses kleines Programm auf dem Manchester-Computer?


10

Ich lese Turings Artikel "Computing Machinery and Intelligence" ( https://www.csee.umbc.edu/courses/471/papers/turing.pdf ) und habe ein Fragment gefunden, in dem er sagt:

Ich habe auf dem Manchester-Computer ein kleines Programm mit nur 1.000 Speichereinheiten eingerichtet, wobei die mit einer sechzehnstelligen Nummer gelieferte Maschine innerhalb von zwei Sekunden mit einer anderen antwortet. Ich würde jedem trotzen, aus diesen Antworten genug über das Programm zu lernen, um Antworten auf nicht erprobte Werte vorhersagen zu können.

Es sieht für mich nach einem Problem des maschinellen Lernens aus :) Aber wenn ich mein Interesse an KI beiseite lasse, lautet meine Frage wie folgt:

Weiß jemand, was dieses Programm tat?

Ich bin sehr neugierig

PS: Aufgrund der Länge der Eingabe und Ausgabe vermute ich, dass es sich um einen Verschlüsselungsalgorithmus handelt, aber ich würde mich über jeden Hinweis auf das eigentliche Programm freuen .

Antworten:


2

Sie haben Recht, dass dies mit Verschlüsselung zu tun hat, aber es ist keine Verschlüsselung an sich. Es ist etwas, das man Hashing nennt. Sein Programm nimmt eine Zahl, hasht sie und gibt den Hash aus. Was Turing erstellt hat, wird jetzt als kryptografisch sicherer Hash bezeichnet.

Ein moderner kryptografisch sicherer Hash muss Folgendes tun. Es sollte einfach sein, die Eingabe zu hashen, aber sehr schwierig, eine Ausgabe zu "enthacken", um die Eingabe zu erhalten. In diesem Fall bedeutet "sehr schwierig" normalerweise "es würde Monate oder Jahre auf einem Supercomputer dauern, wenn nicht sogar länger".


Wir denken normalerweise, dass ein Hash eine unbegrenzte Domain hat, während in diesem Fall die Domain und der Bereich gleich sind. In diesem Sinne ist es eher eine Einwegfunktion. Sowohl eine Hash- als auch eine Einwegfunktion sind jedoch tatsächlich einfach zu berechnen, während hier der Punkt ist, dass sie zufällig aussieht , wie eine Pseudozufallsfunktion.
Yuval Filmus

2
Danke @JorgePerez! Ich weiß, was ein Hash ist, meine Frage war eher: Welchen Hash hat er implementiert? Gibt es dazu Anmerkungen? Vielleicht hat er den Algorithmus veröffentlicht? Entschuldigung, wenn ich nicht klar war :)
Nanaki

2
Haben Sie eine Referenz, die Sie zitieren können?
Raphael
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.