示例#1
0
        public string BuildMessage(string msg, string token)
        {
            var key = Md5(token);
            var iv  = Md5($"{key}{token}");

            var encryptedData = CryptoProvider.EncryptData(iv.ToByteArray(), key.ToByteArray(), Encoding.UTF8.GetBytes(msg)).ToHex();
            var dataLength    = (encryptedData.Length / 2 + 32).ToString("x").PadLeft(4, '0');
            var checksum      = Md5($"{_magic}{dataLength}{_unknown1}{_deviceType}{_serial}{_time}{token}{encryptedData}");

            return($"{_magic}{dataLength}{_unknown1}{_deviceType}{_serial}{_time}{checksum}{encryptedData}");
        }