[gull] [SPAM] Re: [SPAM] Truc et astuces - openssl password et encryption

Daniel Cordey dc at pxcluster.com
Sun Mar 29 14:05:34 CEST 2026


On 3/29/26 13:19, Félix Hauri via gull wrote:
> Salut Daniel,
>
> Le Tue, Mar 24, 2026 at 03:04:05PM +0100, Daniel Cordey via gull a écrit :
>> S'il est évident qu'encrypter un fichier plus gros prend plus de temps, je
>> ne comprends pas du tout pourquoi, au-delà de 10'000 itérations, on a
>> soudain un accroissement du temps d'exécution.
> Ça, je me l'explique vaguement... iteration == repetition, plus d'itération
> donc plus de temps, mais l'algo étant prévu pour, le différence ne commence
> à devenir perceptible qu'à partir d'un certain nombre (important).
Perso, je ne pige pas cet accroissement. En répétant une exécution, on 
bénéficie du fait que les données du/des fichier sont dans le buffer 
cache; ce qui permet d'être plus rapide. Mais je ne comprends pas 
pourquoi, à partir d'un certain nombre on à cette augmentation du temps 
d'exécution. Ça me semble contre-intuitif. Normalement, N itérations 
devrait être N fois le temps d'exécution du premier run. J'aimerais bien 
comprendre ce qui se passe, car ça me semble vraiment bizarre.
>
>> Je m'attendais aussi à avoir le calcul du nombre de bytes/s que l'on
>> arrive à encrypter, ou performance/itération ; qui sont en fait les
>> valeurs les plus intéressantes.
> Pas sûr de bien comprendre: performance/itération

C'est simple... en général, j'essaie de déterminer le temps d'exécution 
pour N bytes, ce qui me permet d'estimer un temps d'exécution pour M * N 
bytes. CAD que si j'ai le temps d'exécution pour 10 KB, je peux estimet 
le temps d'exécution pour 100 GB. Toutefois, ile se peut que cette règle 
ne fonctionne pas... dans le cas où le temps d'exécution n'est pas O(N), 
mais O(f(N)), où f() est une fonction non-linéaire. Et c'est peut-être 
le cas avec les algorithmes de cryptage...

Donc, j'essaie de déterminer si la fonction de calcul (estimation) du 
temps d'exécution est une fonction linéaire ou pas. Et si c'est 
linéairre, je peux donc facilement estimer les temps d'exécutions en 
fonction du nombre de bytes. SI c'est non linéaire... s'agit-il de Ax + 
B, ou de Ax2 + Bx + C... ou autre ?

> J'ai modifié mon script pour tester différentes tailles entre 1M et 1G:
>      64b, 1M, 4M, 16M, 64, 256M et 1G.

OK, je vois


>
> Parfois, je me contente de constater.
> Expliquer openssl, aes, cbc, pbkdf2 et ses itérations est au delà de
> mes compétences/prétentions/ambitions,

Je comprends très bien et moi aussi je cherche à déterminer les limites 
d'utilisation des algorithmes. C'est donc pour ça que je suis intrigué 
par ces valeurs et ces itérations. Pour moi, on peut faire 1 ou 1 
milliards d'itérations d'un code et on doit toujours avoir le même temps 
d'exécution... C'est ça qui m'intrigue.


dc



More information about the gull mailing list