Est-ce que le cryptage sha1 ralentit l'execution d'un script

Eléphant du PHP | 130 Messages

21 mars 2006, 19:30

Bonsoir,

Voilà, j'ai plusieurs scripts php qui traitent du cryptage, chaque script crypte une trentaine de variables en sha1. Est-ce que cela à une incidence sur la vitesse d'exécution du script ?

Et est-ce que php reconnaitra toujours le sha1 ? Peut-on penser qu'un jour il ne soit plus compatible avec php ?

Merci beaucoup pour vos conseils.

Eléphant du PHP | 130 Messages

22 mars 2006, 09:08

Personne ne sait ?

J'ai eu beau chercher des informations sur Google je ne trouve rien, on parle juste de comment créer un mot de passe en md5 ou sha1.

Est-ce que ce code ralentit un script ou pas du tout que ce soit en utilisant sha1 ou md5 ?

$variable1=sha1($ahasher1);
$variable2=sha1($ahasher2);
$variable3=sha1($ahasher3); etc..

Est-ce aussi rapide que la simple création d'une variable normale ? Merci.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

22 mars 2006, 12:28

Je ne connais pas du tout sha1, mais dès le moment où tu vas appeller une fonction de cryptage (dès le moment où tu ajoutes un traitement d'ailleurs :)), cela prendra forcément plus de temps/mémoire/ressource que si tu ne le fais pas :)

La question est donc d'avantage de savoir si l'incidence est significative ou pas. Ce que tu peux faire, c'est donc chronométrer l'exécution de ton script, avec et sans. Il te suffit de mettre ce code au début de ton script :
<?
$temps = microtime ();
$temps = explode (" ", $temps);
$temps = $temps[1] + $temps[0];
$chrono_start = $temps;
?>
Et celui-ci à la fin :
<?
$temps = microtime ();
$temps = explode (" ", $temps);
$temps = $temps[1] + $temps[0];
$chrono_finish = $temps;
$temps_generation = $chrono_finish - $chrono_start;

echo 'Page générée en '.number_format ($temps_generation, 4,',','').' s';
?>

Eléphant du PHP | 130 Messages

22 mars 2006, 14:30

Merci beaucoup Ryle, je vais tester ça tout de suite, je pense que ce code me sera très utile. :)

Eléphant du PHP | 130 Messages

22 mars 2006, 15:41

Alors je viens de tester la page ça donne ça :

Script sans le hashage = 0,3500 s
Script avec hash md5 = 0,4500 s
Script avec hash sha1 = 0,5000 s

en moyenne ça donne ça, donc le script met 0,1500 s de plus à s'exécuter lorsqu'il doit passer trente variables en sha1.

Ca ralentit pas trop, il est vrai que le hash ne se fait que sur quelques octets pour chaque variable.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

22 mars 2006, 15:48

C'est effectivement très raisonnable :)