63 lines
1.5 KiB
C#
63 lines
1.5 KiB
C#
|
using System.Collections;
|
|||
|
using System.Collections.Generic;
|
|||
|
using UnityEngine;
|
|||
|
/// <summary>
|
|||
|
/// <20><><EFBFBD>ܹ<EFBFBD><DCB9><EFBFBD><EFBFBD><EFBFBD> <20><>Ҫ<EFBFBD>ṩ<EFBFBD><E1B9A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
/// </summary>
|
|||
|
public class EncryptionUtil
|
|||
|
{
|
|||
|
//1.<2E><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ
|
|||
|
public static int GetRandomKey()
|
|||
|
{
|
|||
|
return Random.Range(1, 10000) + 5;
|
|||
|
}
|
|||
|
|
|||
|
//2.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
public static int LockValue(int value, int key)
|
|||
|
{
|
|||
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
value = value ^ (key % 9);
|
|||
|
value = value ^ 0xADAD;
|
|||
|
value = value ^ (1 << 5);
|
|||
|
value += key;
|
|||
|
return value;
|
|||
|
}
|
|||
|
|
|||
|
public static long LockValue(long value, int key)
|
|||
|
{
|
|||
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
value = value ^ (key % 9);
|
|||
|
value = value ^ 0xADAD;
|
|||
|
value = value ^ (1 << 5);
|
|||
|
value += key;
|
|||
|
return value;
|
|||
|
}
|
|||
|
|
|||
|
//3.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
public static int UnLoackValue(int value, int key)
|
|||
|
{
|
|||
|
//<2F>п<EFBFBD><D0BF>ܻ<EFBFBD>û<EFBFBD>м<EFBFBD><D0BC>ܹ<EFBFBD> û<>г<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ֱ<><D6B1><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ȡ <20><>ô<EFBFBD>Ͳ<EFBFBD><CDB2>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ֵ<EFBFBD>϶<EFBFBD><CFB6><EFBFBD>0
|
|||
|
if (value == 0)
|
|||
|
return value;
|
|||
|
value -= key;
|
|||
|
value = value ^ (key % 9);
|
|||
|
value = value ^ 0xADAD;
|
|||
|
value = value ^ (1 << 5);
|
|||
|
return value;
|
|||
|
}
|
|||
|
|
|||
|
public static long UnLoackValue(long value, int key)
|
|||
|
{
|
|||
|
//<2F>п<EFBFBD><D0BF>ܻ<EFBFBD>û<EFBFBD>м<EFBFBD><D0BC>ܹ<EFBFBD> û<>г<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ֱ<><D6B1><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ȡ <20><>ô<EFBFBD>Ͳ<EFBFBD><CDB2>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ֵ<EFBFBD>϶<EFBFBD><CFB6><EFBFBD>0
|
|||
|
if (value == 0)
|
|||
|
return value;
|
|||
|
value -= key;
|
|||
|
value = value ^ (key % 9);
|
|||
|
value = value ^ 0xADAD;
|
|||
|
value = value ^ (1 << 5);
|
|||
|
return value;
|
|||
|
}
|
|||
|
}
|