Unity 随笔: 基本加密 地址绑定

Unity基本算法

  • MAC 地址 获取

老规矩,直接上代码:

MAC 地址 获取

using System.Collections;
using System.Collections.Generic;
using System.Net.NetworkInformation;
using UnityEngine;
using UnityEngine.UI;
using System.Management;
using System.Management.Instrumentation;

/// 
/// MAC 地址绑定
/// 
public class BindingMAC_ZH : MonoBehaviour
{
    //UI 显示
    public Text _MacText;

    void Start()
    {
        _MacText.text = GetMacAddress();
    }


    /// 
    /// 获得Mac地址
    /// 
    /// 
    /// 
    private static string GetMacAddress()
    {
        //MAC 地址字符串
        string _PhysicalAddress = "";

        //获取所有网络接口
        NetworkInterface[] _Nice = NetworkInterface.GetAllNetworkInterfaces();

        foreach (NetworkInterface _Adaper in _Nice)
        {

            Debug.Log(_Adaper.Description);

            //得到物理地址
            _PhysicalAddress = _Adaper.GetPhysicalAddress().ToString();

            if (_PhysicalAddress != "")
            {
                break;
            };
        }

        return _PhysicalAddress;
    }


    #region 弃用 CPU 网卡 硬盘 序列号

    ///// 
    ///// 获取CPU 序列号
    ///// 
    ///// 
    //public static string GetCpuNumerical()
    //{
    //    string _StrCPU = "";

    //    ManagementClass _ManagementClass = new ManagementClass("Win32_Processor");

    //    ManagementObjectCollection _Moc = _ManagementClass.GetInstances();

    //    foreach (ManagementObject _Mo in _Moc)
    //    {
    //        _StrCPU = _Mo.Properties["ProcessorID"].Value.ToString();
    //    }
    //    return _StrCPU;
    //}


    ///// 
    ///// 获取网卡 序列号
    ///// 
    ///// 
    //public static string NetworkCard()
    //{
    //    string _StrNetworkCard = "";

    //    //获取硬盘ID 
    //    string HDid;
    //    ManagementClass _ManagementClass = new ManagementClass("Win32_DiskDrive");
    //    ManagementObjectCollection _Moc = _ManagementClass.GetInstances();
    //    foreach (ManagementObject _Mo in _Moc)
    //    {
    //        HDid = (string)_Mo.Properties["Model"].Value;
    //        print("硬盘序列号:" + HDid.ToString());
    //        _StrNetworkCard = HDid.ToString();
    //    }
    //    return _StrNetworkCard;
    //}


    ///// 
    ///// 获取 硬盘 序列号
    ///// 
    ///// 
    //public static string HardDisk()
    //{
    //    string _StrHardDisk = "";

    //    ManagementClass _ManagementClass = new ManagementClass("Win32_NetworkAdapterConfiguration");
    //    ManagementObjectCollection _Moc = _ManagementClass.GetInstances();
    //    foreach (ManagementObject _Mo in _Moc)
    //    {
    //        if ((bool)_Mo["IPEnabled"] == true)
    //        {
    //            _StrHardDisk = _Mo["MacAddress"].ToString();
    //            _Mo.Dispose();
    //        }
    //    }
    //    return _StrHardDisk;
    //}

    #endregion

}

最终效果:

Unity 随笔: 基本加密 地址绑定_第1张图片

暂时先这样吧,如果有时间的话就会更新,如果实在看不明白就留言,看到我会回复的。

路长远兮,与君共勉。

你可能感兴趣的:(Unity,unity,加密解密,mac,字符串,c#)