Thema: Verschluesselung mit XX Bit

Howdy! <P>Also iich moechte nun text dateien verschluesseln, die mit einem eigenen programm auf ienen localen server hochgeladen werden und dort werden sie wieder entschleusselt, damit der user es benutzen kann. Ich will verhindern, dass wenn einer die pakete abfaengt die texte nicht lesen kann (und PGP kann ich nicht benutzen!)....<P>Es ist mir klar wie Rot13 etc. funktioniert, aber das knackt jedes kind in weniger als 10 min. <P>Nun jeder weiss, dass er einen 64 Bit codierung in Gurilla drin aht, aber was bedeutet 64 Bit vershcluesselung. Was ist das??? Und wie geht das??? <BR>Und hat einer beisoeile, wioe mna es sich selber schreiben kann???? TUts, Howtos? etc.???<P>Thnx a lot Azrael

Life is given...life is taken
and somewhere there between I live my life

Re: Verschluesselung mit XX Bit

Hi!<BR>Also, das ist jetzt nicht irgendwas 80 oder 128 bit, aber so habe ich es immer gemacht, wenn ich was verschluesseln wollte:<BR>Ich habe zwei Bytes (das zu verschluesselnde mit dem Passwortbyte) geXORt  [img]images/icons/smile.gif" border="0[/img]<BR>Also im Prinzip geht das so:<BR><BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><HR><pre><BR>   Byte 1: 10011101<BR>   Byte 2: 01010110<BR>Ergebinis: 11001011<BR></pre><HR></BLOCKQUOTE><BR>XOR heisst, wie Du wahrscheinlich weisst, entweder oder<BR>Bit1 wahr bit2 falsch: wahr<BR>Bit1 wahr bit2 wahr: falsch<BR>Bit1 falsch bit2 falsch: falsch<BR>Bit1 falsch bit2 wahr: wahr<BR>Es kommt auf deine Programmiersprach a, aber oft kannst Du das einfach mit dem Befehl <BR>(STR -> mache string aus nummer<BR>VAL 0> mache nummer aus string)<BR>C := STR(VAL(B) XOR VAL(A))<BR>oder halt so was in der Art machen.<BR>Nun, bei dieser Methode kann man immer noch 256 verschieden Kombinationen ausprobieren und eine davon stimmt. Deshalb nimmst Du einfach jedes mal ein anderes Byte als Byte2 (Passwortbyte). Hier ein Beispiel:<BR>String="Der geheime text"<BR>Passwort="passwort"<BR>Starte schleife<BR>i:=i+i<BR>j:=j+j<BR>wenn j>Laenge von Passwort dann j:=1<BR>k := zeichen nummer i von string XOR zeichen nummer j von passwort<P>Ausgabestring := Ausgabestring mit k dranhaengen<BR>wenn i = Lanege von String dann breche schleife ab (alle zeichen verschluesselt)<BR>Ende Schleife<P>Zum endschluesseln kann man denselben code dann wieder gebrauchen!

Re: Verschluesselung mit XX Bit

noch was. wenn dein passwort dieselbe laenge (oder laenger) hat wie der zu verschluesselnde text und jedes mal ein anderes Passwort benutzt wird, dann ist es (Rot13 uebrigens auch, wenn jedesmal ne andere Zahl fuer nen anderen buchsaben genommen wird) nicht entschluesselbar.

Re: Verschluesselung mit XX Bit

