运行报错No matching constructor for initialization of ‘AES::Encryption‘你们遇到过么?

本文主要是介绍运行报错No matching constructor for initialization of ‘AES::Encryption‘你们遇到过么?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这两天在搞android 的调用JNI这块,想把本地的加密搞到.so文件里面,这样反编译的成本会高一些,安全性相对来说高一些。不过研究到一半卡住了,这个领域不太熟悉。

这个错误 "no matching constructor for initialization of 'AES::Decryption'" 通常是指尝试使用 AES::Decryption 类时,提供的参数与该类所期望的构造函数参数不匹配。在 Crypto++ 库中,AES::Decryption 不是一个直接可用的类;

话多说直接上代码,由于之前的学的C语言已经忘得不行了

#include <cryptopp/aes.h>
#include <cryptopp/modes.h>
#include <cryptopp/filters.h>
#include <iostream>
#include <string>int main()
{try {// 密钥和初始化向量(IV)byte key[CryptoPP::AES::DEFAULT_KEYLENGTH], iv[CryptoPP::AES::BLOCKSIZE];memset(key, 0x00, CryptoPP::AES::DEFAULT_KEYLENGTH); // 填充密钥memset(iv, 0x00, CryptoPP::AES::BLOCKSIZE);          // 填充IV// 创建AES加密对象CryptoPP::CBC_Mode< CryptoPP::AES >::Encryption aesEncryption(key, sizeof(key), iv);// 原始数据std::string plaintext = "This is a test message.";// 缓冲区来存储加密后的数据std::string ciphertext;ciphertext.resize(plaintext.length() + aesEncryption.TransformationBlockSize());// 执行加密CryptoPP::StringSource ss(plaintext, true,new CryptoPP::StreamTransformationFilter(aesEncryption,new CryptoPP::StringSink(ciphertext)) // StreamTransformationFilter); // StringSource// 输出加密后的数据std::cout << "Encrypted: " << ciphertext << std::endl;}catch (const CryptoPP::Exception& e) {std::cerr << e.what() << std::endl;}return 0;
}

这段代码看起来人畜无害的样子,但是就是跑不起来,就这把等我再研究研究,有了解这块的给个回答,解惑一下。

这篇关于运行报错No matching constructor for initialization of ‘AES::Encryption‘你们遇到过么?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/794618

相关文章

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

eclipse如何运行springboot项目

《eclipse如何运行springboot项目》:本文主要介绍eclipse如何运行springboot项目问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目js录当在eclipse启动spring boot项目时出现问题解决办法1.通过cmd命令行2.在ecl

qtcreater配置opencv遇到的坑及实践记录

《qtcreater配置opencv遇到的坑及实践记录》我配置opencv不管是按照网上的教程还是deepseek发现都有些问题,下面是我的配置方法以及实践成功的心得,感兴趣的朋友跟随小编一起看看吧... 目录电脑环境下载环境变量配置qmake加入外部库测试配置我配置opencv不管是按照网上的教程还是de

使用nohup和--remove-source-files在后台运行rsync并记录日志方式

《使用nohup和--remove-source-files在后台运行rsync并记录日志方式》:本文主要介绍使用nohup和--remove-source-files在后台运行rsync并记录日... 目录一、什么是 --remove-source-files?二、示例命令三、命令详解1. nohup2.

解决Java异常报错:java.nio.channels.UnresolvedAddressException问题

《解决Java异常报错:java.nio.channels.UnresolvedAddressException问题》:本文主要介绍解决Java异常报错:java.nio.channels.Unr... 目录异常含义可能出现的场景1. 错误的 IP 地址格式2. DNS 解析失败3. 未初始化的地址对象解决

Python报错ModuleNotFoundError的10种解决方案

《Python报错ModuleNotFoundError的10种解决方案》在Python开发中,ModuleNotFoundError是最常见的运行时错误之一,通常由模块路径配置错误、依赖缺失或命名冲... 目录一、常见错误场景与原因分析二、10种解决方案与代码示例1. 检查并安装缺失模块2. 动态添加模块

Spring Boot项目打包和运行的操作方法

《SpringBoot项目打包和运行的操作方法》SpringBoot应用内嵌了Web服务器,所以基于SpringBoot开发的web应用也可以独立运行,无须部署到其他Web服务器中,下面以打包dem... 目录一、打包为JAR包并运行1.打包为可执行的 JAR 包2.运行 JAR 包二、打包为WAR包并运行