![]() |
"Sicheres" Passwort erzeugen...Wie?
N'Abänd alle zusammen,
Nachdem ich in der DP und im Web schon einiges, teils in meinen Augen auch widersprüchliches gefunden hab', will ich mal "from scratch" eure Anregungen hören: Ich biete in meinem Programm " ![]() Das Passwort erstelle ich dabei mit einem einfachen random von Delphi und einem case...of - Konstrukt. Allerdings habe ich gelesen, dass Random aus irgendeinem Grund nicht sicher sein soll bzw. keine wirklichen Zufallszahlen erzeugen soll. Warum nicht? Andere Programme gehen z.B. den Weg, den Benutzer wahllos irgendwelche Zeichen eingeben zu lassen. Nur handelt es sich hier ja auch nicht wirklich um Zufall, oder? Denn die Wahl der Zeichen beim Eintippen geschieht ja durch ein bestimmtes Muster, auch wenn uns das nicht bewusst ist. Wie also erzeuge ich so ein Passwort am Sichersten? (am Zufälligsten?) Wäre übrigens ganz toll, wenn unser Kryptographie - Experte Hagen was schreiben könnte... :angel2: |
Re: "Sicheres" Passwort erzeugen...Wie?
![]() Wenn du Random "zufälliger" machen willst, solltest du unbedingt "Randomize;" vorher aufrufen. Das ganze hat eigentlich nichts mit Kryptologie zu tun. Du solltest nur versuchen, in deinem "Zufallsalgoritmus" möglichst viele verschiedene Zeichen auftauchen zu lassen. Und da sollten auch Sonderzeichen (wie "&", "%", "$", "/", "?", "+", "#" etc.) vorkommen. Groß/Kleinschreibung sollte auch variiren. Das solltest du auf jeden Fall beachten ;) |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
echte zufallszahlen sind (eher) mit hardware zu bekommen (rauschen einer diode usw) |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Liefert nicht Hagens DEC einen guten Pseudo-Zufallszahlen-Generator? (glaube das hier irgendwo mal gelesen zu haben) |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Zitat:
Zitat:
Zitat:
Was mir auch gerade noch einfällt: Einige Programme erzeugen auf einem Canvas ein Rauschen aus weißen und schwarzen Punkten und lassen den Benutzer mit dem Mauszeiger darüber hin- und herfahren. So etwas vielleicht? //Edit: Zitat:
|
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
|
Re: "Sicheres" Passwort erzeugen...Wie?
in pgp gab es auch eine funktion um passwörter zu erstellen (bzw. dort die keys). dort musste man mit seiner maus eine weile auf dem desktop hin- und herfahren.
ich nehme an, dass die koordinaten dann auch mit in berechnung des passwortes aufgenommen wurden. |
Re: "Sicheres" Passwort erzeugen...Wie?
Ein schönes Beispiel ist auch das hier:
![]() Da kann man ein Muster angeben nachdem dann ein "sicheres" Passwort erzeugt wird. MfG Florian :hi: |
Re: "Sicheres" Passwort erzeugen...Wie?
Hagen hat hier vor einiger Zeit mal nen Algorithmus zur Verfügung gestellt, um die Qualität eines Passwortes zu überprüfen:
![]() |
Re: "Sicheres" Passwort erzeugen...Wie?
Du benötigst zur Passwort-Erzeugung keinen Zufall :=)
Das einzisgte was du benötigst ist ein Datenstrom an Bits/Bytes der nicht für einen Angreifer reproduzierbar ist, das ist alles. Wenn also ein Mensch über das Keyboard oder die Maus "wahllos" Eingaben macht dann ist dies dermaßen individuell das es nicht reproduzierbar sein kann für einen anderen Menschen. Am einfachsten ist also ein YARROW-typischer RNG. Dabei wird ein sogenanntes Register mit zb. 128 Bytes Länge mit den gesammelten Daten des menschlichen Inputs gefüllt (einmalig zum Start). Will man nun daraus 1 Bit/Byte an "Zufallsdaten" erzeugen so berechnet man zb. mit SHA1 einen Digest üder dieses Register. Das Byte 0 aus diesem Digest wird mit dem Register xor verknüpft, das Byte 1 des Digest ist der "Zufalls"-output. Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Ah, großartig!
Vielen Dank an alle. Mal sehen, wann ich Zeit finde, dass zu implementieren... |
Re: "Sicheres" Passwort erzeugen...Wie?
Was hälst du von der Idee nach einem Randomzufall beliebiege Bytes des Festplatteninhaltes zu verwenden (solange sie nicht #0000 #0000 sind).
Ich persönlich mag es nämlich nicht so gerne, wenn ich etwas verschlüssel, ewig auf der Tastatur rumzuhämmern etc. |
Re: "Sicheres" Passwort erzeugen...Wie?
Für den Angreifer ist random() dann allerdings auch nicht reproduzierbar da dieser ja nicht weiss in welcher millisekunde genau der User das Passwort erzeugt hat.
Was du machen könntest wäre dass du mehrere Dinge miteinander verknüpfst, z.B. Mauszeigerposition, Uhrzeit und Hardware-ID. Da der Angreifer höchstwahrscheinlich weder Mauszeigerposition noch Uhrzeit noch z.B. Festplattenseriennummer weiss wäre es für ihn leichter eine Spyware zu erzeugen die den Label ausliest. |
Re: "Sicheres" Passwort erzeugen...Wie?
Wie ja schon gesagt reicht in so einem Fall random aus. Wirklichen Zufall liefert diese Funktion aber nicht. Normalerweise kann man aber diese Pseudozudallszahlen als "hinreichend zufällig" ansehen.
Wie kann man nun "richtige" Zufallszahlen erzeugen? Das Prinzip wurde schon mal erwähnt: Diodenrauschen. AFAIK stützt sich dieser Effekt auf die Heisenbergsche Unschärferelation, was ja absoluten Zufall bedeutet. IMHO werden Chips entwickelt(oder gibts die schon? :gruebel:), die dies ausnutzen und so durch "physikalisch verordneten Zufall" "richtige" Zufallszahlen erzeugen. mfg Christian |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
"Nicht reproduzierbar" was heist das ? Es heist das die Komplexität der Machbarkeit das es Reproduzierbar wird so hoch gewählt wird das es eben technsich unmöglich wird das es reproduziert werden kann. Kurz geasgt: Random() ist ein 32 Bit LCG. Linearer Kongruenz Generatoren sind sehr gut mathematisch analysiert und kryüptographisch unsicher. Man kann also aus einer Sequenz von Zahlen die dieser Generator erzeugt die nächst wahrscheinliche Zahl mit > 50% Wahrscheinlichkeit vorhersagen. Desweitern ist er nur 32 Bit groß und demzufolge enorm anfällig gegen eine Brute Force Attacke. Um sowas zu verhindern müsste man mindestens mit 128 Bit breiten RNGs arbeiten. Daraus folgt das Delphis Random() auch mit demAufruf von Randomize() eben technisch reproduzierbar sein wird. Der dazu nötige technsiche und zeitliche Aufwand ist viel zu gering um wirklich sicher sein zu können. Zitat:
1.) auf Grund der Heisenbergschen Vermutung es nicht möglich sein kann diesen "Zufall" vorherzusagen ? 2.) die physikalischen Dioden Kennlinien die zur Produktion des Zufalls ausgenutzt werden in jedem Falle immer zufällig sein müssen ? 3.) ein Gerät das auf diese Art&Weise Zufall erzeugt mit absoluter Sicherheit immer korrekt funktionieren wird? 4.) das der so erzeugte Zufall auch tatsächlich zufällig ist ? Nein, wirst du mir niemals nicht mathematisch sicher beweisen können, ergo unsicher ! Und komme mir nicht mit dem Argument das "andere Experten sagten" das wäre kryptographisch sicher. Das was einzigst zählt ist der analytisch korrekte Beweis der Tatsachen. Kryptographie die angewandte Wissenschaft der Mathematik, nicht Physik, Ingenieurskünste, Magier, Pfaffen oder Gläubigen. Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Zitat:
Zitat:
![]() Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
mfg Christian |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Heisenbergsche Unschärferelation bedeutet ja "nur", dass man Impuls und Ort eines Teilchens nicht genau messen kann (oder so ähnlich). Da könnte es aber durchaus sein, dass dieser Messfehler immer ähnlich wäre :) air |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Ganz einfach weil die Unschärferelation dafür sorgt das sie relative Unschärfen selber verursacht. D.h. da wir in Bereiche vorstoßen in denen wir als Beobachter selber das System beeinflussen können wir nicht in der Lage sein ein System zu beobachten. Die Unschärferelation wirkt nun aber auch selber auf den Beobachter und ergo somit auf unsere Definition der Unschärferelation. Es entsteht ein Kreislauf in dem sich die Katze selber in den Schwanz beisst. Diese Annahme ist aber irrelavnt. Mathematik erhebt niemals den Anspruch irgendwas erklären zu wollen. Den Mathematiker ist unsere subjektive und objektive Umwelt ziemlich egal. Sie konstruieren von Anfang an Denkmodelle die ausgehend von Axiomen immer analytisch logische Verknüfungen aufbauen. Alles bis aus die Eingangsaxiome ist also bewiesen. Wenn nun einige Axiome verändert werden so ändert sich das komplette und komplexe System das sie erschaffen haben. Von Zeit zu Zeit eraschaffen aber die Mathematiker dann Denkmodelle deren Übereinstimmungen mit der Physik der Realität so frappierend sind das die Physik damit sich die Umwelt erklären kann. Ergo aus Sicht der Mathematik heist dies: sie schlagen Heisenberg einfach ein Schnippchen und beobachten rein garnichts. Sie erschaffen ein Denkmodell, bauen dort logisch beweisbar das Verhalten dieses hypothetischen Systemes weiter aus, und durch gezielten oder dummen Zufall durchbrechen sie dann die physikalischen Grenzen eines Heisenbergs und können dann denoch ein zuvor unerklärbares Phänomen beweisen. Mathematik ist also einerseits reine Philosphie da sie auf Nichts basiert und andererseits erklärt sie denoch beweisbar unsere objektive Umwelt. Wenn du dir einen beliebigen mathematrischen Beweis vornimmst, zb. Satz des Pythagoras und dann versucht diesen Satz bis an seine Wurzel zu beweisen dann stöst du auf Wurzeln die reine Annahmen sind, Axiome zb. 1 und 1 +1 = 2 ! Da aber der Pythagoras so hilfreich in unserem realem Leben ist, gehen wir mal davon aus das die gewählten Axiome der Mathematik korrekt sein müssen und abstrakt die Objektivität umschreiben. Hm, bewiesen ist das aber nicht. Für die Kryptrographie ist das aber im Grunde irrelevant, denn auch hier gehen wir davon aus das die mathematischen Axiome für alle gleich gültig sind. Das gilt dann solange bis man sie widerlegen konnte, und so lange ist die Kryptographie auch sicher. Zitat:
Zitat:
Worauf ich hinaus will ist doch ganz einafch: Muß ein Kryptograph unbedingt und zwingender Weise auf echten physikalischen Zufall zurückgreifen, oder gibt es bessere also beweisbar sichere Alternativen. Ja. Denn wir wissen das in der Kryptographie der "Zufall" nur hinreichend unvorhersagbar sein muß für einen Angreifer also einen der unser Geheimnis=Passwort nicht kennt. Wir wissen auch das der so erzeugete "Pseudo-Zufall" statistisch exakt die gleichen mathematischen Eigenschaften haben wird wie echter Zufall. Ergo: es besteht überhaupt nicht die Notwendigkeit in der Kryptographie irgendwelchen unbewiesenen Zufall mit real unbekannten mathematischen Eigenschaften zu benutzen wenn wir uns selber einen ausreichend sicheren Algortihmus konstruieren können der die gleichen Eigenschaften aufweist. Nämlich "Vorhersagbarkeit" nur durch denjenigern der ein Passwort kennt, und statistisch gleichmäßige Verteilung der Menge. Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Du kennst doch das LaPlace'sche Dämon? Das man, kennt mal alle Vektoren im Universum, die Zukunft voraussagen kann. Ok, durch Heisenberg widerlegt. Du argumentierst aber gerade auf der LaPlace'schen Achse. Halten wir also fest: 1.Mathematisch beweisbare Sicherheit ist *sicher*. (Klar, is ja bewiesen) 2.Physikalische nicht beweisbare Phänomene sind nicht beweisbar sicher. (Klar, sind ja nicht bewiesen) 3.Nur, weil etwas nicht beweisbar ist, ist es noch lange nicht falsch, oder nicht existent. Zitat:
Da nehm ich mir doch lieber die morgentliche Laune meiner Frau. Leute! Das ist nicht vorhersagbar! Garantiert nicht! Oder eben ein Diodenrauschen, das selbst bei "identischen" Ausgangsbedingungen niemals identische Werte liefert wird, eben weil es wegen LaPlace und Heisenberg keine identischen Ausgangsbedingungen gibt, und sich selbst dann diese Diode so willkürlich verhält wie ein weibliches Wesen. Das man für sichere Passwörter nun wirklich kein Random braucht, hätte man auch ein paar Posts früher erwähnen können. Denn nichts ist so sicher wie ein gemein gewähltes willkürliches Passwort, wie z.B.: xxxxxxxxx (aus sicherheitsgründen ausgeickst) |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Ja es ist dann vollständig deterministisch, und das macht die Sicherheit aus. Es ist dann absolut vorhersagbar, richtig. Aber für wen ? Durch die Wahl des richtigen Algos und die entsprechend rießige Größe der Parameter ist es praktisch unmöglich ohne den Seed das Verhalten dieses deterministischen Algos vorherzusagen. Aus Sicht derjenigen Person die nicht den Seed kennt sind die Daten nicht mehr deterministisch vorhersagbar, aber denoch beweisbar deterministisch. Das weis sogar diese Person, sie weis aber auch das die Komplexität dieses Algos so hoch ist das sie es niemals per Brute Force Attacke knacken kann. Das IST sicher. Beispiel: BBS -> Blum Blum Shub Generator, Quadratische Restegenerator N = P * Q R = Register Zufallsbit = R^2 mod N mod 2 Werden P,Q zb. mit 512Bit Größe gewählt entsteht ein 1024 Modul N. Register R stellt am Anfang ein 1024 Bit großer Seed dar, ein Passwort oder eben durch Menschen wahllos initialisiert. Der Algo ist absolut determinist und kann ohne den Registerstartwert=Seed nur dann gebrochen werden wenn 1.) eine Brute Force Attacke auf Register durchgeführt wird, mit 2^1024 Schlüsselraum 2.) N in P und Q faktorisiert wird mit 2^512 Schlüsselraum Beides ist praktisch nicht durchführbar, also ist obwohl wir alle wissen das dieser Algo deterministisch ist er denoch ohne diese Werte nicht vorhersagbar. Die Komplexität die durch die Zahlengrößen entsteht verhindert dies. Der Bitstrom der entsteht hat also die gleichen Eigenschaften wie echter Zufall nur mit zwei Eigenschaft mehr: - wir wissen das er mathematisch beweisbar sicher ist, falls man den Seed und P,Q nicht kennt - wir können die korrekte Funktionsweise als Inhaber vom Seed und P,Q praktisch verifizieren, da er dann ja wieder reproduzierbar ist Es hängt also nur vom Wissen um Seed,P,Q ab ob der Bitstrom reproduzierbar ist, und gleichzeitig ist das Ding mathematisch so konstruiert das ohne Seed,P,Q die Komplexität so gewaltig groß ist das er nicht vorhersagbar wird. Beides ist mathematisch bewiesen ! Wenn wir nun so ein perfektes System haben, warum sollte man dann noch mit unbewiesenen Sachen arbeiten ? Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Nix gwis woas ma net! :mrgreen: (Da zitier ich doch einfach mal ^^) Wenn wir nun so ein perfektes System haben, warum sollte man dann noch mit unbewiesenen Sachen arbeiten? Ich nehm lieber etwas 'beweisbar sicheres'. :wink: |
Re: "Sicheres" Passwort erzeugen...Wie?
Das Lustige ist, das wir dauernd aneinander vorbeireden, und keiner merkt es:
Ich sage: Wenn ich den Algo geknackt (bzw. ist der ja öffentlich) habe, und die *Start*-Parameter kenne, kann ich alles vorhersagen. Somit ist dieses System eben *nicht* sicher. Klar, einfach einen PDA mit dem Algo, Startwert eingeben und schon bin ich der Gewinner (Na, ich brauch vielleicht doch noch die Sequenznummer der nächsten zu berechnenden Zahl). Das geht bei dem Diodenrauschen einfach nicht. Ergo ist DAS das 100% unknackbare System. Ich gehe davon aus, das Heisenberg und Einstein als hinreichtend belegt bzw. 'bewiesen' anzusehen sind. Das liegt ja wohl auf der Hand. Ob das nun mathematisch beweisbar ist, oder nicht. Im Übrigen glaube ich schon, das das -unter Berücksichtigung der bekannten Formeln- zu beweisen ist, das das Rauschen eine hübsche Zufallszahl erzeugt. Der Unterschied ist klar: Es gibt bei deterministischen naturgemäß eine Chance, das System vollständig zu knacken (Algorithmus, Startwert, Sequenznummer). Beim Diodenrauschen nicht. Da ist mir das 'unbewiesene' Diodenrauschen allemal lieber, denn als Nachrichtendienst kann es immer sein, das irgendjemand das 3-Tupel verrät, bei der Diode kann er sich auch noch ein identisches Gerät holen und hat nix davon. Ihr kommt aber nun mit der Kryptographie und das man da beweisbar sichere System benötigt. Das setzt immer voraus, das der Algo zwar bekannt, aber der aktuelle Zustandsvektor (Stichwort:LaPlace) unbekannt ist. Wenn ich bei einem guten Randomalgorithmus nur ein paar (oder von mir aus: viele) Zufallszahlen habe, soll es mir unmöglich sein, die nächste Zahl mit mehr als 1/n Warscheinlichkeit vorherzusagen, oder anders: Würfeln ist genau so gut. Das meint ihr dann mit '100% sicher'. Logisch, das sich der Mathematiker nicht auf die Physik verlässt. Beide Seiten haben mit Ihrer Argumentation Recht, denn sie gehen von unterschiedlichen Voraussetzungen aus. |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Deine Diode und der ganze physikalische Kram basiert aber auf UNWISSEN, wir können nichts beweisen und das ist UNSICHER. Alles dabei basiert auf Annahmen auf reinen Beobachtungen oder noch schlimmer auf dem Glauben das wir irgendwas niemals nicht beobachten können. Beispiel: Du benutzt deine Hardware, Diode meinetwegen und erzeugst 1024 Bit Zufall. Nun beweise mir das das echter Zufall ist. Kannst du einfach nicht. Ich benutze meine einbruchsichere Hardware die nach heutigen beweisbaren Erkenntnissen sicher ist und lasse darauf meinen BBS laufen. Ich erzeuge 1024 Zufall und kann beweisen das es korrekt erzeugter Zufall ist. Denn wenn ich mir als Besitzer der Hardware die entscheidenden Parameter auf eine andere Hardware kopiere und den gleichen Seed benutze dann MUSS der gleiche 1024 Bitstrom erzeugt werden. Ich kann also alle Parameter verifizieren, kontrollieren und auf Grund des benutzten und bewiesenen mathematischen Verfahrens eben sicher sein. 100% Sicherheit bedeutet das man alles zu 100% mathematisch beweisen und kontrollieren kann. Das was du nicht begreifen willst sind die gewählten Schranken der Komplexität der Verfahren. Sie werden so enorm groß gewählt das du deinen Seed den du knacken möchtest noch in Millionen von Jahren am knacken sein wirst. Na dann Prost und viel Spaß beim eben mal einen Seed knacken und eingeben. Diese hohe Komplexität ist es die dann aus dem Datastrom dieses deterministischen Verfahrens einen Datenstrom werden lässt der zwar immer noch deterministich ist aber denoch genauso wenig vorhersagbar ist wie echter Zufall. Praktisch geht diese Vorhersage dann nur wenn man alle geheimen Parameter kennt. Derjenige der also sicheren Zufall produzieren möchte kennt diese Parameter und kann somit auch die Funktionstüchtigkeit der benutzen Hardware und Software kontrollieren und nachweisen. Er wird diese Parameter nicht verraten und erzeugt somit Datenbits von denen er weis das auf Grund des mathematischen Verfahrens für andere diese Datenbits in keinster Weise vorherberechenbar sein werden. Wenn ich dir also 1024 Bit Zufall hier poste, dann WEIS ich das du niemals in der Lage sein wirst das zu knacken, weil ich ein bewiesenes mathematisches Verfahren angewendet habe und diese 1024 Bit Zufall durch mehrmalige Erzeugung und Verifikation auch als korrekt überrüft habe. Wenn du mir 1024 Bit Zufall einer Diode postest, dann werde ich diesen wahrscheinlich nicht offiziell knacken, aber ICH weis das du glauben MUSST das es echter guter Zufall WÄRE und dir NICHT sicher sein kannst. Du hast ergo ein Schwäche die man angreifen kann. Um das nochmal klar zu machen. In der Kryptographie geht es nur darum einen Angreifer beweisbar keienerlei Chancen für eine erfolgreiche Attacke zu geben. Denn nur das erzeugt Sicherheit, bzw. mein Vertrauen in diese Verfahren. Ich muß mir sicher sein das du als Angreifer keine Chancen hast. Sobald ich aber eben keinen mathematischen Beweis als Grundlage habe werde ich mir niemals sicher sein können das es da einen Angreifer geben könnte der meine Sicherheit kompromittieren könnte. Wenn also meine 1024 Bit Zufall aus leuter Nullen bestünde dann werde ich stützig. Ich erzeuge nochmals auf andere Hardware mit andere Software mit gleichen Parametern den Zufallsstrom. Sollte er wieder 1024 Nullen ergeben so ist der unwahrscheinlich zufällige Fall eingetreten das 1024 Nullen erzeugt wurden. Ich bin mir dann also absolut sicher das meine Hardware und Sofwtare keinen Fehler enthält. Wenn deine Diode aber auch 1024 Nullen erzeugt, dann kannst die niemals überprüfen ob das nun ein unwahrscheinlicher Zufall war oder ein Fehler in der Diode oder eine absichtliche Störung von Ausserhalb. Du hast nur eine Möglichkeit du erzeugst ein weiteres Set von 1024 Bits. Wenn diese wieder Nullen sind dann verhärtet sich der Verdacht das an der Hadware irgendwas nicht stimmt. Wenn aber nun wieder 1024 Bit Nullen und Einsen erzeugt würden dann musst du annehmen das die vorherigen 1024 Bit Nullen tatsächlich ein sehr unwahrscheinliches Zufallsergebniss waren. Du wirst dir aber niemals mehr sicher sein können das deine Diode noch das macht was sie machen sollte, du wirst UNSICHER werden. Das nennt man Verfahrens-Sicherheit. Die Verifizierung der Veerfahrenssicherheit kann immer nur duch eine Reproduzierbarkeit des Verfahrens erfolgen. Dein Diodenrauschen ist niemals reproduzierbar also kann es keine Verfahrenssicherheit geben. Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
[quote9 Beispiel: Du benutzt deine Hardware, Diode meinetwegen und erzeugst 1024 Bit Zufall. Nun beweise mir das das echter Zufall ist. Kannst du einfach nicht. [/quote] Genau. Muss ich aber auch nicht. Denn Du wirst mir das nächste Bit sowieso nicht vorhersagen können. Darum geht es doch. Ich wiederhole mich: Das Gegenteil von 'nicht beweisbar sicher' ist NICHT 'unsicher'. Leider machst Du in deiner Argumentation den Fehler, die Physik soweit abzulehnen, das Du demnächst auch noch die Schwerkraft und die Zeit in Frage stellst. Solange wir in der Natur sehen, das fitzelich kleine Dinger sich unseren Messungen entziehen, das Licht sich so verhält, wie es sich verhält und Atome merkwürdig rumwabern, so lange kannst Du wettern, wie Du willst, dich aber trotzdem auf eine blöde Diode verlassen, die vor sich hinrauscht. Genauso verlässt Du dich doch auf angeblich bewiesene Komplexitäten, bis sie von Chinesen zerpflückt werden. Du musst zugeben, das auch die Mathematik ein Glaube ist. Du glaubst an die Beweisbarkeit und bist so lange glücklich, bis Dir Jemand kommt und deinen ganzen schönen Komplexitätskram mit einem fiesen Trick über den Haufen schmeisst. Du glaubst so lange an den Beweis, bis Jemand dir zeigt, das da ein 'Denkfehler' drin ist. Keiner verlangt, das Du an die Heisenbergsche Unschärferelation glaubst, aber dann kannst Du aber auch gleich den Darwinismus in Frage stellen. Wieso gilt die Quantenkryptographie den anerkanntermaßen als die sicherste Form der Verschlüsselung, wenn es doch bloss völlig unbewiesener Quark ist, bei dem sich Quanten nur so verhalten, weil sie gerade Lust drauf haben? Also, ich habe den Glauben an die klassische Kryptographie verloren. Man erhöht die Bitanzahl und dann kommen ein paar Studenten und zerpflücken den schönen Beweis, oder man schaltet ein paar Millionen PCs zusammen und knackt munter drauf los, was doch angeblich unknackbar ist. Und wenn Quantencomputer in die Hosentasche passen, ist es vorbei mit der klassischen mathematischen Komplexitätsrechnung. Da sind mir sinnlos wabernde Quanten echt lieber. Zitat:
|
Re: "Sicheres" Passwort erzeugen...Wie?
Wir drehen uns im Kreise leider.
Zitat:
Lese doch bitte nochmal meine Worte über die "Verfahrenssicherheit" durch. Du wirst mir doch wohl zustimmen das alle heutigen angewendeten kryprographischen Verfahren 1.) aus der Mathematik kommen 2.) immer auf Beweisen basieren 3.) sehr wohl theoretisch immer knackbar sind und wir das auch wissen 4.) alle verifizierbar und ergo reproduzierbar sind. Also warum sollen wir dann die Sicherheit der Kryprographie von irgendwelchen physikalischen Phenomänen abhängig machen ? Nur weil du GLAUBST das andere Leute GLAUBEN wie sie die Welt subjektiv erfassen das RICHTIGE ist ? Darauf möchte ICH mich nicht verlassen ! Gruß Hagen PS: komme mir nicht mit Quantenkryptographie, die wurde schon wenige Monaten nach ihrer Veröffentlichung geknackt und man konnte BEWEISEN das man mindestens 25% der Informationen abhöhren und demzufolgen knacken kann. Und warum wurde sie geknackt ? Weil sie auf Physikalischen Phenomänen beruht und nicht auf Mathematik und starken Beweisen. |
Re: "Sicheres" Passwort erzeugen...Wie?
@alzaimar
das war seit langem das beste was ich @ DP über solche universum-diskussionen gelesen hatte :) full ack |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Ja die komplette Mathematik basiert auf Axiomen, also Annahmen NICHT Glaube. Die Beweisbarkeit in der Mathematik ist aber reine Logik und Analyse und hat nichts mehr mit Annahmen oder Glauben zu tuen. Ein Beweis ist einem gegebenen System von Axiomen unumstößlich. Wenn also ein Mathematiker ein System als kryptrographisch sicher beweist dann hat er auch gleichzeitig die entsprechenden Schranken des Systemes in dem es noch sicher beliebt mit bewiesen. Zusätzlich hat er anderen Mathematikern die Zielsetzung in die Hand gegeben WO sie arbeiten müssen um das System wieder knacken zu können. Beispiel RSA: RSA ist solange sicher wie 1.) die Primzahlen P,Q genügend groß gewählt werden 2.) das Modul N aus P * Q nicht mit heutigen Verfahren gelnackt werden kann. Punkt 2. besagt klipp & klar das es einen Weg gibt das System zu knacken, nämlich wenn wir einen Algorithmus finden um N schneller und effizienter zu faktorisieren als es heute mit unserem derzeitgen Wissen möglich wäre. Wir wissen also ALLES über das System RSA wir wissen sogar WANN es knackbar sein wird. Und dieses Wissen ermöglicht uns die klare Aussage "RSA wurde vollständig geknackt" wenn ein genialer Mathematiker eine schnelle Faktorizationsformel für die entsprechend großen Zahlen entdeckt hat. Alles in diesem zeitlichen Prozess basiert nun auf exakten und beweisbarem Wissen. Das dabei unsere Mathematik nur auf Axiomen beruht ist irrelevant, so lange diese Axiome für alle Menschen gleichmaßen gültig sind. Auch hier wird man schon frühzeitg Entwicklungen im Wissen erkennen können wenn durch eine mögliche Änderung dieser Axiome sich ein Kryptosystem als unsicher herausstellen würde. Wiederum, wir wissen das dann und können es dann beweisen. Uff, jetzt habe ich aber echt keine Lust mehr. Glaub Du an deine Physik, ich werde meine Meinung jedenfalls nicht ändern solange DU mir nicht einen exakten Beweis dagegen gibts. Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Hallo,
da hat sich ja seit gestern n Haufen getan... Na dann mal los: Ich glaube wir sind mit unseren Meinugen gar nicht so weit von einander entfernt(wenn wir nicht sogar die selbe haben und nur jeweis andere Teile betonen...) Im Grunde genommen hat unsere Diskussion ja 2 Teile: 1.) Wirklicher Zufall - Unschärferelation - Determinismus 2.) ein sicheres Passwort in der Kryptographie - Mathematik als Wissenschaft - Beweise Zum 1. Teil: Unschärferelation: Zitat:
Zitat:
![]() Zitat:
Zitat:
Angenommen die Katze wäre jetzt ein (Elementar-)Teilchen(jedenfalls irgendwas kleines, wo die Unschärferelation gilt), dann wäre sie, wenn man nicht reinguckt, gleichzeitig tot und lebendig(ui, wir haben n Katzenzombie erschffen :shock: :nerd:). Erst, wenn man den Deckel aufmacht(das Teilchen beobachtet), dann entscheidet sich die Katze, ob sie tot oder lebendig ist. Dies ist wiederum unvorhersagbar. Man kann nur gewisse Wahrscheinlichkeiten angeben... Was will das Gedankenexperiment nun sagen? Das Ganze hat nix mit Messfehlern zu tun; auch nur indirekt mit der Beeinflussung(durch die Beeinflussung wird die Entscheidung gefällt), sondern mit Wahrscheinlichkeiten(Schon wieder Mathe...)... __________________________________________________ ______________________________ So jertzt kommen wir mal zum 2. Teil: Mathe, Kryptigraphie: Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
2.) Jo. 3.) Jo. Auch hier könnte man wieder ne statistische Wahrscheinlichkeit angeben - genau so wie bei Punkt 1.) Zitat:
1.) Es besteht eine statistische Wahrscheinlichkeit, dass das BruteForcing in vertretbarer Zeit klappt(die Mathematiker, mal wieder) 2.) Vielleicht gibts in ein paar Jahren ja QuantenComuter, die sowas in vertretbaren Rahmen schaffen(die Physiker, ja, ja) 3.) könnten Rainbow-Tabellen die ganze Crackerei stark vereinfachen(ich schreibe könnten, weil ich dazu zu wenig Bescheit weiß)und 4.) könnte ja jemand ne tolle Möglichkeit einfallen große Zahlen zu faktorisieren oder sonst irgend ne Angriffsmethode finden(außer du kannst beweisen, dass das nicht geht...; auch wieder die Mathematiker) Zitat:
Mathematik und Physik spielen sich in die Hände. Ohne Mathe, sind der Physik die Hände gebunden und ohne Physik fehlt der Mathematik jeglicher Praxisbezug. Ich frage mich nur worüber wir jetzt eigentlich noch diskutieren... Hm... Wenn ich das jetzt richtig sehe, diskutieren wir gerade u.a. darüber, ob die Physik oder die Mathematik einen "brauchbareren" Zufall liefert. Ich sage also: Beide! // Bäh... in der zwischenzeit gabs ja nochmal 5 Posts. Hey, so schnell kann ich nicht tippen... Dann eben noch n kleiner Anhang: Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
2.) ja und? 3.) und 4.) Ui... da haben wirs ja. Genau! Unter der Voraussetzung, dass die Unschärferelation stimmt, is sowas aber nicht reproduzierbar, also auch nicht knackbar; das ist der Unterschied: Bei deiner Mathe-Version weiß man, dass es knackbar ist; bei dem Diodenrauschen besteht zumindest die begründete Möglichkeit, dass es nicht knackbar ist. Da ich nun in Mathe aufgepasst hab, weiß ich, was statistisch gesehen(schon wieder Mathe...) besser ist: ... Beides. Beide Verfahren gekoppelt halte ich somit für am sichersten... Zitat:
Zitat:
Zitat:
mfg Christian P.S.: Au der Thread gefällt mir. Sehr interessant! Das is was für jemand mit Physik und Mathe LK... |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
In der Theorie, hinter der Du dich versteckst, steht ja wohl außer Frage, das Du mit deiner Argumentation Recht hast. Aber in der Realität ist es eben nicht automatisch so, das ein mathematischer Beweis bedeutet, das das Bewiesene somit richtig ist. Denn der Beweis kann eine Lücke haben. Oder falsch sein. Oder einfach auf falschen Annahmen beruhen. Und das ist der Grund, warum man Heisenberg nicht mathematisch beweisen muss, da ja der Beweis an sich auch nicht 100%ig wasserdicht ist. Wenn ich mich schon nicht auf mathematische Beweise verlassen kann (aus o.g. Gründen), wieso soll ich dann unbeweisbare Annahmen grundsätzlich ablehnen? Siehst Du, Du glaubst aber an deine Beweise und hälst sie als 'Schild' gegen Alles Unsichere, weil Du eher an math.Beweise *glaubst*, als an physikalische Effekte. Es ist ja nun auch nicht so, das ich Mathematik ablehne und nur an das glaube, was ich sehe ('der Physikgläubige'), aber ein wenig Skepsis ggü. den absolut unumstößlichen Beweisen (in der Kryptographie) wäre schon abgebracht. Das hat die Vergangenheit gezeigt, oder etwa nicht? |
Re: "Sicheres" Passwort erzeugen...Wie?
Hi,
echt mal eine schöne Diskussion (vor allem eine interessante). Zitat:
Also eigentlich wurde es ja schon gesagt und ich bin nur zu faul (in den recht großen Beiträgen) nach der richtigen Stelle zu suchen, aber natürlich basiert die Mathematik auf Axiomen und kann damit nie einen unumstößlichen Beweis hervorbringen, aber er ist für dieses System von Axiomem unumstößlich. Wenn ich hingegen eines der Axiom als falsch annehme, ist der Beweis hinfällig. Es ist nunmal so, dass sowol Mathematik als auch Physik reine Philosophie bleiben. Ich glaube aber nicht, dass bis jetzt gezeigt werden konnte, dass ein unumstößlicher Beweis wiederlegt wurde (schönes Paradoxon dass du da kreiert hast). Natürlich kann ein Beweis falsch geführt werden. Wird in einem der Beweis Schritte ein Fehler gemacht, ist es jedoch kein Beweis (bzw. ein Fehlerhafter). Ist hingegen die Vorraussetzung falsch, beweist man nur das, was vorrausgesetzt wurde. Somit ist der Beweis an sich richtig und gültig, nur hat er nichts mit dem betrachteten Fall zu tun. Was die Kryptographie angeht, so muss ich Hagen zustimmen. Es ist gar nicht im Interesse der Kryptographie zu zeigen dass ein Algrorithmus überhaupt nicht geknackt werden kann (es wäre unmöglich), es wird nur gezeigt, dass der Aufwand groß genug ist. So ist das Entschlüsseln in kurzer Zeit sehr wertvoll. Würde ein verschlüsselter Code in 10^{20} Jahren entschlüsselt sein, so würde dies natürlich nicht heißen, dass er sicher ist, aber es würde auch keiner ernsthaft die Entschlüsselung beginnen (mit diesem Verfahren). Solange kein besseres Verfahren bekannt ist, muss dieser Code also als ausreichend sicher gelten, nie als absolut sicher. Natürlich kann man jetzt sagen, dass 10^{20} Jahre ein sehr absoluter Wert ist und damit nicht sinnvoll gewählt, nehmen wir also die Betrachtung der Assymptotischen Laufzeit. Ich denke nicht dass diese sich ändert sobald es einen Quantenrechner gibt. Sie beschreibt schließlich nur die (bis auf Konstante Faktoren) Anzahl der Rechenschritte. Wenn ich nun mehr als einen Schritt auf einmal ausführe, ändert es nichts an dieser Anzahl. Ich könnte schon jetzt einen Parallelrechner bauen, der zu jedem Problem dass 2^{n} Schritte braucht immer jeweils 2^{n} CPUs enthält und lande sofort bei konstanter Laufzeit. Wenn ich also ein beliebig großes Stück von 0en und 1en habe, bräuchte ich auch noch ein Register der Länge n (zu jedem beliebigen n) damit mein Quantenrechner dieses Wort in konstanter Zeit, ja was eigentlich? Ehrlich gesagt weiß ich nicht wie man die richtige Information extrahiert (in konst. Zeit). Hierzu kann man sich wiederum Hagens Argumentation zum XOR anschauen. Aber gut, angenommen es gibt einen Rechner der in konstanter Zeit 2^{n} Zustände gleichzeitig annehmen kann, dann kann der aber auch schon in konstanter Zeit alle möglichen Wort berechnen und damit ist jegliche Verschlüsselung hinfällig. Bleibt wieder mal die Frage, wie man nun die Richtige Information aus all diesen Zuständen extrahiert. Und hier dürfte es mal wieder nur gewisse Wahrscheinlichkeiten für jeden Fall geben. Jetzt wurde hier ja auch gesagt, dass das Rauschen einer Diode ebenfalls echt zufällig ist, das stimmt natürlich nicht (kann echter Zufall wirklich gezeigt werden?). Es ist nur (noch) nicht vorhersagbar wie eine Diode rauscht. Es wurde hier einfach Axiomiert, dass unter gleichen Vorraussetzungen unterschiedliche Ergebnisse erzeugt werden, aber wer kann denn garantieren dass alle Vorraussetzungen gleich sind? Dürfte schon unmöglich sein, da z.B. die kosmische Hintergrundstrahlung ständig weiter abnimmt. Ok, nicht messbar für einen sehr kleinen Zeitraum und wahrscheinlich kein Einfluss auf die Diode, aber es sind nicht mehr die gleichen Vorraussetzungen. Aber vielleicht kann man irgendwann gut approximieren, wie sich diese Diode verhält und unter nahezu gleichen Vorraussetzungen den gleichen Zufallswert erzugen. Auch diese Diode ist also weder sicher noch unsicher. Solange keine Vorhersage möglich ist, ist auch die Diode ausreichend sicher. Sie sollte jedoch als unsicherer angesehen werden als etwas, von dem ich weiß wie es genau funktioniert. So kann ich bei Verschlüsselungen, die rein mathematisch funktionieren die Wahrscheinlichkeit genau berechnen (für einen bestimmten Stand des Wissens), solange ich das für die Diode nicht kann, darf ich keine höhere Sicherheit annehmen. Natürlich kann ich auch sagen, die Diode ist 100% sicher und die Diode ist 10% sicher, stimmt alles, da ich es nicht wiederlegen kann, aber man sollte vom Schlechtesten ausgehen und das hieße hier minimal sicher. Und da man vom schlechtesten ausgehen sollte liegt nur in der Natur der Kryptographie. Wobei es lustig wäre einen Algorithmus zu nehmen der sicher sein könnte. Wie gesagt, absolute Sicherheit kann es nicht geben, man müsste nur alle Möglichkeiten erzeugen und über einem endlichen Alphabet gibt es nur unendlich-abzählbar viele, da die verschlüsselten Daten endlich sein dürften sogar nur abzählbar viele. Damit stellt sich doch eigentlich garnicht mehr die Frage nach einem echten Zufall (der hilft eh nicht). Es kann nur eine ausreichend sichere Verschlüsselung geben und für diese reicht etwas ausreichend zufälliges. Ob eine Pseudozufallszahl ausreichen zufällig ist, ist natürlich wieder vom aktuellen Stand abhängig (gleiches gilt dann aber auch für das Rauschen einer Diode oder dem Radioaktiven Zerfall). Gruß Der Unwissende |
Re: "Sicheres" Passwort erzeugen...Wie?
Anders ausgedrückt:
Da ich mit meinem Verfahren beweisen kann das es korrekt funktioniert kann ich im Vergleich zur Diode im minimalsten Falle nur genauso sicher sein oder aber sicherer. Ich kann ein Patt oder Matt verbuchen. Das Verfahren mit echtem Zufall einer Diode kann im besten Fall aber nur so sicher sein wie meines und im schlechtesten Falle aber unsicherer. Du kannst verlieren oder Patt setzen. Es ist irrelevant ob dein Dioden-Zufall sicher oder unsicherer ist da ich mit meinem Vorgehen beweisen kann das mein Vorgehen Verfahrenstechnisch und ansich sicher sein muß. Damit nun der Dioden-Zufall genauso stark wird musst du mir erstmal beweisen das es genauso stark ist. Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Ich glaube nicht an die Mathematik, wenn du nur daran glauben musst dann ist das dein Problem. Aber bitte lege mir nicht solche Behauptungen in den Mund. Die Mathematik glaubt an garnichts, sie stellt Behauptungen auf und analysiert durch rein logische Ableitungen das daraus enstehende System. Sonst nichts. Man muß also nichts glauben in der Mathematik. Daraus ergibt sich das die Mathematik garnicht den Blick auf die Realität verlieren kann, sie hat mit Realität garnichts am Hut. Und würde man in der Mathematik die richtigen Axiome aufstellen dann wird es auch möglich sein über die Grenzen der Heisenbergschen Vermutung hinauszuschauen. Gerade diese Sichtweise ist es die die Mathematik so unerträglich faszinierend macht, denn obwohl sie nur reines Gedankengebäude ist kann sie über die Aufstellung der richtigen Axiome denoch unsere Realität erklärbar machen. Wir sollten wirklich versuchen sachlich über ein Thema zu diskutieren, statt mit unterschwelligen Botschaften suggestiv zu argumentieren und persönlich zu werden. Ich habe sehr wohl alles mitbekommen, so alt bin ich noch nicht um senil zu sein. Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Ich habe mal bemerkt das, wenn ich random (mit randomize davor) verwende irgendwie das erste ergebniss immer das gleiche ist.
Ich verbinde darum jetzt randomize immer mit 'ner for schleife. z.B.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var RandomI, I: integer; begin for I:=0 to 1000 do begin Randomize; RandomI:=random(10)+1; end; end; |
Re: "Sicheres" Passwort erzeugen...Wie?
Randomize benutzt GetTickCount zur Initialisierung des Seeds für Random(). So wie du das jetzt machst ist es also wenig sinnvoll. Wenn deine Schleife mit 1000 Durchläufen auf Rechner X mit 1Ghz noch länger als 1 Millisekunde dauert so könnte es auf Rechner Y mit 5Ghz nur noch < 1ms dauern. In dieser Zeit hat sich der Wert von GetTickCount() nicht geändert, ergo 1000 mal gleicher Seed, ergo immer der gleiche Psudozufall mit Random().
Du solltest Randomize; nur einmal zum Start einer Session aufrufen. Besonders bei sehr häufigem Aufruf von Randomize() besteht also die Gefahr das Random() eben keinen Pseudozufall mehr erzeugen kann, sondern einfach mit GetTickCount() identisch ist. Du zerstörst quasi mit deinem Vorgehen die korrekte Funktionalität von Random(). Gruß Hagen |
Re: "Sicheres" Passwort erzeugen...Wie?
Wollte Daniel nicht einfach nur nen guten Tipp wie er gute zufällige Passwörter erzeugen kann?
Gott sei Dank leben wir einem Zeitalter wo Speicherplatz nicht mehr teuer ist ^^ Aber ich muss zugeben, dass ich immer wieder gerne solche Diskusionen verfolge und sie wirklich zum Denken anregen. Kompliment an die geduldigen Autoren :) |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
|
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Was wir hier, glaube ich, alle nicht vergessen haben, ist die Tatsache, das man eine in der Sache durchaus scharfe Auseinandersetzung führen kann, ohne sich nicht mehr lieb zu haben. Ach, wie ich solche Diskussionen liebe :love: , in diesem Sinne: :cheers: |
Re: "Sicheres" Passwort erzeugen...Wie?
[ot]
Zitat:
Atheismus nennst) und 2.) macht der - richtige - Glaube nicht blind sondern sehend... Aber ich glaube(:wink:) wir kommen vom Thema ab... [/ot] Erst mal zur Mathe: Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
1.) *wirklichen* Zufall: Den kriegst du unter Voraussetzung der Unschärferelation über die Diode 2.) eine nicht reproduzierbare Zahl um damit weiterzurechnen: Die kriegst du über deinen Algorithmus(wobei du hier angeben kannst, wie schwer es ist die Zahl zu reproduzieren) oder auch über die Diode(wobei du hier im Fall 1(Unschärferelation stimmt) 100%ig sicher sein kannst, dass die Zahl absolut unreproduzierbar ist, und im Fall 2(Unschärferelation stimmt nicht) keine Möglichkeit hast vorauszusagen, wie groß diese Wahrscheinlichkeit ist); Was man in diesem Fall nun nimmt, ist wohl Geschamcksache, denn bei beiden Methoden(Diode und Algorithmus) wird wohl keiner anfangen und versuchen da irgendwas zu knacken(außer a) die Unschärferelation ist widerlegt oder b) es ist ne schnelle Faktorisierungsformel gefunden) Zitat:
So jetzt zu Heisenberg: Zitat:
Zitat:
Zitat:
mfg Christian |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
Es gibt keinen -richtigen- Glauben. Denn der wäre ja, um richtig zu ein, beweisbar richtig, und dann müsste man nicht mehr glauben, dann weiss man. Ich würde mir nicht anmaßen, meinen Glauben als 'richtig' anzusehen, denn dann mach ich den gleichen Fehler wie fast alle Kriegstreiber der letzten 5000 Jahre. |
Re: "Sicheres" Passwort erzeugen...Wie?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz