php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.04.2011, 16:16  
Benutzer
 
Registriert seit: 11.10.2010
Beiträge: 63
PHP-Kenntnisse:
Anfänger
Jim Martens befindet sich auf einem aufstrebenden Ast
Standard RSA-Verschlüsselung mit PHP umsetzen

Ich hatte gerade in der Schule RSA und versuche das ganze nun mit den php-eigenen Funktionen umzusetzen.
Ich bin bereits soweit, dass beim codieren der Nachricht bis zum Verschlüsseln alles klappt. Also die einzelnen Buchstaben werden per ASCII-Tabelle in Zahlen umgewandelt.

Der nachfolgende Schritt ist mir theoretisch bekannt, jedoch scheint es in der Praxis nicht zu klappen.
PHP-Code:
//e ist 3 und N ist 22, p ist 2 und q ist 11, d ist 7
//asciiArray hat einen Eintrag: 84101115116 ^= Test
$coded '';
        for (
$k 0$k count($asciiArray); $k++)
        {
            
$tmprslt pow(floatval($asciiArray[$k]), $this->publicKey['e']);
            
$tmprslt =  fmod($tmprsltfloatval($this->publicKey['N']));
            
$coded .= (string) $tmprslt.$this->splitChar;
        } 
Als Ergebnis erhalte ich 16A, da der splitChar A ist.
Wenn ich nun den umgekehrten Weg gehe, also decodieren möchte, dann müsste ich ja 16 hoch 7 modulo 22 nehmen. Als Ergebnis erhalte ich aber nicht 84101115116. Dadurch kann ich den Text auch nicht mehr decodieren.

Weiß jemand Rat?
__________________
Mit freundlichen Grüßen
Jim Martens
Jim Martens ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.04.2011, 19:35  
Erfahrener Benutzer
 
Registriert seit: 26.12.2010
Beiträge: 175
PHP-Kenntnisse:
Anfänger
elise befindet sich auf einem aufstrebenden Ast
Standard

Dein asccii array, sind das einzelne Zahlen?

Bedenke, grad bei wiki nachgelesen: K muss kleiner als N sein, bedeutet: darf nie über deine 22 kommen.

Wußte ich nicht, habe ich grad mal getestet mit deinen öffentlichen Schlüsseln: 3 und 22 und deinem privaten Schlüssel 7 und der Grundlage:
Zitat:
p*q = N
(p - 1)*(q - 1) = f(N)
(e*d) mod f(N) = 1
PHP-Code:
<?php
for ($K=0$K<22; ++$K) {
    echo 
"K original: ".$K;
    echo 
"<br />";
    
$x=pow ($K3);
    echo 
$x;
    echo 
"<br />";    
    
$C=$x%22;
    echo  
"C verschluesselt: ".$C
    echo 
"<br />";
    
$ypow($C7);
    echo 
$y;
    echo 
"<br />";
    
$Kr=$y%22;
    echo 
"K retour: ".$Kr
    echo 
"<hr />";
}
//ab 22 kein korrektes Ergebnis mehr.
?>
Wenn es nicht das ist, mag es an der Größe liegen, du bewegst dich knapp unter der Integergrenze kurz vorm Kippen ins double, oder an der Umformatierung "string->int". Das überblick ich mit dem wenigen Code nicht.
__________________
OSL♥

Geändert von elise (17.04.2011 um 19:39 Uhr).
elise ist offline   Mit Zitat antworten
Alt 18.04.2011, 19:22  
Benutzer
 
Registriert seit: 11.10.2010
Beiträge: 63
PHP-Kenntnisse:
Anfänger
Jim Martens befindet sich auf einem aufstrebenden Ast
Standard

Danke für die Hilfe. Jetzt habe ich es hinbekommen.
Edit: Es klappt doch nicht ganz. Irgendwo ist der Wurm drin. Ich werde heute mal testen, ob ich mit meinem Programm das selbe rausbekomme, wie bei manuellem Rechnen.
__________________
Mit freundlichen Grüßen
Jim Martens

Geändert von Jim Martens (19.04.2011 um 16:45 Uhr).
Jim Martens ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Eigene Verschlüsselung if ( !CryptExtension ) Lightware PHP Einsteiger 19 10.03.2011 20:14
.htaccess Verschlüsselung (MD5) Paeisi PHP Einsteiger 12 30.01.2011 21:46
[Erledigt] 3DES Verschlüsselung und XML OnerOrk PHP-Fortgeschrittene 1 17.12.2010 12:52
Verschlüsselung root66 PHP-Fortgeschrittene 4 30.07.2010 15:19
AES Verschlüsselung Java > PHP trudii11 PHP Tipps 2010 2 08.06.2010 16:31
Keine Ahnung: Dennoch 2 Ideen umsetzen Felge Off-Topic Diskussionen 3 30.05.2010 15:52
Shop ohne DB wie am besten Artikel Handling umsetzen litterauspirna PHP Tipps 2010 9 21.03.2010 12:07
PHP Verschlüsselung 3jfx PHP Tipps 2010 1 23.01.2010 22:18
Wie Lizenz System umsetzen? ghost120 PHP-Fortgeschrittene 5 20.07.2009 13:04
Dynamische Weiterleitung/URL-Rewrite mit Verschlüsselung über Exe-Datei mamsel2000 PHP Tipps 2008 2 14.11.2008 11:40
Schnelle symetrische Verschlüsselung Zender PHP-Fortgeschrittene 7 04.11.2008 23:53
Verschlüsselung? Wozu denn? phpdummi Off-Topic Diskussionen 20 13.08.2008 00:28
Shop Service - wie umsetzen? greg PHP Tipps 2006 1 07.05.2006 14:55
Verschlüsselung PHP Tipps 2005-2 13 07.06.2005 18:06
Verschlüsselung der Datenbank PHP Tipps 2005 18 18.05.2005 09:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php rsa, rsa php, php rsa verschlüsselung, rsa beispiel php, rsa 16 verschlüsselung, ascii tabelle rsa, verschlüsselung per php, php verschlüsselung ascii, alt 84,101,115,116, php rsa unterstützung, buchstaben \e ist 3\, email verschlüsseln php ascii, rsa verschluesselung 3 11, php 7 zeichen verschlüsselung, ascii rsa encryption, rsa ascii, php verschlüsselung mit rsa, rsa verschlüsselung c, rsa verschlüsselung .htaccess, undefined property: \rsa_keymaker\

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:37 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum