- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我已经为 TLS 安全集成了 botan 库。我收到以下错误:
jsonrpctest.exe 中 0x6DBFD1CE (vcruntime140.dll) 的第一次机会异常:0xC0000005:访问冲突读取位置 0x00962000。如果有这个异常的处理程序,程序可以安全地继续执行
下面是我调用的代码
int main(int argc, char *argv[])
{
// prepare all the parameters
Callbacks callbacks;
Botan::AutoSeeded_RNG rng;
Botan::TLS::Session_Manager_In_Memory session_mgr(rng);
Client_Credentials creds;
Botan::TLS::Strict_Policy policy;
// open the tls connection : Error comes here
Botan::TLS::Client client(callbacks,
session_mgr,
creds,
policy,
rng,
Botan::TLS::Server_Information("10.193.252.14", 43733),
Botan::TLS::Protocol_Version::TLS_V12);
while (!client.is_closed())
{
//cout << client.is_active;
// read data received from the tls server, e.g., using BSD sockets or
boost asio
// ...
// send data to the tls server using client.send_data()
} }
最佳答案
此错误的确切原因未知。我认为它可能是 visual studio 的一些构建标志。我在我制作的发布版本中遇到了类似的错误,但它在调试版本中工作正常。然后我将它构建为库 (DLL) 而不是应用程序 (.exe),我没有看到任何问题。我认为使用 Botan 的最佳方式是进行合并构建(即不使用 Botan DLL 库,而是将 Botan 代码导入您的应用程序然后使用它)。这是对我有用的构建命令(从 Botan 源文件夹运行):
configure.py --cpu=i386 --amalgamation --single-amalgamation-file --minimized-build --enable-modules=tls,x509,seed,rdseed,rdrand,rdrand_rng,auto_rng --disable-shared
在运行上述命令之前,您需要安装 Python 并在路径中。上述命令将在 Botan 源代码目录(即您运行上述命令的同一路径)中生成以下文件:
botan_all.h、botan_all_internal.h 和 botan_all.cpp
您需要将这些文件包含在您的应用程序代码中,使用并构建它。
有关 Botan 合并构建的更多信息:https://botan.randombit.net/manual/building.html#amalgamation
关于c++ - 使用Botan访问违规阅读位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46903283/
我从 this answer 那里得到了很好的建议, 检查 the file list for libbotan1.10-dev 并找到/usr/lib/libbotan-1.10.a ,所以我使用了
我使用 创建了一个新的 key 对 Botan::EC_Group ecgroup("brainpool512r1"); Botan::ECDH_PrivateKey privKey(CBot
我正在使用 Botan 创建公共(public)/私有(private) ECDSA key 对。生成的公钥(即使在使用此代码的不同机器上)非常相似......我认为太相似而无法考虑安全。以下是两次运
我正在使用名为 Botan 的 c++ 加密库,并且在任意时间我在运行时收到以下错误。这是什么意思? terminate called after throwing an instance of 'B
我正在尝试使用 Botan 的函数 generate_bcrypt() 获取密码的哈希值。 我读了手册http://botan.randombit.net/passhash.html这里。后来我又读了
我用过Botan::TLS::Callbacks还有Botan::TLS::Client Botan::TLS::Server为了在客户端和服务器之间获得安全通道。同样为了加密解密数据,我使用了 和
在以下单元测试中使用 Botan::SecureVector 时: void UnitTest() { std::vector vbData; vbData.push_back(0x0
我正在尝试使用 botan 加密库运行最基本的程序。我正在使用 Botan 1.10 32 位。我在 Windows 7 上获得了带有安装程序的二进制文件。IDE 是 Visual Studio 20
有谁知道如何创建类型为 Botan::MemoryRegion 的对象以用于此方法? BigInt BOTAN_DLL fe1_encrypt(const BigInt& n, const BigIn
我只是尝试初始化Botan AutoSeeded_RNG,但由于引用错误而失败。我只是想测试一下是否可以初始化任何种类的Botan RNG,因为我在另一个项目中遇到了麻烦。 我包含正确的 header
我使用 vcpkg 作为我的包管理器,按照示例很容易构建 example用sqlite。 之后我成功安装了 botan 并尝试使用find_package(botan REQUIRED) 如示例所示
我有一个与此类似的 C++ 代码: Botan::AutoSeeded_RNG botan_rng; Botan::RSA_PrivateKey private_key(botan_rng, 2048
我开始使用 botan 密码库,我遇到了一个奇怪的函数签名: /** * Load an encrypted key from a data source. * @param source the d
我正在使用 Botan C++ 库来签署和验证一些 license.ini 文件。我已将 Botan PK_Signer 设置为使用 RSA 算法来加密使用 PKCS v1.5 创建的散列。这是我的代
Botan 是否支持 EC 公钥的“压缩”表示的序列化/反序列化? (只有 EC + 号上点的 X 坐标)。有什么例子吗? 最佳答案 是的。 Botan 默认压缩 ECC 点,例如在将公钥序列化为 X
我正在使用 windows 8 和 python 3.6.1 我在我的 cmd 中完成了以下命令: pip 安装加密商店 但是,当我运行以下 python 代码时: from cryptoshop i
我正在尝试使用 Botan 库与私有(private)证书建立 SSL/TLS 连接。不幸的是,我找不到任何使用新 TLS::Client 类的实际示例代码。该文档只是 doxygen 文档的更多文本
我正在尝试构建一个链接到 Botan 1.11 的库。我使用 configure.py 生成合并并将其包含在我的项目中。 问题是当我尝试构建项目时出现以下错误: /Applications/Xcode
我对来自 Botan 加密库的 c++ mc-eliece 实现有问题。在整个互联网上似乎几乎只有一个例子,并带有指向它的链接。 https://www.cryptosource.de/docs/mc
我在 Qt 中使用 Botan 库进行加密。我让它工作到我可以从一个文件加密和解密到另一个文件的地方,但我试图改变它以从一个文件加密到一个 QDomDocument(加密文件将只是一个 XML 文件)
我是一名优秀的程序员,十分优秀!