Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Cryptography & Encryption Ver- und Entschlüsselung, Algorithmen, Kryptoanalyse ? Kryptographie in der Praxis. Blowfish, Triple-DES, XOR u.a.

crypting-encrypting

Diskussion: crypting-encrypting im Forum Cryptography & Encryption, in der Kategorie Security Area; Anzeige Hallo Leute, ich weiß zwar nicht wie ihr die sachen immer entschlüsselt, aber ich hab gerade ein script zum ...

Antwort
Alt 15.10.07, 15:44   #1 (permalink)
 
Registriert seit: 08.02.07
junior48000 Leistung: Facit NTK
Likes: 0
Standard crypting-encrypting

Anzeige

Hallo Leute,

ich weiß zwar nicht wie ihr die sachen immer entschlüsselt, aber ich hab gerade ein script zum verschlüsseln geschrieben, und wollte mal fragen wir sicher das ist.

Erstmal ein Beispiel.
Hallo Welt ---Wird zu---> T*sXee2rWi

So könnt ihr nun den Text entschlüsseln?:

Code:
WQ5D!!rSbbzXdd!nÖqqO3H1EÜjeQazÖkuuö44sNN-kRR1uVV6ssY1xxX3G~jQ5JJ8WÜ*5
Viel Spaß,

Junior
junior48000 ist offline   Mit Zitat antworten
Alt 15.10.07, 15:54   #2 (permalink)
IsNull
Guest
 
Likes:
Standard

Wie hier schon oft angemerkt, du solltest den Algo veroffentlichen, damit man die Stärke deiner Verschlüsselung beurteilen kann.
  Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 15.10.07, 16:07   #3 (permalink)
Themenstarter
 
Registriert seit: 08.02.07
junior48000 Leistung: Facit NTK
Likes: 0
Standard

ich mein was bring es wenn ich sage wie ich es verschlüsselt hab, ich will ja wissen ob jemand das wieder andersrum entschlüsseln kann. Wenn ich euch sag wie ich es gemacht hab dann kann das ja jeder.
junior48000 ist offline   Mit Zitat antworten
Alt 15.10.07, 16:12   #4 (permalink)
Moderator
 
Benutzerbild von xeno
 
Registriert seit: 09.09.04
xeno Leistung: Pentium Ixeno Leistung: Pentium I
xeno eine Nachricht über ICQ schicken
Likes: 76
Standard

Zitat:
Original von junior48000
ich mein was bring es wenn ich sage wie ich es verschlüsselt hab, ich will ja wissen ob jemand das wieder andersrum entschlüsseln kann. Wenn ich euch sag wie ich es gemacht hab dann kann das ja jeder.
jep. und sobald es einer geknackt hat ist die sicherheit komplett hinüber. daher ist eine solche methode nicht sinnvoll.
xeno ist offline   Mit Zitat antworten
Alt 15.10.07, 16:18   #5 (permalink)
Themenstarter
 
Registriert seit: 08.02.07
junior48000 Leistung: Facit NTK
Likes: 0
Standard

ok, das ist das script das den code verschlüsselt:

das script   
PHP-Code:
<?php

function verschluesseln($text) {
  
$zeichen = array(" ""+""-"",""."";"":""*""~""!""?""0""1""2""3""4""5""6""7""8""9""a""b""d""e""f""g""h""i""j""k""l""m""n""o""p""q""r""s""t""u""v""w""x""y""z""A""B""C""D""E""F""G""H""I""J""K""L""M""N""O""P""Q""R""S""T""U""V""W""X""Y""Z""ä""ö""ü""Ä""Ö""Ü""ß");
  
$zeichen_anz count($zeichen);
  
$ver_text "";
  
$m 12;
  for (
$i=0$i<strlen($text); $i++){
    
$akt_zeichen substr($text$i1);
    for(
$j=0$j<$zeichen_anz$j++) {
      if(
$akt_zeichen == $zeichen[$j]) {
        
$n $j;
      }
    }
    
$a $n $m;
    if (
$a $zeichen_anz) {
      
$a $a $zeichen_anz;
    }
    
$ver_text .= $zeichen[$a];
    
$m $a;
  }
  return 
$ver_text;
}

?>



