C++ 如何使用加密++;用于ECIES和检索公共机密、身份验证标签和密文

C++ 如何使用加密++;用于ECIES和检索公共机密、身份验证标签和密文,c++,cryptography,crypto++,ecies,C++,Cryptography,Crypto++,Ecies,我正在尝试使用for ecies encryption中的示例,它符合IEEE P1363版本的方案。ETSⅧts 102 941 v1.3.1标准中所述方案的前两个步骤为: 发送方在[1,q-1]中生成临时私钥r 发送方从接收方加密公钥Kr.S=Px获取共享密钥S,其中 但是,在crypto++示例中,第一行是: ECIES<ECP>::Decryptor d0(prng, ASN1::secp256r1()); PrintPrivateKey(d0.GetKe

我正在尝试使用for ecies encryption中的示例,它符合IEEE P1363版本的方案。ETSⅧts 102 941 v1.3.1标准中所述方案的前两个步骤为:

  • 发送方在[1,q-1]中生成临时私钥r

  • 发送方从接收方加密公钥Kr.S=Px获取共享密钥S,其中

  • 但是,在crypto++示例中,第一行是:

        ECIES<ECP>::Decryptor d0(prng, ASN1::secp256r1());
        PrintPrivateKey(d0.GetKey());
    
        ECIES<ECP>::Encryptor e0(d0);
        PrintPublicKey(e0.GetKey());
    
    
    ECIES::解密器d0(prng,ASN1::secp256r1());
    PrintPrivateKey(d0.GetKey());
    ECIES::加密机e0(d0);
    PrintPublicKey(e0.GetKey());
    
    它使用一个专用的解密程序,并将加密程序建立在它的基础上。我看不出它如何与算法的步骤相匹配

    此外,wiki声明加密函数返回元组{K,C,T},其中K是加密的公共机密,C是密文,T是认证标记。 但是,在这个例子中,它们没有被检索到,我不知道它们是如何被检索到的

    如有任何见解和帮助,将不胜感激。谢谢大家!