]> git.mxchange.org Git - friendica.git/blob - library/defuse/php-encryption-1.2.1/benchmark.php
FR update to the strings THX Perig
[friendica.git] / library / defuse / php-encryption-1.2.1 / benchmark.php
1 <?php
2
3 require_once('Crypto.php');
4
5 // Note: By default, the runtime tests are "cached" and not re-executed for
6 // every call. To disable this, look at the RuntimeTest() function.
7
8 $start = microtime(true);
9 for ($i = 0; $i < 1000; $i++) {
10     $key = Crypto::CreateNewRandomKey();
11 }
12 $end = microtime(true);
13 showResults("CreateNewRandomKey()", $start, $end, 1000);
14
15 $start = microtime(true);
16 for ($i = 0; $i < 100; $i++) {
17     $ciphertext = Crypto::Encrypt(
18         str_repeat("A", 1024*1024), 
19         str_repeat("B", 16)
20     );
21 }
22 $end = microtime(true);
23 showResults("Encrypt(1MB)", $start, $end, 100);
24
25 $start = microtime(true);
26 for ($i = 0; $i < 1000; $i++) {
27     $ciphertext = Crypto::Encrypt(
28         str_repeat("A", 1024), 
29         str_repeat("B", 16)
30     );
31 }
32 $end = microtime(true);
33 showResults("Encrypt(1KB)", $start, $end, 1000);
34
35 function showResults($type, $start, $end, $count)
36 {
37     $time = $end - $start;
38     $rate = $count / $time;
39     echo "$type: $rate calls/s\n";
40 }
41
42 ?>