Crypter Frage
Crypter Frage
Hallo Leute,
ich wollte mich mal über Verschlüsselungen informieren.
Also: Ich würde gerne einen Algorithmus schreiben, mit dem ich z. B. Passwörter verschlüssel und in einer Datei speicher und beim nächsten mal wieder aufrufe.
Ich weiß nur, dass man z. B. mit ' ^ ' und andere Operatoren die Bits manipulieren kann, leider krieg ich das nur mit "int" hin.
Irgendwelche vorschläge oder Erklärungen, wie man eigenen Crypter schreiben könnte?
Danke im Voraus!
Kind regards,
Kmitska
ich wollte mich mal über Verschlüsselungen informieren.
Also: Ich würde gerne einen Algorithmus schreiben, mit dem ich z. B. Passwörter verschlüssel und in einer Datei speicher und beim nächsten mal wieder aufrufe.
Ich weiß nur, dass man z. B. mit ' ^ ' und andere Operatoren die Bits manipulieren kann, leider krieg ich das nur mit "int" hin.
Irgendwelche vorschläge oder Erklärungen, wie man eigenen Crypter schreiben könnte?
Danke im Voraus!
Kind regards,
Kmitska
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Crypter Frage
Ein Int sind vier Byte.Kmitska hat geschrieben:Also: Ich würde gerne einen Algorithmus schreiben, mit dem ich z. B. Passwörter verschlüssel und in einer Datei speicher und beim nächsten mal wieder aufrufe.
Ich weiß nur, dass man z. B. mit ' ^ ' und andere Operatoren die Bits manipulieren kann, leider krieg ich das nur mit "int" hin.
Ein Char ist ein Byte.
Vier Char sind ein Int.
Ein Computer hat keine Ahnung, was ein Passwort ist oder ein Buchstabe, aber es gibt im Computer Funktionen, die einen Interpreter enthalten und wenn sie den Byte-kodierten Befehl 65 erhalten, dann malen sie auf den Bildschirm ein Bitmuster, dass ungefähr so aussieht: -> A <-.
Noch Fragen? ^^
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: Crypter Frage
ausser meinen Zitat hab ich nichts verstanden... :/
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Crypter Frage
1. Der Computer arbeitet immer mit Zahlen, egal welchen Datentyp du da vor dir hast. Zeichen sind Zahlen, die einen Buchstaben repräsentieren. Ein String ist ein Array aus Zahlen die Zeichen Repräsentieren. Alles besteht aus zahlen, sogar der compilierte Programmcode. Alles.
2. Kryptographie beschäftigt sich damit, Zahlen so zu verschlüsseln, dass sie direkt nicht einsehbar sind, aber die Kryptografie wieder rückgängig zu machen ist.
Mit dem XOR-Operator geht das schon ganz gut:
A ^ B = C C ^ B = A
Aber das ist noch etwas zu Primitiv, daher gibt es Systeme wie AES, die das ganze etwas besser lösen und sich mit einer ganzen reihe an anderen Problemen auseinander setzten.
Wenn du aber nur Passwörter Speichern willst, gibt es eine weitere Möglichkeit, nämlich Hashes oder Krypto-Hashes. Dabei werden deine Daten so verarbeitet, das am Ende ein möglichst sehr Eindeutiger Identifier entsteht, der aber keinen Aufschluss über das Passwort liefert. Will man nun das Passwort prüfen, so hasht man auch dies mit dem selben Algorithmus und vergleich die Ergebnisse, da die gleich sein müssen.
Da das ganze Thema aber zu kompliziert ist, um es hier im Forum auf dauer zu erklären, empfehle ich dir dich über google schlau zu machen und gegebenenfalls damit etwas warten, bis das Programmiertechnische Verständnis gewachsen ist
2. Kryptographie beschäftigt sich damit, Zahlen so zu verschlüsseln, dass sie direkt nicht einsehbar sind, aber die Kryptografie wieder rückgängig zu machen ist.
Mit dem XOR-Operator geht das schon ganz gut:
A ^ B = C C ^ B = A
Aber das ist noch etwas zu Primitiv, daher gibt es Systeme wie AES, die das ganze etwas besser lösen und sich mit einer ganzen reihe an anderen Problemen auseinander setzten.
Wenn du aber nur Passwörter Speichern willst, gibt es eine weitere Möglichkeit, nämlich Hashes oder Krypto-Hashes. Dabei werden deine Daten so verarbeitet, das am Ende ein möglichst sehr Eindeutiger Identifier entsteht, der aber keinen Aufschluss über das Passwort liefert. Will man nun das Passwort prüfen, so hasht man auch dies mit dem selben Algorithmus und vergleich die Ergebnisse, da die gleich sein müssen.
Da das ganze Thema aber zu kompliziert ist, um es hier im Forum auf dauer zu erklären, empfehle ich dir dich über google schlau zu machen und gegebenenfalls damit etwas warten, bis das Programmiertechnische Verständnis gewachsen ist
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Crypter Frage
Hehehe, okay, versuchen wir es anders.Kmitska hat geschrieben:ausser meinen Zitat hab ich nichts verstanden... :/
Ein Computer hat keine Ahnung, was ein Buchstabe ist. Er kennt nur Zahlen. Integer-Zahlen, also auch solche, die man mit XOR verarbeiten kann.
Ein char ist eine Integerzahl mit 8 Bit Breite, ein int ist eine Integerzahl mit 32 Bit breite.
Code: Alles auswählen
int main( void )
{
union
{
char text[4];
unsigned int integer;
} value;
value.text[0] = 'b';
value.text[0] = 'l';
value.text[0] = 'a';
value.text[0] = '\0';
printf( "Value: %s entspricht %u\n", value.text, value.integer );
}
Ein Text ist am Ende nichts anderes als eine seeeeehr große Zahl, die man in viele Integers unterteilen kann (wie man große Zahlen in viele Ziffern von 0-9 unterteilen kann) oder in kleine Integers (chars), die man als Buchstaben ansieht.
Du kannst Dich mit rot13, bzw. Caesar-Verschlüsslung erstmal beschäftigen, das sind übliche Aufgaben, die ich meinen Schülern stelle. Sehr einfache Verschlüsselung, das hat auch nichts mit "Sicher" zu tun, aber es ist eine Verschlüsselung.cloidnerux hat geschrieben:Da das ganze Thema aber zu kompliziert ist, um es hier im Forum auf dauer zu erklären, empfehle ich dir dich über google schlau zu machen und gegebenenfalls damit etwas warten, bis das Programmiertechnische Verständnis gewachsen ist
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: Crypter Frage
Hmm... dass ein char wie ein int ist war mir klar... (str[0]='1';)
Was ich bis jetzt verstanden habe:
Ich teile einen String in Integers auf und manipuliere die Bits z. B. mit XOR-Operatoren?
Was ich bis jetzt verstanden habe:
Ich teile einen String in Integers auf und manipuliere die Bits z. B. mit XOR-Operatoren?
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Crypter Frage
Das ist eine Möglichkeit.Kmitska hat geschrieben:Was ich bis jetzt verstanden habe:
Ich teile einen String in Integers auf und manipuliere die Bits z. B. mit XOR-Operatoren?
Dafür muss der String immer eine durch vier glatt teilbare Länge haben (4, 8, 12...)
Wie Du schlussendlich verschlüsselst ist Dir überlassen.
Wenn das ganze realistisch sicher sein soll, wirst Du Dich allerdings deutlich mit Mathematik und Kryptographie auseinander setzen. Davon rate ich aber erstmal ab, denn daran sollte man sehr viel Spaß haben.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: Crypter Frage
Also wäre es so:
"Hallo Welt!"
HALL
O WE
LT!\0
und würden meine Mathe-Kenntnisse ausreichen für die sichere Verschlüsselung? (9. Klasse Gym.) :)
Ich würde schon ein richtigen Crypter entwickeln und gibt es da irgendwelche header Dateien, die ihr mir als Tutorial raten würdet?
Offtopic:
Über ein mobile-Portal für das Forum würde ich mich sehr freuen! :)
"Hallo Welt!"
HALL
O WE
LT!\0
und würden meine Mathe-Kenntnisse ausreichen für die sichere Verschlüsselung? (9. Klasse Gym.) :)
Ich würde schon ein richtigen Crypter entwickeln und gibt es da irgendwelche header Dateien, die ihr mir als Tutorial raten würdet?
Offtopic:
Über ein mobile-Portal für das Forum würde ich mich sehr freuen! :)
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Crypter Frage
Richtig.Kmitska hat geschrieben:Also wäre es so:
"Hallo Welt!"
HALL
O WE
LT!\0
Ich bin mir derzeit ziemlich sicher, dass meine Mathekenntnisse für eine sichere Verschlüsslung nicht ausreichen (Hochschulstudium, Abschluss Diplom-Informatiker (FH))Kmitska hat geschrieben:und würden meine Mathe-Kenntnisse ausreichen für die sichere Verschlüsselung? (9. Klasse Gym.)

