欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

C Base64加密json

江奕云2年前9瀏覽0評論

Base64是將二進制數據編碼成可打印字符的一種編碼方式,常用于網絡傳輸和數據存儲。C語言提供了Base64編碼和解碼函數,可以很方便地對數據進行加密和解密。

在Web開發和移動開發中,JSON數據是常用的數據格式之一。為了保護數據的安全性,可以使用Base64加密JSON數據。以下是使用C語言對JSON數據進行Base64加密的代碼:

#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <openssl/bio.h>
#include <openssl/evp.h>
#include <openssl/buffer.h>
char* base64_encode(const unsigned char* input, int length) {
BIO *bmem, *b64;
BUF_MEM *bptr;
b64 = BIO_new(BIO_f_base64());
bmem = BIO_new(BIO_s_mem());
b64 = BIO_push(b64, bmem);
BIO_write(b64, input, length);
BIO_flush(b64);
BIO_get_mem_ptr(b64, &bptr);
char* buff = (char *)malloc(bptr->length+1);
memcpy(buff, bptr->data, bptr->length);
buff[bptr->length] = '\0';
BIO_free_all(b64);
return buff;
}
int main() {
// 原始JSON數據
char* data = "{\"name\":\"Tom\",\"age\":18,\"address\":\"Beijing\"}";
// 計算JSON數據長度
int length = strlen(data);
// 使用Base64加密JSON數據
char* encoded_data = base64_encode((const unsigned char*)data, length);
// 打印加密后JSON數據
printf("Encoded JSON data: %s\n", encoded_data);
// 釋放內存
free(encoded_data);
return 0;
}