📄 eccrypto_8h-source.html
字号:
00188 CRYPTOPP_DLL_TEMPLATE_CLASS <a class="code" href="class_d_l___private_key___e_c.html">DL_PrivateKey_EC<EC2N></a>;00189 <span class="comment"></span>00190 <span class="comment">//! Elliptic Curve Diffie-Hellman, AKA <a href="http://www.weidai.com/scan-mirror/ka.html#ECDH">ECDH</a></span>00191 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC, <span class="keyword">class</span> COFACTOR_OPTION = DL_GroupParameters_EC<EC>::DefaultCofactorOption><a name="l00192"></a><a class="code" href="struct_e_c_d_h.html">00192</a> <span class="keyword">struct </span><a class="code" href="struct_e_c_d_h.html">ECDH</a>00193 {00194 <span class="keyword">typedef</span> <a class="code" href="class_d_h___domain.html">DH_Domain<DL_GroupParameters_EC<EC></a>, COFACTOR_OPTION> <a class="code" href="class_d_h___domain.html">Domain</a>;00195 };00196 <span class="comment"></span>00197 <span class="comment">/// Elliptic Curve Menezes-Qu-Vanstone, AKA <a href="http://www.weidai.com/scan-mirror/ka.html#ECMQV">ECMQV</a></span>00198 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC, <span class="keyword">class</span> COFACTOR_OPTION = DL_GroupParameters_EC<EC>::DefaultCofactorOption><a name="l00199"></a><a class="code" href="struct_e_c_m_q_v.html">00199</a> <span class="keyword">struct </span><a class="code" href="struct_e_c_m_q_v.html">ECMQV</a>00200 {00201 <span class="keyword">typedef</span> <a class="code" href="class_m_q_v___domain.html">MQV_Domain<DL_GroupParameters_EC<EC></a>, COFACTOR_OPTION> <a class="code" href="class_m_q_v___domain.html">Domain</a>;00202 };00203 <span class="comment"></span>00204 <span class="comment">//! .</span>00205 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC><a name="l00206"></a><a class="code" href="struct_d_l___keys___e_c.html">00206</a> <span class="keyword">struct </span><a class="code" href="struct_d_l___keys___e_c.html">DL_Keys_EC</a>00207 {00208 <span class="keyword">typedef</span> <a class="code" href="class_d_l___public_key___e_c.html">DL_PublicKey_EC<EC></a> <a class="code" href="class_d_l___public_key___e_c.html">PublicKey</a>;00209 <span class="keyword">typedef</span> <a class="code" href="class_d_l___private_key___e_c.html">DL_PrivateKey_EC<EC></a> <a class="code" href="class_d_l___private_key___e_c.html">PrivateKey</a>;00210 };00211 00212 <span class="keyword">template</span> <<span class="keyword">class</span> EC, <span class="keyword">class</span> H = SHA>00213 <span class="keyword">struct </span><a class="code" href="struct_e_c_d_s_a.html">ECDSA</a>;00214 00215 CRYPTOPP_DLL_TEMPLATE_CLASS <a class="code" href="class_d_l___private_key___with_signature_pairwise_consistency_test.html">DL_PrivateKey_WithSignaturePairwiseConsistencyTest<DL_PrivateKey_EC<ECP></a>, <a class="code" href="struct_e_c_d_s_a.html">ECDSA<ECP></a> >;00216 CRYPTOPP_DLL_TEMPLATE_CLASS <a class="code" href="class_d_l___private_key___with_signature_pairwise_consistency_test.html">DL_PrivateKey_WithSignaturePairwiseConsistencyTest<DL_PrivateKey_EC<EC2N></a>, <a class="code" href="struct_e_c_d_s_a.html">ECDSA<EC2N></a> >;00217 <span class="comment"></span>00218 <span class="comment">//! .</span>00219 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC><a name="l00220"></a><a class="code" href="struct_d_l___keys___e_c_d_s_a.html">00220</a> <span class="keyword">struct </span><a class="code" href="struct_d_l___keys___e_c_d_s_a.html">DL_Keys_ECDSA</a>00221 {00222 <span class="keyword">typedef</span> <a class="code" href="class_d_l___public_key___e_c.html">DL_PublicKey_EC<EC></a> <a class="code" href="class_d_l___public_key___e_c.html">PublicKey</a>;00223 <span class="keyword">typedef</span> <a class="code" href="class_d_l___private_key___with_signature_pairwise_consistency_test.html">DL_PrivateKey_WithSignaturePairwiseConsistencyTest<DL_PrivateKey_EC<EC></a>, <a class="code" href="struct_e_c_d_s_a.html">ECDSA<EC></a> > <a class="code" href="class_d_l___private_key___with_signature_pairwise_consistency_test.html">PrivateKey</a>;00224 };00225 00226 CRYPTOPP_DLL_TEMPLATE_CLASS <a class="code" href="class_d_l___algorithm___g_d_s_a.html">DL_Algorithm_GDSA<ECP::Point></a>;00227 CRYPTOPP_DLL_TEMPLATE_CLASS <a class="code" href="class_d_l___algorithm___g_d_s_a.html">DL_Algorithm_GDSA<EC2N::Point></a>;00228 <span class="comment"></span>00229 <span class="comment">//! .</span>00230 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC><a name="l00231"></a><a class="code" href="class_d_l___algorithm___e_c_d_s_a.html">00231</a> <span class="keyword">class </span><a class="code" href="class_d_l___algorithm___e_c_d_s_a.html">DL_Algorithm_ECDSA</a> : <span class="keyword">public</span> <a class="code" href="class_d_l___algorithm___g_d_s_a.html">DL_Algorithm_GDSA</a><typename EC::Point>00232 {00233 <span class="keyword">public</span>:00234 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span> * StaticAlgorithmName() {<span class="keywordflow">return</span> <span class="stringliteral">"ECDSA"</span>;}00235 };00236 <span class="comment"></span>00237 <span class="comment">//! .</span>00238 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC><a name="l00239"></a><a class="code" href="class_d_l___algorithm___e_c_n_r.html">00239</a> <span class="keyword">class </span><a class="code" href="class_d_l___algorithm___e_c_n_r.html">DL_Algorithm_ECNR</a> : <span class="keyword">public</span> <a class="code" href="class_d_l___algorithm___n_r.html">DL_Algorithm_NR</a><typename EC::Point>00240 {00241 <span class="keyword">public</span>:00242 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span> * StaticAlgorithmName() {<span class="keywordflow">return</span> <span class="stringliteral">"ECNR"</span>;}00243 };00244 <span class="comment"></span>00245 <span class="comment">//! <a href="http://www.weidai.com/scan-mirror/sig.html#ECDSA">ECDSA</a></span>00246 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC, <span class="keyword">class</span> H><a name="l00247"></a><a class="code" href="struct_e_c_d_s_a.html">00247</a> <span class="keyword">struct </span><a class="code" href="struct_e_c_d_s_a.html">ECDSA</a> : <span class="keyword">public</span> <a class="code" href="class_d_l___s_s_a.html">DL_SSA</a><DL_Keys_ECDSA<EC>, DL_Algorithm_ECDSA<EC>, H>00248 {00249 };00250 <span class="comment"></span>00251 <span class="comment">//! ECNR</span>00252 <span class="comment"></span><span class="keyword">template</span> <<span class="keyword">class</span> EC, <span class="keyword">class</span> H = SHA><a name="l00253"></a><a class="code" href="struct_e_c_n_r.html">00253</a> <span class="keyword">struct </span><a class="code" href="struct_e_c_n_r.html">ECNR</a> : <span class="keyword">public</span> <a class="code" href="class_d_l___s_s_a.html">DL_SSA</a><DL_Keys_EC<EC>, DL_Algorithm_ECNR<EC>, H>00254 {00255 };00256 <span class="comment"></span>00257 <span class="comment">//! Elliptic Curve Integrated Encryption Scheme, AKA <a href="http://www.weidai.com/scan-mirror/ca.html#ECIES">ECIES</a></span>00258 <span class="comment"></span><span class="comment">/*! Default to (NoCofactorMultiplication and DHAES_MODE = false) for compatibilty with SEC1 and Crypto++ 4.2.</span>00259 <span class="comment"> The combination of (IncompatibleCofactorMultiplication and DHAES_MODE = true) is recommended for best</span>00260 <span class="comment"> efficiency and security. */</span>00261 <span class="keyword">template</span> <<span class="keyword">class</span> EC, <span class="keyword">class</span> COFACTOR_OPTION = NoCofactorMultiplication, <span class="keywordtype">bool</span> DHAES_MODE = false><a name="l00262"></a><a class="code" href="struct_e_c_i_e_s.html">00262</a> <span class="keyword">struct </span><a class="code" href="struct_e_c_i_e_s.html">ECIES</a>00263 : <span class="keyword">public</span> <a class="code" href="class_d_l___e_s.html">DL_ES</a><00264 DL_Keys_EC<EC>,00265 DL_KeyAgreementAlgorithm_DH<typename EC::Point, COFACTOR_OPTION>,00266 DL_KeyDerivationAlgorithm_P1363<typename EC::Point, DHAES_MODE, P1363_KDF2<SHA1> >,00267 DL_EncryptionAlgorithm_Xor<HMAC<SHA1>, DHAES_MODE>,00268 ECIES<EC> >00269 {00270 <span class="keyword">static</span> std::string StaticAlgorithmName() {<span class="keywordflow">return</span> <span class="stringliteral">"ECIES"</span>;} <span class="comment">// TODO: fix this after name is standardized</span>00271 };00272 00273 NAMESPACE_END00274 00275 <span class="preprocessor">#endif</span></pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 8 23:34:13 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 + -