如何使用 AES 与 sha256 哈希作为密钥加密 ++ 进行加密

用户6492553

我有一个使用 SHA256 散列的字符串用作密钥,但是我将如何使用此密钥在 CBC 模式和加密 ​​++ 中使用 AES 加密字符串?谢谢。

用户6492553

我最终使用以下代码实现了预期的结果。

    QString qhash = "hash";
    std::string plain = "message";
    std::string ciphertext;
    std::string stdhash = qhash.toStdString();

    CryptoPP::HexDecoder decoder;
    decoder.Put((byte*)stdhash.data(),qhash.size());
    decoder.MessageEnd();

    CryptoPP::word64 size = decoder.MaxRetrievable();
    char *decodedKey = new char[size];
    decoder.Get((byte *)decodedKey, size);

    byte hash[CryptoPP::AES::MAX_KEYLENGTH], iv[ CryptoPP::AES::BLOCKSIZE ];

    CryptoPP::StringSource(reinterpret_cast<const char *>(decodedKey), true,new CryptoPP::ArraySink(hash, CryptoPP::AES::MAX_KEYLENGTH));
    memset(iv, 0x00, CryptoPP::AES::BLOCKSIZE);
    CryptoPP::CBC_Mode<CryptoPP::AES>::Encryption Encryptor(hash,sizeof(hash),iv);
    CryptoPP::StringSource( plain, true, new CryptoPP::StreamTransformationFilter( Encryptor, new CryptoPP::HexEncoder(new CryptoPP::StringSink( ciphertext )) ) );
    return ciphertext;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用sha256哈希使用AES 128加密对j2me应用程序进行加密/解密

来自分类Dev

在目标 c 中,如何使用 md5 作为密钥进行 AES256 加密?

来自分类Dev

使用sha256和salt进行Java加密

来自分类Dev

如何在锈中使用sha256对sha256的输出进行哈希处理

来自分类Dev

如何从sha256加密迁移到bcrypt for PHP?

来自分类Dev

使用AES进行视频加密

来自分类Dev

如何在python中对变量进行sha256哈希

来自分类Dev

使用 sha256 对字典进行哈希处理

来自分类Dev

如何使用OpenSSL和AES-256和SHA-256加密文件?

来自分类Dev

使用openssl C进行AES(AES-IGE-128,AES-IGE-192,AES-IGE-256)加密/解密

来自分类Dev

原始javascript中的sha256加密

来自分类Dev

解密哈希sha256加密,知道了盐

来自分类Dev

如何在Delphi中使用AES-256 GCM进行加密

来自分类Dev

在线计算器不可互操作,如何使用AES-256进行加密?

来自分类Dev

如何在python中使用加密的RSA私钥(AES-256-CBC)对数据进行签名

来自分类Dev

如何在Swift 2和3中使用通用加密和/或计算sha256

来自分类Dev

使用CommonCrypto进行Swift AES加密

来自分类Dev

使用AES算法进行加密和解密

来自分类Dev

使用Java进行AES加密和解密

来自分类Dev

使用C#进行AES加密

来自分类Dev

使用Spring Security进行AES加密/解密

来自分类Dev

使用CommonCrypto进行Swift AES加密

来自分类Dev

使用OpenSSL / AES进行网络加密的说明

来自分类Dev

Typescript crypto-js如何使用sha256算法和密钥对数据进行哈希处理

来自分类Dev

使用SHA-1哈希作为AES密钥

来自分类Dev

使用SHA-1哈希作为AES密钥

来自分类Dev

迅速进行AES加密

来自分类Dev

如何在JS中使用SHA256对字符串进行哈希处理?

来自分类Dev

Java AES 256加密

Related 相关文章

热门标签

归档