c# litjson濡備綍瀹炵幇鏁版嵁鍔犲瘑
鍦ㄤ娇鐢↙itJSON杩涜鏁版嵁鍔犲瘑鏃讹紝鍙互浣跨敤甯歌鐨勫姞瀵嗙畻娉曪紝渚嬪AES鍔犲瘑绠楁硶銆備互涓嬫槸涓€涓ず渚嬩唬鐮侊紝婕旂ず濡備綍浣跨敤LitJSON鍜孉ES绠楁硶鏉ュ疄鐜版暟鎹姞瀵嗭細
using LitJson;
using System;
using System.Security.Cryptography;
using System.Text;
class Program
{
static void Main()
{
// 鍘熷鏁版嵁
JsonData jsonData = new JsonData();
jsonData["name"] = "Alice";
jsonData["age"] = 25;
// 灏咼sonData杞崲涓哄瓧绗︿覆
string jsonString = jsonData.ToJson();
// 鍔犲瘑瀵嗛挜
string key = "1234567890123456";
byte[] keyBytes = Encoding.UTF8.GetBytes(key);
// 鍔犲瘑鏁版嵁
byte[] encryptedData = EncryptStringToBytes_Aes(jsonString, keyBytes);
// 灏嗗姞瀵嗗悗鐨勬暟鎹浆鎹负Base64瀛楃涓?/span>
string encryptedString = Convert.ToBase64String(encryptedData);
Console.WriteLine("Encrypted data: " + encryptedString);
}
static byte[] EncryptStringToBytes_Aes(string plainText, byte[] key)
{
byte[] encrypted;
using (Aes aesAlg = Aes.Create())
{
aesAlg.Key = key;
aesAlg.GenerateIV();
ICryptoTransform encryptor = aesAlg.CreateEncryptor(aesAlg.Key, aesAlg.IV);
using (MemoryStream msEncrypt = new MemoryStream())
{
using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write))
{
using (StreamWriter swEncrypt = new StreamWriter(csEncrypt))
{
swEncrypt.Write(plainText);
}
encrypted = msEncrypt.ToArray();
}
}
}
return encrypted;
}
}
鍦ㄨ繖涓ず渚嬩腑锛岄鍏堝垱寤轰簡涓€涓狫sonData瀵硅薄骞惰浆鎹负瀛楃涓层€傜劧鍚庝娇鐢ˋES绠楁硶鍜屾寚瀹氱殑鍔犲瘑瀵嗛挜瀵瑰瓧绗︿覆杩涜鍔犲瘑銆傚姞瀵嗗悗鐨勬暟鎹互Base64瀛楃涓茬殑褰㈠紡杈撳嚭銆傝娉ㄦ剰锛岃繖閲岀殑鍔犲瘑绠楁硶鍜屽瘑閽ヤ粎浣滀负绀轰緥锛屽疄闄呭簲鐢ㄤ腑闇€瑕佹牴鎹叿浣撻渶姹傞€夋嫨鏇村畨鍏ㄧ殑鍔犲瘑绠楁硶鍜屽瘑閽ョ鐞嗘柟寮忋€?/p>
相关问答