| (In)security allgemein Sicherheit, Anonymität im Netz. Schutz und Maßnahmen. Prävention und Konzepte. Sicherheitsarchitekturen allgemein und auf der Netzwerkebene. |
Diskussion: Zufallszahlen im Forum (In)security allgemein, in der Kategorie Security Area; Anzeige tja... meine frage is simpel: wie generiert ein computer zufallszahlen oder/und buchstaben?...
![]() |
| | #1 (permalink) |
| Registriert seit: 07.09.04 ![]() Likes: 0 | Anzeige tja... meine frage is simpel: wie generiert ein computer zufallszahlen oder/und buchstaben? |
| | |
| | #2 (permalink) |
| Member of Honour ![]() Registriert seit: 03.10.01 ![]() Likes: 1 | Schreib in irgendeiner Sprache ein Programm, dass das erledigt. Wie genau entnimst du der Dokumentation der Sprache oder google |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) | ||
| Moderator ![]() Registriert seit: 30.03.04 ![]() Likes: 14 | Hallo, eigentlich ganz einfach: [Vortlaufende Zahlen] ^ [Zahl] MOD [Zahl2] Beispiel: x^2 MOD 123 Beispieltabelle Code: x : Ergebnis 100: 37 101: 115 102: 72 103: 31 104: 115 105: 78 106: 43 107: 10 108: 102 109: 73 110: 46 111: 21 112: 121 113: 100 114: 81 115: 64 116: 49 117: 36 118: 25 119: 16 120: 9 [Vortlaufende Zahlen] legt dabei den "Startwert" fest. Als Startwert benutzt man meistens die Zeit, am besten Mikrosekunden. Denn wenn der Startwert identisch ist, so ist natürlich das Ergebnis identisch. x^2 MOD 10 Beispieltabelle: Zitat:
"Zufällige" Buchstaben ermittelt man so: Man hat ein Array mit allen 26 Buchstaben: Formel: x^2 MOD 25 Diese gibt ein Ergebnis zwischen 0 und 25 aus, falls eine 0 "gewürfelt" wird, so wird der 0. Eintrag aus dem Array (arrays fangen an bei 0 zu zählen) genommen, normalerweise ein a. Bei einer 25 wäre es ein Z. So wird dann z.B. 10 mal gewürfelt und den Ergebnissen wird ein Buchstabe zugewiesen, und der String wird dann am Ende gespeichert/ausgegeben etc. Weiter Infos: Pseudozufallszahlen Edit Um echte, nicht vorhersagbare Zufallszahlen zu erhahlten muss man entweder Rauschen, Quantenmechanische Effekte oder die Abgabe von Atomen eines Radioaktiven Stoffes benutzen. Aber ein Computer kann nichts anderes als Rechnen, und auch wenn das Ergebnis für uns Chaotisch aussieht, sofern man den Algorithmus + den Startwert hat, kann man die gleiche Reihnfolge von Zufallszahlen "würfeln". Allerdings sofern man nur die Zufallszahlen hat, wird es sehr schwer sein auf den Startwert zurück zu kommen. Soweit ich weißt geht das bei kryptologisch sicheren Pseudogeneratoren nur per Brute Force. Aber du musst auch beim Startwert aufpassen. Falls du einen Timestamp (Sekunden seit 1.1.1970) z.B. benutzt, und ein Angreifer weiß ca. wann die "Zufallszahlen" erstellt wurden, wird es für ihn ein leichtes sein den Startwert herrauszufinden. Außerdem sollte man auch auf die Menge der Startwerte achten. Falls man Mirkosekunden als Startwert benutzt wird es recht schwer sein den exakten Zeitpunkt (auf Mirkosekunden genau) der Erstellung der Zahlen zu ermitteln. Allerdings gibt es CPU's die nur alle 10ms die Zeit aktualsieren. Somit ist der Zahlenraum schon um das 10fache geschrumpft Dies nennt man geschrumpfter Schlüsselraum: Beispiel: Die Netscape Story Zitat:
Da kann man sehen was ein reduzierter Schlüsselraum alles anrichten kann | ||
| | |
| | #4 (permalink) |
| Wie Elderan eben sehr eindrucksvoll bewiesen hat gibt es keine Zufallszahl. Alles wird nach einem bestimmten Alogrhytmus gebildet und wenn man den knackt kann man jede erdenktlich Zufallszahl vorhersagen Ein Computer kann nichts erfinden. -------------------------- Dieser Beitrag sollte als "zusätzliche Information" dienen -------------------------- | |
| | |
| | #5 (permalink) |
| Themenstarter Registriert seit: 07.09.04 ![]() Likes: 0 | @Elderan erst mal big THX für deine mühe @Johnson also ist es so das der pc ansicht nicht mit zufall am hut hat und nur sich sein input aus andern quellen ( zeit, mausbewegegung, was weiss ich) holt... frage geklärt danke leute! |
| | |
| | #6 (permalink) | |
| Moderator ![]() Registriert seit: 30.03.04 ![]() Likes: 14 | Hallo, Zitat:
Also oft wird nur die Zeit (dd.mm.yyy hh.mm.ss) benutzt, was man aber oft als Angreifer selber "messen" kann. Daraus ergibt sich ein stark reduzierter Schlüsselraum (Siehe Edit im letzen Post von mir). Wenn man weiß an welchem Tag die Zahlen erstellt wurden, so braucht man nur 86400 mögliche Startschlüssel testen. Sonst bessere Programme benutzen schon Mircosekunden, Außenstehende können normalerweise nicht auf Mircosekunde genau sagen wann die Zahlen erstellt wurden.. Allerdings gibt es ein Problem mit der Zeitmessung. Manche Rechner aktualsieren nur alle 10ms die Mircosekunden. Darum benutzen Programme, die sehr gute Zufallszahlen benötigen, z.B. PGP, die Mausbewegung. Bei PGP soll man auf der Tastertur einfach irgendetwas eingeben. PGP erstellt dann einen Startwert aus den eigegebenen Zeichen und die dauer zwischen den Eingaben. | |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Perl zufallszahlen in einem Bereich | Dawen | Code Kitchen | 2 | 29.05.08 21:44 |
| Debian Zufallszahlen Generator | Cyberm@ster | Fun Section | 4 | 24.05.08 16:07 |
| [delphi] Zufallszahlen+Startfenster [GELÖST] | Agent3004 | Code Kitchen | 34 | 09.01.08 16:28 |
| 4 zufallszahlen ind php aber was besonderes | chrisi01 | (Web-) Design und webbasierte Sprachen | 0 | 29.11.03 23:11 |