-
20. 12. 2011, 18:35 #1Mitglied
- Registriert seit
- Dec 2011
- Beiträge
- 8
Programm zum Ver- und Entschleiern Programmieren
Hihi
also ich habe folgendes Problem. Ich würde gern ein Programm programmieren mit dem ich nach einer Tabelle ent- bzw. verschlüsseln kann.
so sieht z.b. eine Tabelle aus.
Habe mir vorgestellt das man 2 Zeilen hat. Oben die verschlüsselte Variante und unten dann der daraus resultierende "Reintext". Je nachdem wo man was ändert (oben oder unten) soll es dann ent- bzw. verschlüsselt werden.
Hatte in der Schule mal Basic was aber auch schon ne ganze weile her ist.
Ansonstem nahezu 0 Erfahrung mit Programmieren.
-
20. 12. 2011, 18:49 #2
Re: Programm zum Ver- und Entschleiern Programmieren
Schritt 1 du musst herausfinden was du willst, anhand des Texts kann man nur raten und dafür bist du hier falsch.
-
20. 12. 2011, 20:41 #3Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 8
Re: Programm zum Ver- und Entschleiern Programmieren
Ok ich präzisiere.

Es eght um diese Tabelle:
Die Maske sollte so ähnlich aussehen:
man sollte wie schon gesagt ver- und entschlüsseln können.
reicht das oder braucht ihr noch mehr infos?
-
20. 12. 2011, 20:55 #4
Re: Programm zum Ver- und Entschleiern Programmieren
Nein, was du machen möchtest, fehlt noch immer, wie die GUI Aussehen soll hast du ja vorher schon erläutert.
Direkt danach kommen wir zu Schritt 2&3, eigene Ansätze und welche Sprache.
-
20. 12. 2011, 21:19 #5Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 8
Re: Programm zum Ver- und Entschleiern Programmieren
Na ein Programm schreiben was dies kann... also die Buchstaben Paare in Buchstaben bzw. Zahlen umwandeln und umgekehrt.
Oder was meinst du?
-
21. 12. 2011, 00:29 #6
Re: Programm zum Ver- und Entschleiern Programmieren
Dass du ein Programm schreiben willst ist klar, sonst wärst du hier auch völlig falsch. Eine GUI kannst du in vielen Sprachen machen, wenn du etwa MS Visual C#/Basic nimmst hast du die GUI in 2 Minuten fertig. Einen passenden onChanged Handler für die Textboxen einzubauen ist auch nicht schwierig. Interessant ist nur die tatsächliche Codierungsfunktion. Aber da kann ich dir auch nicht helfen, ich habe nicht einmal verstanden wie die Verschlüsselung funktionieren soll.
Der Punkt ist: Solange du gar nichts hast und keine sinnvollen Fragen stellst kann dir auch keiner helfen.
-
21. 12. 2011, 01:09 #7Mitglied
- Registriert seit
- Oct 2011
- Beiträge
- 92
Re: Programm zum Ver- und Entschleiern Programmieren
na fragen wir doch mal mit was für einer Verschlüsselung du den arbeiten willst?
Mal ne sehr einfache Sache wäre alle Zeichen im ASCII Zeichensatz um eine bestimmte Anzahl zu verschieben.
etwa A = N
Das wäre ROT13 "verschlüsselung"
Das kann man dann wieder entschlüsseln, weil man weiss wie der Schlüssel funktioniert.
Diesen Schlüssel kann aber auch jeder andere sehr leicht erraten, ist also nicht so dolle.
Vielleicht reichts ja für deine Zwecke.
-
21. 12. 2011, 08:56 #8
Re: Programm zum Ver- und Entschleiern Programmieren
A = N, B = M, ...
Sowas ist aber echt eine billige Verschlüsselung. Besser wäre ein Hash oder MD5-Verschlüsselung, aber das wäre zu kompliziert.
-
21. 12. 2011, 09:04 #9
Re: Programm zum Ver- und Entschleiern Programmieren
Wäre es nicht, gibt doch Bibliotheken für alles. Allerdings ist MD5 kein Verschlüsselungsverfahren, oder wie willst du einen Hash wieder "entschlüsseln"?Besser wäre ein Hash oder MD5-Verschlüsselung, aber das wäre zu kompliziert.
-
21. 12. 2011, 09:30 #10Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 8
Re: Programm zum Ver- und Entschleiern Programmieren
Ok also dann erkläre ich die Verschlüsselung mal...
also nehmen wir einfach mal 2 Beuchstaben und eine Zahl die wir verschlüsseln wollen.
Für mein Beispiel nehme ich jetzt einfach mal "HE7"
H kann man laut Tabelle wie folgt verschlüsseln.
H wird zu AC, CA, SJ oder JS
da das H 2 mal in der Tabelle ist.
E wir verschlüsselt mit VU, UV, RJ oder JR
da es auch 2 mal vorhanden ist
Bei der 7 wird das schonwieder umfangreicher sie kan verschlüsselt werden mit
OJ, JO, UW, WU, KA, AK, GQ, QG, VT, TV, FN, NF, HP, PH, DC, CD, LZ, ZL, RY, YR, BS, SB, IM, MI, XE oder EX
Also könnte die komplette Verschlüsselung von HE7
AC-VU-OJ
CA-UV-JO
.usw sein.A
war das verständlich?
Ich habe versucht die mit Basic und den Befehlen IF, ELSE und ELSEIF zu schreiben.
Aber 1. bringt mir FBI nur Fehlermeldungen beim Ausführen
und 2. weiß ich nicht wirklich wie ich die GUI dann schreibe. Is einfach alles schon zu lange her... (fast 7 Jahre) ^^
-
21. 12. 2011, 09:33 #11Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 8
Re: Programm zum Ver- und Entschleiern Programmieren
-
21. 12. 2011, 09:33 #12
-
21. 12. 2011, 11:18 #13
Re: Programm zum Ver- und Entschleiern Programmieren
Nagut, jetzt weiß ich wenigstens wie die Verschlüsselung funktionieren soll, aber viel besser als ROT13 ist das auch nicht.
Schön. Mit if und else alleine wirst du wohl nicht weit kommen, aber wenn du irgendwelche Hilfe zu deinem Code möchtest solltest du ihn schon posten.
Was hat denn das FBI jetzt damit zu tun? Nein aber mal im Ernst: Wenn du gleich gesagt hättest dass du auf einem Mac programmieren willst hätte es vielleicht andere Tipps bezüglich der Programmiersprache und IDE gegeben. Wenn du die Fehlermeldungen zusammen mit dem Code hier postest klappt das vielleicht auch dass dir jemand helfen kann, so aber nicht.
Das wirst du schon rausfinden. Da wird es ja wohl irgendwo ein Tutorial oder so geben das zumindest mal erklärt wie man ein Fenster und eine Textbox macht.
MD5 ist nicht mit Hashfunktionen und Prüfsummen ausgestattet, sondern es ist ein Verfahren zur Berechnung einer Prüfsumme, neudeutsch Hash. MD5 ist eine Hashfunktion.
Zitat von Schinni999
Geschwindigkeit ist kein gültiges Argument. Erstens ist ROT13 sehr einfach und damit "schnell", zweitens sind selbst "langsame" Verfahren wie AES noch schnell genug dass du die Zeichen die du eingibst sofort entschlüsselt hast.
Zitat von bennischml
-
21. 12. 2011, 12:15 #14Mitglied
- Registriert seit
- Oct 2011
- Beiträge
- 92
Re: Programm zum Ver- und Entschleiern Programmieren
Du kannst ja auch noch neben ROT 13
den wert der Verschiebung per spalte und Zeile alternieren oder incrementieren etwa
1|1|1
1|1|1
1|1|1
zu
13|15|17 -> +13 und Spalte um 2 incrementiert
11|13|15 -> +13 und Spalte um 2 incrementiert + zeile um 2 decrementiert
15|17|19
Wie liegen die Tabellen/Daten denn eigentlich vor?
Sowas kann man leicht mit excel machen.
So, wenn es etwas kompizierter werden soll kann man sowas auch mit typumwandlungen machen.
ich hab da mal sowas in VB drangeklemmt was die werte hexadecimal umwandelt und das ganze mit einem Schüssel verdreht.
Spoiler:
Code:'E n c r y p t i o n D e k r y p t i o n Dim i, sValid, sInvalid sInvalid = "bcdfghijklopqruvwxyz0134678BCEFGHIJKLMOQSVWXYZ" sValid = "2RDPsANtame95nUT" randomize function int2hex(iNum) Dim sHex sHex = mid(sValid,cint(iNum \ 16)+1,1) & mid(sValid,cint(iNum mod 16)+1,1) int2hex = sHex End Function function hex2int(sHex) Dim iNum iNum = (instr(1,sValid,left(sHex,1))-1)*16 + instr(1,sValid,right(sHex,1))-1 hex2int = iNum End Function Function fCrypt(sClave,sTmp) Dim iKeyChar, iStringChar, i, ii, sEncrypted, iCryptChar sEncrypted = "" ii = 1 for i = 1 to Len(sTmp) iKeyChar = Asc(mid(sClave,ii,1)) iStringChar = Asc(mid(sTmp,i,1)) iCryptChar = iKeyChar Xor iStringChar sEncrypted = sEncrypted & int2hex(iCryptChar) ii = ii + 1 if ii > len(sClave) then ii = 1 end if next for i=1 to len(sEncrypted) ii = cint(rnd*(len(sEncrypted)))+1 sEncrypted = left(sEncrypted,ii-1) & mid(sInvalid,cint(rnd*(len(sInvalid)))+1,1) & right(sEncrypted,len(sEncrypted)-(ii-1)) next fCrypt = sEncrypted End Function Function fDecrypt(sClave, sTmp) Dim iKeyChar, iStringChar, i, ii, sEncrypted, iCryptChar, sTmp2 sEncrypted = "" sTmp2 = "" for i = 1 to Len(sTmp) if instr(1,sValid,mid(sTmp,i,1)) > 0 then sTmp2 = sTmp2 & mid(sTmp,i,1) end if next ii = 1 for i = 1 to Len(sTmp2)/2 iKeyChar = Asc(mid(sClave,ii,1)) iStringChar = hex2int(mid(sTmp2,((i-1)*2)+1,2)) iCryptChar = iKeyChar Xor iStringChar sEncrypted = sEncrypted & chr(iCryptChar) ii = ii + 1 if ii > len(sClave) then ii = 1 end if next fDecrypt = sEncrypted End Function
-
21. 12. 2011, 14:10 #15Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 8
Re: Programm zum Ver- und Entschleiern Programmieren
Ja ich weiß aber darum gehts ja nicht. Ich brauche halt diese Verschlüsselung da sie bei der Bundeswehr so verwendet wird. ^^
Wieso MAC? FBI also das hier
Spoiler:
Gibs auch für Windows. Worauf ich nebenbei gesagt auch programmieren möchte.
Wie oben schon gesagt verwendet die Bundeswehr diese Verschlüsselungstechnik.
AES kommt auch nicht in Frage weil man das per Hand schlecht halbwegs schnell machen kann, was man im Feld können sollte und die BW das wie gesagt nicht verwendet.
Gut dann werd ich den Code nachher nochmal so schreiben wie ich ihn hatte und hier posten.
Die Tabellen habe ich eig nur in papierform. hab die aber für hochladen in exel geschrieben.
wie typumwandlungen?Geändert von bennischml (21. 12. 2011 um 14:18 Uhr)
-
21. 12. 2011, 20:49 #16
Re: Programm zum Ver- und Entschleiern Programmieren
Also, hier mal einige Ansätze:
1) Speichere deine Kodiertabelle z.B. in eine csv Datei. Also immer links der Buchstabe, und rechts der entsprechende Schlüssel.
2) Lade diese csv in ein assoziatives Array, dictionary, oder was auch immer deine Programmiersprache dafür bietet. Du solltest so, oder ähnlich auf deine Kodiertabelle zugreifen können:PHP-Code:A;01
B;0A
C;GF
...
3) mach aus dem zu verschlüsselnden string ein char-array (Array mit buchstaben).PHP-Code:return meineCodes["A"] // Gibt "01" zurück
jetzt kannst du alle durchloopen:
fertich.PHP-Code:outputText = "";
foreach(meinchar IN allchars)
{
outputText = outputText + meineCodes[meinchar];
}
-
21. 12. 2011, 20:50 #17
Re: Programm zum Ver- und Entschleiern Programmieren
Nagut, dann hab ich nicht ausreichend gesucht. Den ersten Eintrag den ich gefunden hatte der nicht mit einer US Ermittlungsbehörde zu tun hatte war etwas für den Mac (FutureBASIC).
Wenn das sowieso unter windows ist möchtest du vielleicht doch mal visual basic express versuchen. Damit ist zumindest die GUI einfach zu erstellen.
Hat das Verfahren auch einen Namen? Kann der Schlüssel geändert werden, also eine andere Tabelle eben? Das wäre ja wichtig für dein Programm, wenn der Schlüssel variabel ist muss dein Programm auch eine Möglichkeit haben den Schlüssel einzugeben.
AES war auch nur ein Beispiel dafür, dass "schnell" relativ ist. Dass es für deinen Anwendungsfall unbrauchbar ist habe ich nie abgestritten.
-
21. 12. 2011, 20:55 #18Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 8
Re: Programm zum Ver- und Entschleiern Programmieren
Ok das klingt logisch... hab zwar noch nicht alles verstanden aber ich hoffe ich kann mir den rest anlesen^^
eine kleine frage noch... es gibt ja mehrere möglichkeiten für die verschlüsselung von A
kann ich die in eine extra zeile schrieben oder kommen die dahinter?
Danke schonmal im vorraus!
Ja als ich selber mal nach gegoogelt hab bin ich auch nur auf das gekommen.
Hab Virtual Basic jetzt instaliert und mal nen bissle mit der GUI erstellung probiert.. also das ist ja quasi YSWYG oder wie das heißt
#
Ja der Schlüssel ist variabel aber nen Namen konnte mir hier keiner meiner Vorgesetzten sagen... und auch google brachte dazu nichts brauchbares..
achso ok das hatte ich falsch verstandenGeändert von bennischml (21. 12. 2011 um 21:04 Uhr)
-
21. 12. 2011, 22:24 #19
Re: Programm zum Ver- und Entschleiern Programmieren
Wenn es mehrere Möglichkeiten gibt, welche soll denn verwendet werden?
-
21. 12. 2011, 23:28 #20Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 8
-


Zitieren


mehr lesen...







Resident Evil 6 erscheint in...
Heute, 15:21 in gulli:news