数据加密与解密

来源:互联网 发布:it解决方案 编辑:程序博客网 时间:2024/05/17 06:18

用unity自带的方法可对用户数据进行加密解密。

这里可以指定密钥:

using UnityEngine;using System;using System.Security.Cryptography;using System.Text;public class GlobalDataHelper{private const string DATA_ENCRYPT_KEY = "a234857890654c3678d77234567890O2";private static RijndaelManaged _encryptAlgorithm = null;public static RijndaelManaged DataEncryptAlgorithm (){_encryptAlgorithm = new RijndaelManaged ();_encryptAlgorithm.Key = Encoding.UTF8.GetBytes (DATA_ENCRYPT_KEY);_encryptAlgorithm.Mode = CipherMode.ECB;_encryptAlgorithm.Padding = PaddingMode.PKCS7;return _encryptAlgorithm;}}


/// 加密数据

public string EncryptData (string dataToEncrypt){//给明文加密用GetBytesbyte[] dataToEncryptArray = Encoding.UTF8.GetBytes (dataToEncrypt);byte[] dataAfterEncryptArray = GlobalDataHelper.DataEncryptAlgorithm().CreateEncryptor ().TransformFinalBlock (dataToEncryptArray, 0, dataToEncryptArray.Length);return Convert.ToBase64String (dataAfterEncryptArray, 0, dataAfterEncryptArray.Length);}/// 解密数据public string DecryptData (string dataToDecrypt){//给密文解密用FromBase64Stringbyte[] dataToDecryptArray = Convert.FromBase64String (dataToDecrypt);byte[] dataAfterDecryptArray = GlobalDataHelper.DataEncryptAlgorithm().CreateDecryptor ().TransformFinalBlock (dataToDecryptArray, 0, dataToDecryptArray.Length);return Encoding.UTF8.GetString (dataAfterDecryptArray);}
如果保存用户的账户密码需要保存md5值(简单密码可以暴_力_破_解)。





0 0