Edit:
Ursprünglich hatte ich mal ein script in C geschrieben, und wollte sowas ähnliches in PHP machen, was mir aber glaub ich nicht so gut gelungen ist xD...
hier mal das C script:

klick :)   
Code:
/***********************************************************************
*  Crypt
*
*  Crypt a string
***********************************************************************/
void Crypt(LPSTR szStr,  LPSTR szStrNew) {

	char	szNew[MAX_CRYPT];
	int		i;
	int		nAkt=CRYPT_OFFSET;

	nAkt=nAkt+(int)szStr[0];

	for (i=0; i<lstrlen(szStr); i++) {
		if (nAkt > 255) {
		  nAkt-=255;
		}
		szNew[i]=nAkt;
		nAkt=nAkt+(int)szStr[i+1];
	}
	szNew[lstrlen(szStr)]='\0';
	lstrcpy(szStrNew,(LPSTR)szNew);
}


/***********************************************************************
*  DeCrypt
*
*  Decrypt a string
***********************************************************************/
void DeCrypt(LPSTR szStr,  LPSTR szStrNew) {

	char	szNew[MAX_CRYPT];
	int		i,s1,s2;
	int		nAkt=0;

	s1=(int)szStr[0];
	s2=0;
	if (s1<0) {
		s1=256+s1;
	}
	//ShowInt(s1);
	nAkt=s1-CRYPT_OFFSET;

	for (i=0; i<lstrlen(szStr); i++) {
		szNew[i]=nAkt;
		s2=s1;
		s1=(int)szStr[i+1];
		if (s1<0) {
			s1=256+s1;
		}
		//ShowInt(s1);
		nAkt=s1-s2;
		if (nAkt < 0) {
			nAkt+=255;
		}
	}
	szNew[lstrlen(szStr)]='\0';
	lstrcpy(szStrNew,(LPSTR)szNew);
}
junior48000 ist offline   Mit Zitat antworten
Alt 15.10.07, 16:47   #6 (permalink)
 
Registriert seit: 14.06.07
Bytestream Leistung: Facit NTK
Likes: 0
Standard

Irgendwie fehlt da ein Schlüssel?
Bytestream ist offline   Mit Zitat antworten
Alt 15.10.07, 16:52   #7 (permalink)
Themenstarter
 
Registriert seit: 08.02.07
junior48000 Leistung: Facit NTK
Likes: 0
Standard

Ich hab das verschlüsslungsscript hier reingestellt, daraus sollte ersichtlich sein wie sich das verschlüsselte ergibt. Oder was fürn schlüssel willst du?
junior48000 ist offline   Mit Zitat antworten
Alt 15.10.07, 16:59   #8 (permalink)
Moderator
 
Benutzerbild von lightsaver
 
Registriert seit: 19.06.06
lightsaver Leistung: Pentium Ilightsaver Leistung: Pentium Ilightsaver Leistung: Pentium I
Likes: 51
Standard

Zitat:
Original von Bytestream
Irgendwie fehlt da ein Schlüssel?
das sieht für mich nach einem dynamischen cäsar aus. damit braucht man keinen schlüssel. die verschiebung ergibt sich immer aus dem aktuellen feld und dem wert des nächsten so wie ich das sehe.

ich will mich hier nicht zu weit aus dem fenster lehnen, da crypto nicht grad mein gebiet ist, aber ich möchte fast behaupten, dass dies nicht sicher ist. ich denke auch, dass da von den spezies hier bald ne begründung dafür kommen wird
lightsaver ist offline   Mit Zitat antworten
Alt 15.10.07, 17:38   #9 (permalink)
Moderator
 
Benutzerbild von Elderan
 
Registriert seit: 30.03.04
Elderan Leistung: 8086
Likes: 14
Standard

Hallo,
Zitat:
Kerckhoffs? Prinzip
Die Sicherheit eines Kryptosystems darf nicht von der Geheimhaltung des Algorithmus abhängen. Die Sicherheit gründet sich nur auf die Geheimhaltung des Schlüssels.
Einfach nur verschlüsselten Code zu posten, ist absolut schwachsinnig und keiner der sich halbwegs mit der Kryptographie auskennt, wird sich die Mühe machen, und versuchen den Algorithmus zu erraten.
Elderan ist offline   Mit Zitat antworten
Alt 15.10.07, 17:43   #10 (permalink)
Themenstarter
 