Man verlernt so schnell wieder. ^^
Zwei Dinge: Erstens ist es einfacher, ein Passwort zu überprüfen als etwas wirklich zu verschlüsseln.Kmitska hat geschrieben:Ich würde schon ein richtigen Crypter entwickeln und gibt es da irgendwelche header Dateien, die ihr mir als Tutorial raten würdet?
Das Passwort musst Du ja nur durch den Fleischwolf drehen und das speichern. Drehst das nächste Passwort auch durch den Fleischwolf muss das gleiche rauskommen. Hier ist es wichtig eine große Streuung hinzubekommen, so dass der Fleischwolf möglichst grundsätzlich unterschiedliche Ergebnisse rausspruckt.
Hier entsteht ein Hashwert.
Wenn Du wirklich verschlüsseln willst, dann musst Du die verschlüsselten Daten ja auch wieder herstellen können. Du musst das Hackfleisch also wieder in den Fleischwolf stopfen und oben muss eine Kuh, ein Schwein oder ein Lamm rauskommen. Die Aufgabe ist schon etwas schwerer.
Auf meiner privaten Website findest Du die Enigma-Verschlüsslung, die die Deutschen im 2. Weltkrieg verwendet haben.
Damit solltest Du ins Thema kommen. Anschließend kannst Du Dich langsam aber sicher aktuelleren Verfahren widmen. Wenn Du bei Verschlüsselungen mit öffentlichen und privaten Schlüsseln angekommen bist, solltest Du am Ziel sein.
Schreib doch darüber ins Wiki, das kannst Du dann gleich noch als besondere Leistung im Gym vermarkten.
Jow, ich mich auch. Verliere ich auch nicht aus den Augen, aber Du sollst in der Schule aufpassen und nicht auf proggen.org lesen ;->Kmitska hat geschrieben: Offtopic:
Über ein mobile-Portal für das Forum würde ich mich sehr freuen!
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Crypter Frage
Kommt drauf an was du mit "Sicher" meinst.Kmitska hat geschrieben:und würden meine Mathe-Kenntnisse ausreichen für die sichere Verschlüsselung? (9. Klasse Gym.)
Sicher gegen deine kleine Schwester, die deine Liebesbriefe Lesen will?
Sicher gegen dein Eltern, die deinen Erotikkonsum beobachten wollen?
Sicher gegen die Kriminalpolizei, die nach Raubkopien sucht?
Oder sicher gegen die NSA, die mit ihrem Supercomputer alle Freunde und Feinde der Vereinigten Staaten durchleuchtet?
Diese Frage solltest du dir stellen. In den ersten zwei Fällen solltest du's hinkriegen, sofern deine Eltern nicht gerade Sicherheitsspezialisten sind.
In den letzteren Fällen würde ich wirklich SEHR davon abraten selber etwas zu basteln.
Es müsste einige Bibliotheken für Verschlüsselung geben, leider kenne ich keine. Such in Google nach "cryptography library C++" oder so.Ich würde schon ein richtigen Crypter entwickeln und gibt es da irgendwelche header Dateien, die ihr mir als Tutorial raten würdet?
Kryptographie ist ein ernstes Thema (unter Umständen hängen Leben davon ab), und ich würde - wenn du dich wirklich drauf verlassen willst - nichts selbst schreiben, bevor du nicht 15 Jahre in dem Geschäft bist.
m.proggen.orgÜber ein mobile-Portal für das Forum würde ich mich sehr freuen!
Das wär echt toll....
Haters gonna hate, potatoes gonna potate.