base64编码简单介绍
- 意义:Base64编码的并不是对数据进行加密,而是为了避免传输数据时的编码错误。数据使用ascii码传输时,可见字符的组合范围是65到90代表大写的字母A-Z,而组合128~255是不可见字符。在网络上交换数据时,往往要经过多个设备,由于不同的设备对字符的处理方式有一些不同,这样那些不可见字符就有可能被处理错误,这是不利于传输的。所以就先把数据先做一个Base64编码,统统变成可见字符,这样出错的可能性就大降低了。
- 特点:
- 标准base64只有64个字符(英文大小写、数字和+、/)以及用作后缀等号;
- .base64是把3个字节变成4个可打印字符,所以base64编码后的字符串一定能被4整除;
- base64可以归类为一种对称加密,但由于其密钥即转换方式是公开的,因此实际上几乎没有加密效果,只能用于编码转换。
代码实现
- 验证base64与图片准确性的在线网站 https://www.base64decode.org/
- base64实现的 c++代码库
- mat互转代码
#include <stdlib.h> #include <string.h> #include "opencv2/opencv.hpp" #include "base64.h" //imgType 包括png bmp jpg jpeg等opencv能够进行编码解码的文件 std::string Mat2Base64(const cv::Mat &image, std::string imgType) { //Mat转base64 std::vector<uchar> buf; cv::imencode(imgType, image, buf); //uchar *enc_msg = reinterpret_cast<unsigned char*>(buf.data()); std::string img_data = base64_encode(buf.data(), buf.size(), false); return img_data; } cv::Mat Base2Mat(std

本文介绍了Base64编码的作用,它主要用于确保数据在网络传输中避免编码错误,将不可见字符转化为可见字符。文章提供了C++实现Base64编码和解码的代码示例,包括将图片数据转换为Base64字符串并回转成图片。
最低0.47元/天 解锁文章
1094

被折叠的 条评论
为什么被折叠?