solltest du etwas von c++ programmierung verstehen, schau dir doch einfach mal das hier an:<BR><A HREF="http://www.taunusstein.net/~maxt/files/developer/crypt/cast2.zip" TARGET=_blank>cast2.zip</A><P>ansonsten kann ich diese lektüre empfehlen:<BR><A HREF="http://www.taunusstein.net/~maxt/files/tutorials/crypt/crypt1.pdf" TARGET=_blank>crypt1.pdf</A><BR><A HREF="http://www.taunusstein.net/~maxt/files/tutorials/crypt/crypt2.pdf" TARGET=_blank>crypt2.pdf</A><BR><A HREF="http://www.taunusstein.net/~maxt/files/tutorials/crypt/crypt3.pdf" TARGET=_blank>crypt3.pdf</A><P>sir tru$t<P>ps  das effektivste ist vermutlich ein gehashtes passwort (unter unix siehe crypt(3) )<A HREF="http://www-biocomp.doit.wisc.edu/cgi-bin/man-cgi?crypt" TARGET=_blank>man page</A>. So dass du den gehashten schlüssel als basis für eine xor oder irgendeine andere verschlüsselungsroutine verwendest. damit umgehst du nämlich einmal das problem, dass jemand dein passwort raten könnte und zum zweitwn könntest du in die hash-routine irgendeine art von timestamp einbauen, so dass jemand, der den code heute geknackt hat morgen von neuem anfangen darf.<P>sir tru$t

5

Re: Verschluesselung mit XX Bit

Howdy! <P>Whooop post #300  [img]images/icons/smile.gif" border="0[/img] <P>Also ich moechte das ganze in Perl programmieren. Von C habe ich etwas ahnung, aber nicht von C++. <P>Also die crypt funktion waere eine gute leosung, sollte es nur um passwds gehen, aber ich verschicke ganze datein. Und da die cryp funktion ja iene falltor verschluesselung ist (man kann es nicht decodieren) geht es nicht mit crypt (oder gibt es eine encrypt funktion???)....<P>Daher will ich schluessel einsetzen mit einer 32 Bit verschleusselung, aber was genau bedeutet denn jetzt 32 bit verschluesselung???? Was macht eine  "Bit" verschluesselung....<P>Waere cool, wenn einer mir  ^^^^ damit helfen koennte, und auhc ien paar ideen abgeben koennte, wie ich es loesen koennte...<P><BR>Ich lade mir gerade die PDF file....<P>CU Az

Life is given...life is taken
and somewhere there between I live my life

Re: Verschluesselung mit XX Bit

@arkon: Biste froh über 300 Beitr.? Wenn ja, ich hab 369. Hehe. Bald sinds 400, aber das ist ja nich das wichtigste. Das wichtigste ist dass 1+1=2 (oder dass jede Primzahl 4n+1 bzw. 4n-1 ist (od.2))!

mfG whitehouse

Re: Verschluesselung mit XX Bit

Ähem ..!!<P>  [img]images/icons/grin.gif" border="0[/img]

Moderator devshare.de | Usability

8

Re: Verschluesselung mit XX Bit

