我使用Boost.Asio在C ++中开发。我希望能够base64解码数据,因为Boost.Asio链接到openssl我想使用它的函数来做到这一点,而不是添加额外的依赖(例如crypto ++)。我发现此代码here显示了如何执行此操作。 (将int finalLen = BIO_read(bmem,(void *)pOut, outLen );更改为 inLen )
我不知道它是否有效。我只是传递了一些测试数据,我用这里的在线解码器验证了这一点(2)(选择安全解码为文本并计算符号)。我使用的测试字符串是这样的:“AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA =”(没有“”)。在线解码器和快速加密++实现都返回23个字符。但是我上面提到的使用openssl的代码返回0.我做错了什么? openssl适合base64解码吗? 请给我一个解决方案(如果存在的话)。谢谢你的时间。
答案 0 :(得分:0)