static LPCSTR key = 

   "111130A060728648C3D01010" 
}; BYTE byMessage[] ={'1','2','3','4','5'}; 
BYTE bySign[]    ={'a','b','c','d','e','f'}; int Verify() 

    CryptoPP::StringSource src( key, true, new CryptoPP::HexDecoder); 
    CryptoPP::ECDSA <CryptoPP::ECP>::Verifier verifier(src);     if (verifier.VerifyMessage(byMessage, sizeof(byMessage), bySign, sizeof(bySign))) 
       return 0; 
    else 
       return -1; 
}

解决方案 »

  1.   

    sorry,没有写明问题,重发一遍: 已知如下的签名验证过程,怎么反推出生成签名的过程,就是生成bySign[]的过程。 
    初次接触Cryptopp,不知问题说清楚没。 static LPCSTR key = 

        "111130A060728648C3D01010" 
    }; BYTE byMessage[] ={'1','2','3','4','5'}; 
    BYTE bySign[]    ={'a','b','c','d','e','f'}; int Verify() 

        CryptoPP::StringSource src( key, true, new CryptoPP::HexDecoder); 
        CryptoPP::ECDSA <CryptoPP::ECP>::Verifier verifier(src);     if (verifier.VerifyMessage((const byte*)byMessage, sizeof(byMessage), bySign, sizeof(bySign))) 
            return 0; 
        else 
            return -1; 
    }