Poco::Crypto--加解密_RSA Poco::Crypto--加解密(RSA)

1、简单的加解密

复制代码
        Cipher::Ptr pCipher = CipherFactory::defaultFactory().createCipher(RSAKey(RSAKey::KL_1024, RSAKey::EXP_SMALL));
        std::string val("I love karen!");
        std::string enc = pCipher->encryptString(val);
        std::string dec = pCipher->decryptString(enc);
        std::cout<<"加密后:"<<enc<<std::endl;
        std::cout<<"解密后:"<<dec<<std::endl;
复制代码

2、用公私钥加解密

复制代码
        std::istringstream str(anyPem);
        X509Certificate cert(str);
        RSAKey publicKey(cert);
        std::istringstream str2(anyPem);
        RSAKey privateKey(0, &str2, "test");
        Cipher::Ptr pCipher = CipherFactory::defaultFactory().createCipher(publicKey);
        Cipher::Ptr pCipher2 = CipherFactory::defaultFactory().createCipher(privateKey);
        std::string val("lets do some encryption");

        std::string enc = pCipher->encryptString(val);
        std::string dec = pCipher2->decryptString(enc);
        std::cout<<"加密后:"<<enc<<std::endl;
        std::cout<<"解密后:"<<dec<<std::endl;

1、简单的加解密

复制代码
        Cipher::Ptr pCipher = CipherFactory::defaultFactory().createCipher(RSAKey(RSAKey::KL_1024, RSAKey::EXP_SMALL));
        std::string val("I love karen!");
        std::string enc = pCipher->encryptString(val);
        std::string dec = pCipher->decryptString(enc);
        std::cout<<"加密后:"<<enc<<std::endl;
        std::cout<<"解密后:"<<dec<<std::endl;
复制代码

2、用公私钥加解密

复制代码
        std::istringstream str(anyPem);
        X509Certificate cert(str);
        RSAKey publicKey(cert);
        std::istringstream str2(anyPem);
        RSAKey privateKey(0, &str2, "test");
        Cipher::Ptr pCipher = CipherFactory::defaultFactory().createCipher(publicKey);
        Cipher::Ptr pCipher2 = CipherFactory::defaultFactory().createCipher(privateKey);
        std::string val("lets do some encryption");

        std::string enc = pCipher->encryptString(val);
        std::string dec = pCipher2->decryptString(enc);
        std::cout<<"加密后:"<<enc<<std::endl;
        std::cout<<"解密后:"<<dec<<std::endl;

猜你喜欢

转载自www.cnblogs.com/buffercache/p/10100781.html