Howdy! <P>@braveheart: Das muss jetzt mal raus: shut the phreak up! OT geschwatze geht mir auf die nerven. Poste vernuenftig, BITTE! Und ud kennst ja noch nciht mla meinen namen :-(<P>CU Az

Life is given...life is taken
and somewhere there between I live my life

Re: Verschluesselung mit XX Bit

@azrael: Du postetest "Whoop post #300    [img]images/icons/smile.gif" border="0[/img]". Ich darf doch reagieren, oder? Also bitte.  [img]images/icons/blush.gif" border="0[/img] <BR>@arkon: Sorry, klingt ähnlich.  [img]images/icons/frown.gif" border="0[/img] <P>[ 02.06.2001: Beitrag editiert von: braveheart ]<p>[ 02.06.2001: Beitrag editiert von: braveheart ]

mfG whitehouse

10

Re: Verschluesselung mit XX Bit

@azrael<P>wenn du einen einfachen upload realisieren willst, benutze doch einfach ssl. das ist bombensicher, schnell, wird von fast jedem browser einigermassen implementiert und du hast die ganze arbeit mit dem verschlüsseln nicht.<P>ansonsten:<BR>die längenangabe bei verschlüsselungen bezieht sich normalerweise auf die schlüssellänge. ablaufen tut das in etwa so (symmetrischer algorithmus):<BR><BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><HR><pre>clear  -- fkt.A -->  crypted  -- fkt.B -->  clear</pre><HR></BLOCKQUOTE><BR>wobei die beiden funktionen (einfache mathematische verknüpfungen wie xor, mod, o.ä.) jeweils revers zueinander sind. diese funktionen erhalten auch noch einen weiteren parameter, das ist der schlüssel.<BR>bei einer einfachen xor-verknüpfung sieht das dann so aus:<BR><BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><HR><pre><BR>clear > AB > 01000001 01000010<BR>key   > cd > 01100011 01100100<BR>crypt > "& > 00100010 00100110<BR></pre><HR></BLOCKQUOTE><BR>mit einer ascii-chart sieht dein verschlüsselter text jetzt also so aus:<BR>"&.<BR>weil man sowas (sonderzeichen) normalerweise nicht gerne überträgt, kann man vorher noch einen uuencode machen, oder man denkt sich einfach eine eigene code-chart aus.<BR>dieser mechanismus wäre jetzt übrigens 16 bit lang und eindeutig (will heissen: länge von clear == länge von key).<P>s!r tru$t

Re: Verschluesselung mit XX Bit

Also, es gibt zwei Arten von Verschluesselung:<BR>Bitweise verschluesselung und Blockweise verschluesselung (die heissen noch anders, aber mal wieder vergessen).<BR>Bitweise geht, wie gesagt, indem das Byte mit nem anderen XORt, Bits verschiebt, einfache Kalkulationen (addition etc.) aussfuehrt etc.<BR>Blockweise verschluessleung funktioniert, indem man sich einen Block (z.B. 64, 128 Bit lang) nimmt, und etwas mit dem macht, aufspallten, wieder anders Zusammenfuegen, den Block vom vorherigen Block abhaengig macht etc. Man benutzt meistens ne Kombination von beiden. Du kannst Dir verschiedene Algorithmen anschauen und wahrscheinlich auch irgendwo den sourcecode fuer perl holen. Sonst musste selber schreiben.

Re: Verschluesselung mit XX Bit

Na, also XORn is wirklich zu lasch für ne richtige Verschlüsselung. Wenn der Hacker (vorausgesetzt er existiert) den Algorithmus nich kennt, ist es beinahe unmöglich zu entschlüsseln...<P>Sehr schwierig zu implementieren und natürlich auch nur mit Literatur sind asymm. Verfahren. Es gibt nur einen Haken: kennt der Hacker die Schlüssel der Leute, indem er sich auf beiden Seiten einhackt und  den Leuten statt den richtigen seinen Schlüssel einschleust...<P>RSA is ganz gut.

mfG whitehouse

Re: Verschluesselung mit XX Bit

Ähh, whiteheart, ich verstehe jetzt nicht so wirklich was Du meinst, werden den ersten noch den zweiten Absatz. Kannst Du es bitte mal genauer erklären?!

Re: Verschluesselung mit XX Bit

So gut na: <BR>XORn ist zu lasch => einfaches XOR mit nem 1Byte Schlüssel Byte-für-Byte ist wohl nicht das wahre. <BR>Wenn man den Algo. nicht kennt ist es kaum zu entschlüsslen => wenn du nicht weisst ob du + oder * oder sonst was macxhen sollst kommst auch nur schwierig zum gleichen Ergebnis (dummes Beispiel) <BR>( glaub das wird ein langer Abend  [img]images/icons/grin.gif" border="0[/img])<P>Sehr schwierig sind assym. Verfahren => grrml, assymetrische, d.h. Verfahren mit verschiedenen Schlüsseln sind schwierig zu berechnen etc. <BR>... => wenn der Hacker sich als Schlüsselprovider ausgibt siehts dumm aus.

mfG whitehouse

15

Re: Verschluesselung mit XX Bit

Hi Azrael,<P>bin neulich auf der Suche nach infos über das DBI Modul auf diese ziemlich gute Seite über Perl Module gestossen und hab mich an diesen Thread erinnern.<BR> <A HREF="http://www.thomas-fahle.de/pub/perl/Crypt/Crypt_Symmetric_Encryption.html" TARGET=_blank>http://www.thomas-fahle.de/pub/perl/Crypt/Crypt_Symmetric_Encryption.html</A> <P>Sorry, das ich das alte Zeugs rauskram, aber vielleicht hilft dir ja noch. Und wie gesagt... ne wirklich gute Webseite.<P>cu, sel.