Registriert seit: 08.02.07
junior48000 Leistung: Facit NTK
Likes: 0
Standard

@elderan: ich hab doch sogar das script gepostet mit dem man den Text verschlüsseln kann. Ich will auch nichts entschlüsselt haben, sondern nur wissen wie sicher das wäre.
junior48000 ist offline   Mit Zitat antworten
Alt 15.10.07, 17:46   #11 (permalink)
Moderator
 
Benutzerbild von Elderan
 
Registriert seit: 30.03.04
Elderan Leistung: 8086
Likes: 14
Standard

Hallo,
die Frage sollte man sich auch selber beantworten können:
Was garantiert bei dir Sicherheit?

Nichts, weil du keinen Key verwendest (naja außer evt. der Startwert für $m)

=> Absolut unsicher
Elderan ist offline   Mit Zitat antworten
Alt 15.10.07, 17:49   #12 (permalink)
Themenstarter
 
Registriert seit: 08.02.07
junior48000 Leistung: Facit NTK
Likes: 0
Standard

aber im Prinzip kommt bei dem ergebnis es auch auf die reihenfolge der Zeichen an, wenn ich ein zeichen hinzufüge, wegnehme oder vertausche kann was vollkommen anderes rauskommen...
ich mein bei:
$zeichen=array(" ",....);
junior48000 ist offline   Mit Zitat antworten
Alt 15.10.07, 17:56   #13 (permalink)
Moderator
 
Benutzerbild von Elderan
 
Registriert seit: 30.03.04
Elderan Leistung: 8086
Likes: 14
Standard

Hallo,
nur weil etwas vollkommen anderes herrauskommt wenn man 1 Zeichen ändert, heißt dies nicht, dass dein Code sicherer ist.

Du hast vermutlich eine Entschlüsselungsroutine, und diese braucht nur den Startwert von $m, wovon es nicht allzuviele gibt.

Guck mal deinen verschlüsselten Text an:
WQ5D!!rSbbzXdd!nÖqqO3H1EÜjeQazÖkuuö44sNN-kRR1uVV6ssY1xxX3G~jQ5JJ8WÜ*5

Dort subtrahiert man von W 12 ab, weil $m mit 12 initialisiert wird und man bekommt so den 1. Klartextbuchstaben.
Da nun $a = W gilt, kann man gleich den nächsten Buchstaben entschlüsseln.
Der 2. Klartextbuchstabe wäre dann Q-W.
Der 3. Klartextbuchstabe wäre dann 5-Q
usw.

Wie du siehst, ich bräuchte nichtmal den Startwert für $m, um den Code (bis auf den 1. Buchstaben) zu entschlüsseln.
Elderan ist offline   Mit Zitat antworten
Alt 15.10.07, 18:30   #14 (permalink)
Themenstarter
 
Registriert seit: 08.02.07
junior48000 Leistung: Facit NTK
Likes: 0
Standard

@Elderan:

das stimmt nur bedingt. Denn wenn man die kette wo die zeichen stehen völlig durchmicscht, woher willst du dann wissen was Q-W oder 5-Q ist das ist ja davon abhängig wie die Zeichenkette oben aufgebaut ist.

Das ist das erste Programm (nachdem in C) was ich geschrieben hab im bezug verschlüsseln, ich hab da auch nicht die große ahnung, aber was könnte ich denn z.B. besser machen?
junior48000 ist offline   Mit Zitat antworten
Alt 15.10.07, 18:33   #15 (permalink)
IsNull
Guest
 
Likes:
Standard

Man kann mittels Low Level Debugger(Reverse Engineering) deinen kompilierten Code anschauen und so den Algorythmus erkennen/analysieren, bez. deine "verwurstelte Reihenfolge" auslesen.
  Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Security Area » Cryptography & Encryption » crypting-encrypting
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Crypting vor bösen Webhost providern connect Cryptography & Encryption 11 30.09.04 11:37
Encrypting Operation Flashpoint ID blackwidow Cryptography & Encryption 18 17.06.04 14:24


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61