相关疑难解决方法(0)

我如何在C中进行base64编码(解码)?

我在unsigned char变量中有二进制数据.我需要将它们转换为c中的PEM base64.我查看了openssl库,但我找不到任何功能.有没有人有任何想法?

c base64

126
推荐指数
11
解决办法
27万
查看次数

使用boost throw异常进行Base64编码

我尝试使用boost base64编码器,我找到了一个例子,但我得到了异常

typedef 
transform_width< binary_from_base64<std::string::const_iterator>, 8, 6 > it_binary_t
Run Code Online (Sandbox Code Playgroud)

我用过的

std::string b64E(it_binary_t(Encrip.begin()), it_binary_t(Encrip.end()));
Run Code Online (Sandbox Code Playgroud)

我知道了

agentid_coder.exe中0x75b1b9bc处于未处理的异常:Microsoft C++异常:内存位置0x0046ed94处的boost :: archive :: iterators :: dataflow_exception ..

我发现这个解决方法,但我得到了相同的结果

 string dec( 
        it_binary_t(Encrip.begin()), 
        it_binary_t(Encrip.begin() + Encrip.length() - 1) 
        ); 
Run Code Online (Sandbox Code Playgroud)

我正在使用MSVS2008并提升1.38

c++ string base64 boost iterator

9
推荐指数
1
解决办法
1万
查看次数

C++ 中的编译时 Base64 解码

是否可以在编译时将 base64 编码数据解码为二进制数据?

我想到了这样的事情:

constexpr auto decoded = decodeBase64<"SGVsbG8=">();

或者

constexpr auto decoded = decodeBase64("SGVsbG8=");

我对生成的decoded.

c++ compile-time constexpr c++17

6
推荐指数
1
解决办法
439
查看次数

如何在C++中使用Base64-Encoded字符串在GDI +中创建图像?

我有一个应用程序,目前用C#编写,它可以采用Base64编码的字符串并将其转换为Image(在这种情况下为TIFF图像),反之亦然.在C#中,这实际上非常简单.

    private byte[] ImageToByteArray(Image img)
    {
        MemoryStream ms = new MemoryStream();
        img.Save(ms, System.Drawing.Imaging.ImageFormat.Tiff);
        return ms.ToArray();
    }

    private Image byteArrayToImage(byte[] byteArrayIn)
    {
        MemoryStream ms = new MemoryStream(byteArrayIn);
        BinaryWriter bw = new BinaryWriter(ms);
        bw.Write(byteArrayIn);
        Image returnImage = Image.FromStream(ms, true, false);
        return returnImage;
    }

    // Convert Image into string
    byte[] imagebytes = ImageToByteArray(anImage);
    string Base64EncodedStringImage = Convert.ToBase64String(imagebytes);

    // Convert string into Image
    byte[] imagebytes = Convert.FromBase64String(Base64EncodedStringImage);
    Image anImage = byteArrayToImage(imagebytes);
Run Code Online (Sandbox Code Playgroud)

(而且,现在我正在看它,可以进一步简化)

我现在有一个业务需要在C++中这样做.我正在使用GDI +绘制图形(目前只有Windows),我已经有了用C++ 解码字符串的代码(到另一个字符串).然而,我磕磕绊绊的是将信息传递到GDI +中的Image对象.

在这一点上,我想我也需要

a)一种将Base64解码后的字符串转换为IStream以转换为Image对象的FromStream函数的方法

b)一种将Base64编码的字符串转换为IStream以提供给Image对象的FromStream函数的方法(因此,代码与我目前使用的代码不同)

c)我没有想到的一些完全不同的方式.

我的C++技能非常生疏,我也被托管的.NET平台所破坏,所以如果我攻击这一切都错了,我会接受建议. …

c++ base64 gdi+ tiff image

5
推荐指数
2
解决办法
6850
查看次数

PHP中的OpenSSL加密在C ++中解密

如何使用 openssl 在 PHP 中加密数据并在 C++ 中解密?

编辑:我让它有点工作,但现在我有一个问题,它出于某种原因在控制台中输出更多的字符。

代码

openssl_encrypt("testtest", "AES-256-CBC", "01234567890123456789012345678901", 0, "0123456789012345");
Run Code Online (Sandbox Code Playgroud)

代码

int main() {
    /* A 256 bit key */
    unsigned char* key = (unsigned char*)"01234567890123456789012345678901";
    /* A 128 bit IV */
    unsigned char* iv = (unsigned char*)"0123456789012345";

    std::vector<byte> data = base64_decode("2fd9RV8QVVUAR2n5WLjiSA==");
    byte* ciphertext = new byte[data.size()];

    for (size_t i = 0; i < data.size(); i++)
    {
        ciphertext[i] = data.at(i);
    }

    byte decryptedtext[128];
    int decryptedtext_len;

    decryptedtext_len = decrypt(ciphertext, data.size(), key, iv, decryptedtext);

    std::cout << decryptedtext;

    return …
Run Code Online (Sandbox Code Playgroud)

php c c++ encryption openssl

5
推荐指数
0
解决办法
651
查看次数

将 Base64 解码的字符串转换为 unsigned char[32]

我正在使用ed25519-donna进行数字签名。

密钥是unsigned char[32],签名是unsigned char[64]

我找到了这个 base64 编码,但它只能解码为string.

我已经找到并尝试了很多技术,但仍然不确定如何转换。

如何将 Base64 解码后的数据string转换为unsigned char[32]?

c++ base64 type-conversion ed25519-donna

3
推荐指数
1
解决办法
3891
查看次数

使用std :: string存储二进制数据是不合适的吗?

我很惊讶在这个问题中看到有人修改了一个工作片段只是因为,正如第二个答案的作者所说:

我不应该使用存储在std :: string对象中的二进制数据

我不应该这样做吗?

c++ string binary

3
推荐指数
1
解决办法
132
查看次数

如何在 Tornado 中通过 websocket 传输 .png 或 .jpg 文件

总的来说,我对 Tornado 和 Web 服务还很陌生。在我的应用程序中,我在服务器端有 Qt/c++ 客户端和 python Tornado。Qt 客户端以文本消息的形式发送命令。在服务器端,“on_message”方法接收消息,对其进行解析并调用相关脚本来生成 .png 图像。现在,我想将此图像连同图像的简短描述一起发送回客户端。如何在服务器端和客户端执行此操作?指向任何在线示例的指针也会有所帮助。谢谢。

c++ python qt tornado websocket

1
推荐指数
1
解决办法
3085
查看次数