小编个人觉得,一个文件加密好后,想要再解密,就得了解其构造,以及写法。
而小编这里呢,写的文件很粗糙,也很简单,只是将每个字节后添加一些东西,既然知道了写法构成,那么就好办了。
声明一个全局解密函数如下:
//解密函数 int DesEnc_raw(char* Buffer, size_t* size, char* Buffer2, size_t& size2);
下面直接跳过加密数据,就是原数据了,将其提取出来存入Buffer2中,而字节数存入size2中。
//解密 int DesEnc_raw(char* Buffer, size_t* size, char* Buffer2, size_t& size2) { int number = *size; int ret = -1; //首先判断带入加密后的字符串是否为空,或者它的字节数是否为0 if (Buffer == NULL || number ==0) { cout << "传入的数据为空" << endl; system("pause"); return ret; } //char* bufftemp = new char [number/4]; int j = 0; for (size_t i = 0;i < number;i+=4) { //cout << Buffer[i] << " ";这里可以看看加密后的文件数据具体化 //因为知晓了加多少个字节数据,所以直接跳过加密数据 *(Buffer2+j) = Buffer[i]; j++; } *(Buffer2 + j) = '