⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bench_8cpp-source.html

📁 Crypto++是一个非常强大的密码学库,主要是功能全
💻 HTML
📖 第 1 页 / 共 5 页
字号:
00530                                   <span class="stringliteral">"5F56,8CF9,B444,CA02,78B3,17AF,7C78,D320,16AE,AC3D,B97F,7259,1B8F,9C84,6A16,B878,"</span>00531                                   <span class="stringliteral">"0595,70BB,9C52,18B5,9100,9C1F,E85A,4035,06F3,5F38,7462,F01D,0462,BFBC,A4CD,4A45,"</span>00532                                   <span class="stringliteral">"3A77,E7F8,DED1,D6EF,CEF7,0937,CD3F,3AF1,4F88,932D,6D4B,002C,3735,304C,C5D3,B88A,"</span>00533                                   <span class="stringliteral">"B57B,24B6,5346,9B46,5153,B7ED,B216,C181,B1C6,C52E,CD2B,E0AA,B1BB,0A93,C92E,4F79,"</span>00534                                   <span class="stringliteral">"4931,E303,7C8F,A408,8ACF,56CD,6EC0,76A2,5015,6BA4,4C50,C44D,53B9,E168,5F84,B381,"</span>00535                                   <span class="stringliteral">"2514,10B2,00E5,B4D1,4156,A2FE,0BF6,6F33,0A1B,91C6,31B8,1C90,02F1,FB1F,C494,8B65h"</span>);00536                 <a class="code" href="class_blum_blum_shub.html">BlumBlumShub</a> c(p, q, s);00537                 BenchMark(<span class="stringliteral">"BlumBlumShub 2048"</span>, c, t);00538         }00539         cout &lt;&lt; <span class="stringliteral">"&lt;/TABLE&gt;"</span> &lt;&lt; endl;00540 00541         cout &lt;&lt; <span class="stringliteral">"&lt;TABLE border=1&gt;&lt;COLGROUP&gt;&lt;COL align=left&gt;&lt;COL align=right&gt;&lt;COL align=right&gt;&lt;COL align=right&gt;"</span> &lt;&lt; endl;00542         cout &lt;&lt; <span class="stringliteral">"&lt;THEAD&gt;&lt;TR&gt;&lt;TH&gt;Operation&lt;TH&gt;Iterations&lt;TH&gt;Total Time&lt;TH&gt;Milliseconds/Operation"</span> &lt;&lt; endl;00543 00544         cout &lt;&lt; <span class="stringliteral">"&lt;TBODY style=\"background: yellow\"&gt;"</span> &lt;&lt; endl;00545         BenchMarkCrypto&lt;RSAES&lt;OAEP&lt;SHA&gt; &gt; &gt;(<span class="stringliteral">"rsa1024.dat"</span>, <span class="stringliteral">"RSA 1024"</span>, t);00546         BenchMarkCrypto&lt;RabinES&lt;OAEP&lt;SHA&gt; &gt; &gt;(<span class="stringliteral">"rabi1024.dat"</span>, <span class="stringliteral">"Rabin 1024"</span>, t);00547         BenchMarkCrypto&lt;LUCES&lt;OAEP&lt;SHA&gt; &gt; &gt;(<span class="stringliteral">"luc1024.dat"</span>, <span class="stringliteral">"LUC 1024"</span>, t);00548         BenchMarkCrypto&lt;DLIES&lt;&gt; &gt;(<span class="stringliteral">"dlie1024.dat"</span>, <span class="stringliteral">"DLIES 1024"</span>, t);00549         BenchMarkCrypto&lt;LUC_IES&lt;&gt; &gt;(<span class="stringliteral">"lucc512.dat"</span>, <span class="stringliteral">"LUCELG 512"</span>, t);00550 00551         cout &lt;&lt; <span class="stringliteral">"&lt;TBODY style=\"background: white\"&gt;"</span> &lt;&lt; endl;00552         BenchMarkCrypto&lt;RSAES&lt;OAEP&lt;SHA&gt; &gt; &gt;(<span class="stringliteral">"rsa2048.dat"</span>, <span class="stringliteral">"RSA 2048"</span>, t);00553         BenchMarkCrypto&lt;RabinES&lt;OAEP&lt;SHA&gt; &gt; &gt;(<span class="stringliteral">"rabi2048.dat"</span>, <span class="stringliteral">"Rabin 2048"</span>, t);00554         BenchMarkCrypto&lt;LUCES&lt;OAEP&lt;SHA&gt; &gt; &gt;(<span class="stringliteral">"luc2048.dat"</span>, <span class="stringliteral">"LUC 2048"</span>, t);00555         BenchMarkCrypto&lt;DLIES&lt;&gt; &gt;(<span class="stringliteral">"dlie2048.dat"</span>, <span class="stringliteral">"DLIES 2048"</span>, t);00556         BenchMarkCrypto&lt;LUC_IES&lt;&gt; &gt;(<span class="stringliteral">"lucc1024.dat"</span>, <span class="stringliteral">"LUCELG 1024"</span>, t);00557 00558         cout &lt;&lt; <span class="stringliteral">"&lt;TBODY style=\"background: yellow\"&gt;"</span> &lt;&lt; endl;00559         BenchMarkSignature&lt;RSASSA&lt;PKCS1v15, SHA&gt; &gt;(<span class="stringliteral">"rsa1024.dat"</span>, <span class="stringliteral">"RSA 1024"</span>, t);00560         BenchMarkSignature&lt;RabinPSSR&lt;SHA&gt; &gt;(<span class="stringliteral">"rabi1024.dat"</span>, <span class="stringliteral">"Rabin 1024"</span>, t);00561         BenchMarkSignature&lt;RWSSA&lt;SHA&gt; &gt;(<span class="stringliteral">"rw1024.dat"</span>, <span class="stringliteral">"RW 1024"</span>, t);00562         BenchMarkSignature&lt;LUCSSA&lt;SHA&gt; &gt;(<span class="stringliteral">"luc1024.dat"</span>, <span class="stringliteral">"LUC 1024"</span>, t);00563         BenchMarkSignature&lt;NR&lt;SHA&gt; &gt;(<span class="stringliteral">"nr1024.dat"</span>, <span class="stringliteral">"NR 1024"</span>, t);00564         BenchMarkSignature&lt;DSA&gt;(<span class="stringliteral">"dsa1024.dat"</span>, <span class="stringliteral">"DSA 1024"</span>, t);00565         BenchMarkSignature&lt;LUC_HMP&lt;SHA&gt; &gt;(<span class="stringliteral">"lucs512.dat"</span>, <span class="stringliteral">"LUC-HMP 512"</span>, t);00566         BenchMarkSignature&lt;ESIGN&lt;SHA&gt; &gt;(<span class="stringliteral">"esig1023.dat"</span>, <span class="stringliteral">"ESIGN 1023"</span>, t);00567         BenchMarkSignature&lt;ESIGN&lt;SHA&gt; &gt;(<span class="stringliteral">"esig1536.dat"</span>, <span class="stringliteral">"ESIGN 1536"</span>, t);00568 00569         cout &lt;&lt; <span class="stringliteral">"&lt;TBODY style=\"background: white\"&gt;"</span> &lt;&lt; endl;00570         BenchMarkSignature&lt;RSASSA&lt;PKCS1v15, SHA&gt; &gt;(<span class="stringliteral">"rsa2048.dat"</span>, <span class="stringliteral">"RSA 2048"</span>, t);00571         BenchMarkSignature&lt;RabinPSSR&lt;SHA&gt; &gt;(<span class="stringliteral">"rabi2048.dat"</span>, <span class="stringliteral">"Rabin 2048"</span>, t);00572         BenchMarkSignature&lt;RWSSA&lt;SHA&gt; &gt;(<span class="stringliteral">"rw2048.dat"</span>, <span class="stringliteral">"RW 2048"</span>, t);00573         BenchMarkSignature&lt;LUCSSA&lt;SHA&gt; &gt;(<span class="stringliteral">"luc2048.dat"</span>, <span class="stringliteral">"LUC 2048"</span>, t);00574         BenchMarkSignature&lt;NR&lt;SHA&gt; &gt;(<span class="stringliteral">"nr2048.dat"</span>, <span class="stringliteral">"NR 2048"</span>, t);00575         BenchMarkSignature&lt;LUC_HMP&lt;SHA&gt; &gt;(<span class="stringliteral">"lucs1024.dat"</span>, <span class="stringliteral">"LUC-HMP 1024"</span>, t);00576         BenchMarkSignature&lt;ESIGN&lt;SHA&gt; &gt;(<span class="stringliteral">"esig2046.dat"</span>, <span class="stringliteral">"ESIGN 2046"</span>, t);00577 00578         cout &lt;&lt; <span class="stringliteral">"&lt;TBODY style=\"background: yellow\"&gt;"</span> &lt;&lt; endl;00579         BenchMarkKeyAgreement&lt;XTR_DH&gt;(<span class="stringliteral">"xtrdh171.dat"</span>, <span class="stringliteral">"XTR-DH 171"</span>, t);00580         BenchMarkKeyAgreement&lt;XTR_DH&gt;(<span class="stringliteral">"xtrdh342.dat"</span>, <span class="stringliteral">"XTR-DH 342"</span>, t);00581         BenchMarkKeyAgreement&lt;DH&gt;(<span class="stringliteral">"dh1024.dat"</span>, <span class="stringliteral">"DH 1024"</span>, t);00582         BenchMarkKeyAgreement&lt;DH&gt;(<span class="stringliteral">"dh2048.dat"</span>, <span class="stringliteral">"DH 2048"</span>, t);00583         BenchMarkKeyAgreement&lt;LUC_DH&gt;(<span class="stringliteral">"lucd512.dat"</span>, <span class="stringliteral">"LUCDIF 512"</span>, t);00584         BenchMarkKeyAgreement&lt;LUC_DH&gt;(<span class="stringliteral">"lucd1024.dat"</span>, <span class="stringliteral">"LUCDIF 1024"</span>, t);00585         BenchMarkKeyAgreement&lt;MQV&gt;(<span class="stringliteral">"mqv1024.dat"</span>, <span class="stringliteral">"MQV 1024"</span>, t);00586         BenchMarkKeyAgreement&lt;MQV&gt;(<span class="stringliteral">"mqv2048.dat"</span>, <span class="stringliteral">"MQV 2048"</span>, t);00587 00588         cout &lt;&lt; <span class="stringliteral">"&lt;TBODY style=\"background: white\"&gt;"</span> &lt;&lt; endl;00589         {00590                 <a class="code" href="class_integer.html">Integer</a> modulus(<span class="stringliteral">"199999999999999999999999980586675243082581144187569"</span>);00591                 <a class="code" href="class_integer.html">Integer</a> a(<span class="stringliteral">"659942,b7261b,249174,c86bd5,e2a65b,45fe07,37d110h"</span>);00592                 <a class="code" href="class_integer.html">Integer</a> b(<span class="stringliteral">"3ece7d,09473d,666000,5baef5,d4e00e,30159d,2df49ah"</span>);00593                 <a class="code" href="class_integer.html">Integer</a> x(<span class="stringliteral">"25dd61,4c0667,81abc0,fe6c84,fefaa3,858ca6,96d0e8h"</span>);00594                 <a class="code" href="class_integer.html">Integer</a> y(<span class="stringliteral">"4e2477,05aab0,b3497f,d62b5e,78a531,446729,6c3fach"</span>);00595                 <a class="code" href="class_integer.html">Integer</a> r(<span class="stringliteral">"100000000000000000000000000000000000000000000000151"</span>);00596                 <a class="code" href="class_integer.html">Integer</a> k(2);00597                 <a class="code" href="class_integer.html">Integer</a> d(<span class="stringliteral">"76572944925670636209790912427415155085360939712345"</span>);00598 00599                 <a class="code" href="class_e_c_p.html">ECP</a> ec(modulus, a, b);00600                 <a class="code" href="struct_e_c_p_point.html">ECP::Point</a> P(x, y);00601                 P = ec.<a class="code" href="class_e_c_p.html#_e_c_pa14">Multiply</a>(k, P);00602                 <a class="code" href="struct_e_c_p_point.html">ECP::Point</a> Q(ec.<a class="code" href="class_e_c_p.html#_e_c_pa14">Multiply</a>(d, P));00603                 <a class="code" href="struct_e_c_i_e_s.html">ECIES&lt;ECP&gt;</a>::Decryptor cpriv(ec, P, r, d);00604                 <a class="code" href="struct_e_c_i_e_s.html">ECIES&lt;ECP&gt;</a>::Encryptor cpub(cpriv);00605                 <a class="code" href="struct_e_c_d_s_a.html">ECDSA&lt;ECP, SHA&gt;</a>::Signer spriv(cpriv);00606                 <a class="code" href="struct_e_c_d_s_a.html">ECDSA&lt;ECP, SHA&gt;</a>::Verifier spub(spriv);00607                 <a class="code" href="struct_e_c_d_h.html">ECDH&lt;ECP&gt;</a>::Domain ecdhc(ec, P, r, k);00608                 <a class="code" href="struct_e_c_m_q_v.html">ECMQV&lt;ECP&gt;</a>::Domain ecmqvc(ec, P, r, k);00609 00610                 BenchMarkEncryption(<span class="stringliteral">"ECIES over GF(p) 168"</span>, cpub, t);00611                 BenchMarkDecryption(<span class="stringliteral">"ECIES over GF(p) 168"</span>, cpriv, cpub, t);00612                 BenchMarkSigning(<span class="stringliteral">"ECNR over GF(p) 168"</span>, spriv, t);00613                 BenchMarkVerification(<span class="stringliteral">"ECNR over GF(p) 168"</span>, spriv, spub, t);00614                 BenchMarkKeyGen(<span class="stringliteral">"ECDHC over GF(p) 168"</span>, ecdhc, t);00615                 BenchMarkAgreement(<span class="stringliteral">"ECDHC over GF(p) 168"</span>, ecdhc, t);00616                 BenchMarkKeyGen(<span class="stringliteral">"ECMQVC over GF(p) 168"</span>, ecmqvc, t);00617                 BenchMarkAgreement(<span class="stringliteral">"ECMQVC over GF(p) 168"</span>, ecmqvc, t);00618         }00619 00620         cout &lt;&lt; <span class="stringliteral">"&lt;TBODY style=\"background: yellow\"&gt;"</span> &lt;&lt; endl;00621         {00622                 <a class="code" href="class_integer.html">Integer</a> r(<span class="stringliteral">"3805993847215893016155463826195386266397436443"</span>);00623                 <a class="code" href="class_integer.html">Integer</a> k(12);00624                 <a class="code" href="class_integer.html">Integer</a> d(<span class="stringliteral">"2065729449256706362097909124274151550853609397"</span>);00625 00626                 <a class="code" href="class_g_f2_n_t.html">GF2NT</a> gf2n(155, 62, 0);00627                 byte b[]={0x7, 0x33, 0x8f};00628                 <a class="code" href="class_e_c2_n.html">EC2N</a> ec(gf2n, PolynomialMod2::Zero(), <a class="code" href="class_polynomial_mod2.html">PolynomialMod2</a>(b,3));00629                 <a class="code" href="struct_e_c2_n_point.html">EC2N::Point</a> P(0x7B, 0x1C8);00630                 P = ec.<a class="code" href="class_e_c2_n.html#_e_c2_na10">Multiply</a>(k, P);00631                 <a class="code" href="struct_e_c2_n_point.html">EC2N::Point</a> Q(ec.<a class="code" href="class_e_c2_n.html#_e_c2_na10">Multiply</a>(d, P));00632                 <a class="code" href="struct_e_c_i_e_s.html">ECIES&lt;EC2N&gt;</a>::Decryptor cpriv(ec, P, r, d);00633                 <a class="code" href="struct_e_c_i_e_s.html">ECIES&lt;EC2N&gt;</a>::Encryptor cpub(cpriv);00634                 <a class="code" href="struct_e_c_d_s_a.html">ECDSA&lt;EC2N, SHA&gt;</a>::Signer spriv(cpriv);00635                 <a class="code" href="struct_e_c_d_s_a.html">ECDSA&lt;EC2N, SHA&gt;</a>::Verifier spub(spriv);00636                 <a class="code" href="struct_e_c_d_h.html">ECDH&lt;EC2N&gt;</a>::Domain ecdhc(ec, P, r, k);00637                 <a class="code" href="struct_e_c_m_q_v.html">ECMQV&lt;EC2N&gt;</a>::Domain ecmqvc(ec, P, r, k);00638 00639                 BenchMarkEncryption(<span class="stringliteral">"ECIES over GF(2^n) 155"</span>, cpub, t);00640                 BenchMarkDecryption(<span class="stringliteral">"ECIES over GF(2^n) 155"</span>, cpriv, cpub, t);00641                 BenchMarkSigning(<span class="stringliteral">"ECNR over GF(2^n) 155"</span>, spriv, t);00642                 BenchMarkVerification(<span class="stringliteral">"ECNR over GF(2^n) 155"</span>, spriv, spub, t);00643                 BenchMarkKeyGen(<span class="stringliteral">"ECDHC over GF(2^n) 155"</span>, ecdhc, t);00644                 BenchMarkAgreement(<span class="stringliteral">"ECDHC over GF(2^n) 155"</span>, ecdhc, t);00645                 BenchMarkKeyGen(<span class="stringliteral">"ECMQVC over GF(2^n) 155"</span>, ecmqvc, t);00646                 BenchMarkAgreement(<span class="stringliteral">"ECMQVC over GF(2^n) 155"</span>, ecmqvc, t);00647         }00648         cout &lt;&lt; <span class="stringliteral">"&lt;/TABLE&gt;"</span> &lt;&lt; endl;00649 00650         cout &lt;&lt; <span class="stringliteral">"Throughput Geometric Average: "</span> &lt;&lt; setiosflags(ios::fixed) &lt;&lt; exp(logtotal/logcount) &lt;&lt; endl;00651 00652         time_t endTime = time(NULL);00653         cout &lt;&lt; <span class="stringliteral">"\nTest ended at "</span> &lt;&lt; asctime(localtime(&amp;endTime));00654 <span class="preprocessor">#endif</span>00655 <span class="preprocessor"></span>}</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 8 23:34:09 2003 for Crypto++ by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 > </a>1.3.2 </small></address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -