📄 class_p_k___verifier_with_recovery.html
字号:
<table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>recover a message from its signature <p><dl compact><dt><b>Precondition:</b></dt><dd>leftoverMessageAccumulator was obtained by calling NewLeftoverMessageAccumulator(signature) <p><a class="el" href="class_hash_transformation.html#_x_m_a_c_c___basea13">HashTransformation::Final()</a> has not been called on leftoverMessageAccumulator <p>length of signature == <a class="el" href="class_p_k___signature_scheme.html#_p_k___verifier_with_recoverya6">SignatureLength()</a> <p>size of recoveredMessage == <a class="el" href="class_p_k___signature_scheme_with_recovery.html#_p_k___verifier_with_recoverya4">MaximumRecoverableLength()</a></dd></dl><p>Implemented in <a class="el" href="class_verifier_with_recovery_template.html#_verifier_with_recovery_templatea7">VerifierWithRecoveryTemplate< TF, H ></a>. </td> </tr></table><a name="_verifier_with_recovery_templatea13" doxytag="PK_VerifierWithRecovery::RecoverMessage"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual <a class="el" href="struct_decoding_result.html">DecodingResult</a> PK_VerifierWithRecovery::RecoverMessage </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">byte * </td> <td class="mdname" nowrap> <em>recoveredMessage</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const byte * </td> <td class="mdname" nowrap> <em>message</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned int </td> <td class="mdname" nowrap> <em>messageLen</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const byte * </td> <td class="mdname" nowrap> <em>signature</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"> const<code> [inline, virtual]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>recover a message from its signature <p><dl compact><dt><b>Note:</b></dt><dd>This function should be equivalent to Recover(recoveredMessage, NewRecoveryAccumulator(signature), signature) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>length of signature == <a class="el" href="class_p_k___signature_scheme.html#_p_k___verifier_with_recoverya6">SignatureLength()</a> <p>size of recoveredMessage == <a class="el" href="class_p_k___signature_scheme_with_recovery.html#_p_k___verifier_with_recoverya4">MaximumRecoverableLength()</a></dd></dl><p>Definition at line <a class="el" href="cryptlib_8h-source.html#l01359">1359</a> of file <a class="el" href="cryptlib_8h-source.html">cryptlib.h</a>. </td> </tr></table><a name="_p_k___verifier_with_recoverya5" doxytag="PK_VerifierWithRecovery::AllowLeftoverMessage"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual bool PK_SignatureSchemeWithRecovery::AllowLeftoverMessage </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> const<code> [pure virtual, inherited]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>whether or not messages longer than <a class="el" href="class_p_k___signature_scheme_with_recovery.html#_p_k___verifier_with_recoverya4">MaximumRecoverableLength()</a> can be signed <p>If this function returns false, any message longer than <a class="el" href="class_p_k___signature_scheme_with_recovery.html#_p_k___verifier_with_recoverya4">MaximumRecoverableLength()</a> will be truncated for signature and will fail verification.<p>Implemented in <a class="el" href="class_signature_system_with_recovery_base_template.html#_verifier_with_recovery_templatea12">SignatureSystemWithRecoveryBaseTemplate< H ></a>. </td> </tr></table><a name="_verifier_with_recovery_templatea14" doxytag="PK_VerifierWithRecovery::SignatureUpfrontForVerification"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual bool PK_Verifier::SignatureUpfrontForVerification </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>If this function returns true, you must input the signature when calling <a class="el" href="class_p_k___verifier.html#_verifier_with_recovery_templatea15">NewVerificationAccumulator()</a>. Otherwise, you must input the signature when calling <a class="el" href="class_p_k___verifier.html#_verifier_with_recovery_templatea16">Verify()</a>. <p>Definition at line <a class="el" href="cryptlib_8h-source.html#l01268">1268</a> of file <a class="el" href="cryptlib_8h-source.html">cryptlib.h</a>. </td> </tr></table><a name="_verifier_with_recovery_templatea15" doxytag="PK_VerifierWithRecovery::NewVerificationAccumulator"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual <a class="el" href="class_hash_transformation.html">HashTransformation</a>* PK_Verifier::NewVerificationAccumulator </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const byte * </td> <td class="mdname1" valign="top" nowrap> <em>signature</em> = NULL </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>create a new <a class="el" href="class_hash_transformation.html">HashTransformation</a> to accumulate the message to be verified <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>signature</em> </td><td>is ignored if <a class="el" href="class_p_k___verifier.html#_verifier_with_recovery_templatea14">SignatureUpfrontForVerification()</a> == false </td></tr> <tr><td valign=top><em>signature</em> </td><td>may be NULL to indicate that the signature is not available yet</td></tr> </table></dl>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -