php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Scripts > BRAINSTORMING PHP/SQL/HTML/JS/CSS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


BRAINSTORMING PHP/SQL/HTML/JS/CSS Ihr habt eine Idee, aber keinen genauen Ansatz? Diskutiert mit anderen Usern des Forums über eure Gedankengänge um evtl. hilfreiche Ideen zu bekommen!
Normale Fragen bitte weiterhin in die entsprechenden Foren!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 21-02-2005, 03:59
MaxP0W3R
 PHP Senior
Links : Onlinestatus : MaxP0W3R ist offline
Registriert seit: Dec 2003
Beiträge: 1.809
MaxP0W3R ist zur Zeit noch ein unbeschriebenes Blatt
Standard Einfache Verschlüsselung

Erst mal der Quelltext

PHP-Code:
<?php
$klartext 
"Dies ist der Klartext";

$passwort "passwort";


function 
encode($key$text)
{
    
$l_k strlen($key);
    
$l_t strlen($text);
    
    if(
$l_k == 0) return $text// Ohne Key keine Verschlüsselung!!!
    
    
$encoded "";
    
$k 0// Position im Key
    
for($i=0$i<$l_t$i++)
    {
        if(
$k $l_k$k 0// Wenn ende des keys, dann wieder von vorne
        
$encoded .= chr(ord($text[$i]) ^ ord($key[$k])); // Verschlüsselung
        
$k++;
    }
    return 
$encoded;
}

function 
decode($key$chiffre)
{
    
$l_k strlen($key);
    
$l_t strlen($chiffre);
    
    if(
$l_k == 0) return $text// Ohne Key keine Verschlüsselung!!!
    
    
$decoded "";
    
    
$k 0// Position im Key
    
for($i=0$i<$l_t$i++)
    {
        if(
$k $l_k$k 0// Wenn ende des keys, dann wieder von vorne
        
$decoded .= chr(ord($chiffre[$i]) ^ ord($key[$k])); // Verschlüsselung
        
$k++;
    }
    
    return 
$decoded;
}

$encoded encode($passwort$klartext);
$decoded decode($passwort$encoded);

echo 
'<p><b>Klartext:</b> '.$klartext.'</p>';
echo 
'<p><b>Schl&uuml;ssel:</b> '.$passwort.'</p>';
echo 
'<p><b>verschl&uuml;sselt:</b> '.$encoded.'</p>';
echo 
'<p><b>Klartext, mit decode():</b> '.$decoded.'</p>';
?>
__________________


An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

Geändert von MaxP0W3R (21-02-2005 um 04:08 Uhr)
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 21-02-2005, 04:07
MaxP0W3R
 PHP Senior
Links : Onlinestatus : MaxP0W3R ist offline
Registriert seit: Dec 2003
Beiträge: 1.809
MaxP0W3R ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ein paar Anmerkungen

Ja, decode und encode sind eigentlich gleich, wurden der Übersichtlichkeit halber doch "aufgetrennt" damit man im Quelltext erkennen kann, was man gerade macht

Ja, das Bitweise XOR hat den Ruf der Kiddie Verschlüsselung, aber das liegt nur an der falschen Benutzung dieser Verschlüsselung




Die hier vorliegende Verschlüsselung kann für sehr kurze Texte benutz werden, z.B. für Passwörter.
Man merkt sich ein sicheres Passwort und verschlüsselt damit viele andere Passwörter.

Da Passwörter eher kurz sind, ist es schwer, ohne den Schlüssel ran zu kommen.


Der Schlüssel, mit dem man seine Texte/Passwörter verschlüsseln möchte, sollte eine zufällige Zeichenfolge sein, welche so lang ist wie der längste Text bzw. das längste Passwort...


Aufgrund der Kürze fällt eine Sprachanalyse komplett weg und Brute force bringt auch nichts, da mit ja nicht weiss, wann man das Passwort entschlüsselt hat, somit müsste man jedes Passwort ausprobieren und damit würde man also wieder Brute Force am ursprünglichen System benutzen müssen...


Ich möchte diese Funktion verwenden, um auf einem Server in einer MySQL Datenbank Passwörter mittlerer Sensibilität (z.B. von Fore, E-Mail Postfächern) zu speichern.
Man merkt sich einen Schlüssel und speichert und verschlüsselt damit beliebig viele.


Wie gesagt, da die Passwörter keine echten Texte sind und der Schlüssel genau so lang wie das längste Passwort ist, sollte es nahezu unmöglich sein, an die Passwörter heranzukommen....



Wenn man einen text mit einem genauso langen schlüssel, der 100% zufällig ist (also nicht mit rand() erzeugt ) dann ist es unmöglich diesen Text zu entschlüsseln.
Wie sich dass nun verhält, wenn man sich selbst einen schlüssel ausdenkt und damit sehr kurze texte verschlüssekt weiss ich nicht.

hat da jmd. von euch eine ahnung ?
__________________


An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

Geändert von MaxP0W3R (21-02-2005 um 04:09 Uhr)
Mit Zitat antworten
  #3 (permalink)  
Alt 21-02-2005, 04:15
MaxP0W3R
 PHP Senior
Links : Onlinestatus : MaxP0W3R ist offline
Registriert seit: Dec 2003
Beiträge: 1.809
MaxP0W3R ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hier die Beschreibung, wie man eine Xor verschlüsselung knack, allerdings muss wohl der schlüssel kürzer sein als der text und der text sollte schon gross sein (1 din a 4 seite)

Zitat:
XOR stellt im Prinzip einen einfachen symmetrischen Algorithmus dar, da die zweifache Anwendung des Algorithmus das Orginal wiederherstellt. Allerdings bietet XOR allein keinen zuverlässigen Schutz, da die Verschlüsselung leicht zu knacken ist. Dazu geht man folgendermaßen vor:

1.
Man ermittelt die Schlüssellänge anhand einer Koinzidenzerfassung10. Dieses Verfahren funktioniert folgendermaßen: Man XOR-verknüpft den Ciphertext mit sich selbst, wobei man die Kopie um einige Bytes verschiebt. Dann vergleicht man, wieviele Stellen gleich geblieben sind. Beträgt die Verschiebung ein Vielfaches der Schlüssellänge, sind etwas über 6 % gleich. Ansonsten sind es weniger als 0.4 %. Das lässt sich damit begründen, dass eine Stelle A mit sich selbst XORverknüpft wieder A ergibt (0 XOR 0 = 0) und sich der Schlüssel immer wiederholt. Die kleinste Verschiebung, die ein Vielfaches der Schlüssellänge ergibt, ist die Länge des Schlüssels.
2.

Man verschiebt den Chiffretext um diese Länge und XOR-verknüpft ihn mit sich selbst. Da XOR eine symmetrische Funktion ist, wird der Schlüssel beseitigt und es verbleibt der Klartext, XOR verknüpft mit dem um die Schlüssellänge verschobenen Klartext. Durch eine sogenannte Redundanzanalyse8 lassen sich dann Muster, beispielsweise sich wiederholende Wörter, hervorheben und der Orginaltext zurückgewinnen.9
Zitat:
Doch leider ist die Verschlüsselung so unsicher wie sie schnell ist. Man braucht lediglich die Länge des Schlüssels. Dann kann man den Text um die Länge des Schlüssels verschieben und dann mit sich selbst per XOR verknüpfen - und der Schlüssel entfernt sich selbst. Nun muss man nur noch etwas kombinieren, denn übrig bleibt nur noch eine XOR-Verknüpfung zwischen dem Klartext und dem verschobenen Klartext (nicht Geheimtext!). Findet man zum Beispiel ein Zeichen, das aus acht Nullen besteht, weiss man das es sich um zwei gleiche Buchstaben handeln muss (es sind dann ja alle Bits gleich => alles 0). Auch auflösen kann man etwas, wenn das eine Zeichen ein Leerzeichen ist. Denn nur dann kann das dritte Bit auf 1 gesetzt sein. Verknüpft man dann das Zeichen mit 00110010 dann erhält man auch das zweite Zeichen. Wenn man nun bedenkt, wieviele Leerzeichen es in einem Text hat, dann sieht man, dass schon viel aufgedeckt wird. Wenn man dann noch ein wenig weiter kombiniert, ist der Klartext schnell entschlüsselt.
__________________


An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

Geändert von MaxP0W3R (21-02-2005 um 04:19 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 21-02-2005, 12:57
MaxP0W3R
 PHP Senior
Links : Onlinestatus : MaxP0W3R ist offline
Registriert seit: Dec 2003
Beiträge: 1.809
MaxP0W3R ist zur Zeit noch ein unbeschriebenes Blatt
Standard

muh, hier sitzen doch studierte, hat denn keiner (mehr?) ahnung von dem thema ? ^^
__________________


An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )
Mit Zitat antworten
  #5 (permalink)  
Alt 21-02-2005, 13:25
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von MaxP0W3R
Wenn man einen text mit einem genauso langen schlüssel, der 100% zufällig ist (also nicht mit rand() erzeugt ) dann ist es unmöglich diesen Text zu entschlüsseln.
Richtig

Allerdings braucht der Empfänger ja den Schlüssel und wie kommt er da hin, ohne dass Eve ihn bekommt?

Zitat:
Wie sich dass nun verhält, wenn man sich selbst einen schlüssel ausdenkt und damit sehr kurze texte verschlüssekt weiss ich nicht.
Bestimmt nicht besser
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

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 are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

SMT

Server Monitoring & Management Tool Das SMT wurde von einem Administrator für Administratoren entwickelt, es vereinfacht den Alltag in der klassischen Administration und Verwaltung. Mit dem SMT kannst Du alle Deine Server & Dienste verwalten und überwach

04.09.2020 palle_1977 | Kategorie: PHP
numaeks Web-Farbmixer

Die RGB-Farben lassen sich hier auf unterschiedliche Weise mischen. Zur Einstellung werden auch die Dreh- und Schieberegler mit Canvas verwendet. Gespeichert werden die Farben in einem Cookie.

04.09.2020 numaek | Kategorie: JAVASCRIPT/ Tools
phplinX-Erotikportal 4 ansehen phplinX-Erotikportal 4

Erweiterbares Portal speziell für Erotik mit den Modulen Webkatalog, Bannermanagement und Kleinanzeigenmarkt. Sämtliche Module können über einen einzigen Adminbereich verwaltet werden.

18.06.2020 Cosinus14 | Kategorie: PHP/ Anzeigenmarkt
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:23 Uhr.