Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [kryptografia] RSA w php
Forum PHP.pl > Forum > Gotowe rozwiązania
limak
Witam,
mam problem z implementacją RSA w php.... dokładnie to próbowałem użyć PEAR_crypt_rsa ( http://pear.php.net/package/Crypt_RSA ) jednak, odpalając przykład załączony z archiwum crypt_rsa ( http://pear.php.net/get/Crypt_RSA-1.1.0b.tgz ) generowanie kluczy trwa w baaardzo dlugo, ze mi przywiesza server, a strona sie nie ładuje.... Dlaczego tak jest? przeciez generowanie klucza 512bitowego nie trwa az tak dlugo!

z góry dziękuję za odpowiedź smile.gif

p.s.: sprawdzałem na php5 (a wersja crypt_rsa to 1.1.0b)
dr_bonzo
To sa po prostu skomplikowane obliczenia:

"For example generating a 1024 bit RSA key on a Palm Pilot can take upto 20 minutes, while it takes under half a minute on most modern Pentium class desktops." http://crypto.stanford.edu/~nagendra/projects/Palm_RSA/

+ http://en.wikipedia.org/wiki/RSA#Key_generation
limak
no ok, wiem że to są skomplikowane obliczenia na ogromnych liczbach pierwszych.... jednak nie ma jakiegos sposobu zeby to szybciej dzialalo? bo jesli nie, to po co komuś pear_crypt_rsa? no bo do generowania kluczy to sie nie nadaje.....

no dobra, powiedzmy ze sie nie da szybciej..... to moge wygenerować perę kluczy tylko raz, a potem cały czas ich używać? będzie to bezpieczne? czy nie powinno się tak robic? bo z tego co wiem, to mając juz klucze, to szyfrowanie/deszyfrowanie trwa juz krócej (maxymalnie pare sekund).

a tak wogóle....
Cytat
under half a minute on most modern Pentium class desktops
ehhh... to umnie to trwa dluzej niz pol minuty.... i to przy klucz 512.... bo 1024 to wole nawet nie probowac tongue.gif... jednym slowem cos jest nie tak..... sprawdzałem nie tylko na localhostcie, ale takze na serverze home.pl (mam tam konto)... no i to samo... strona sie nie ładuje....
dr_bonzo
Nie znam sie na tym za bardzo, ale raczej generuje sie je jednokrotnie i pozniej z nich kozysta -- tak sie dzieje przy istalacji linuxa -- jakies klucze sie generuja -- dlugo (ok 1 min).
Radarek
O kryptografii wiem tak ogolnie (troche wiecej o ssl). Ale zasada jest raczej ta sama: klucz generujesz raz (masz potem 2 publiczny i prywatny). Sek w tym zeby ten prywatny nie dostal sie w niepowolane rece i tyle smile.gif.
limak
acha, ok, dzieki smile.gif wsumie to w pgp klucze tez sie raz generuje biggrin.gif to chyba tak zrobie, raz wygeneruje, a potem bede ich uzywal.

Dzieki ze ktos odpowiedzial smile.gif

pozdrawiam,
Limak
FiDO
Potwierdzam, ze klucze w RSA generuje sie tylko raz.
limak
nie no.. nie moge.... odpalilem skrypt z wiersza poleceń (windows) nastepującej treści:
  1. <?php
  2. require_once 'Crypt/RSA.php';
  3.  
  4. //funkcja skopiowana z oryginalnego przykladu :)
  5. function check_error(&$obj)
  6. {
  7. if ($obj->isError()) {
  8. $error = $obj->getLastError();
  9. switch ($error->getCode()) {
  10. case CRYPT_RSA_ERROR_WRONG_TAIL :
  11. break;
  12. default:
  13. echo 'error: ', $error->getMessage();
  14. }
  15. }
  16. }
  17.  
  18. $key_pair = new Crypt_RSA_KeyPair(64);
  19. check_error($key_pair);
  20.  
  21. $public_key = $key_pair->getPublicKey();
  22. $private_key = $key_pair->getPrivateKey();
  23. echo("klucz publiczny".$public_key->toString()."<br>");
  24. echo("klucz prywatny".$private_key->toString()."<br>");
  25.  // wiem, wiem - dziwna konstrukcja echo, ale mam taki nawyk ;)
  26. ?>

i ten skrypt nigdy sie nie konczy!! no ja nie wiem co jest grane.... sprawdzcie to.... probowalem dla crypt_rsa 1.0 i dla 1.1.0b).... przeciez to jest nie mozliwe! no ile moge czekac... po 20 minutach wylączyłem... cos jest nie tak i to dalem krotki klucz bo 64. Pomóżcie (byłbym wdzięczny jak ktos sciągnąłby pear-crypt_rsa i odpalil ten przykladowy skrypcik powyżej).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.