public static string GetUniqueID() { var guidBytes = new byte[9]; System.Security.Cryptography.RandomNumberGenerator.Fill(guidBytes); var guid = DateTimeOffset.UtcNow.ToUnixTimeSeconds() + "_" + BaseEncoding.ToBaseString(guidBytes, BaseEncoding.CHAR_SETS.BASE36); //HexUtil.GetHexFromBytes(guidBytes); return(guid); }
// ========= USAGE 1 ========= // string BaseEncoding.ToBaseString(byte[] bytes) // byte[] BaseEncoding.FromBaseString(string s) static void Usage1(string testName, BaseEncoding encoding, string testVector) { byte[] origin = Encoding.Default.GetBytes(testVector); string baseString = encoding.ToBaseString(origin); byte[] bytes = encoding.FromBaseString(baseString); Console.WriteLine("[" + testName + "]\tVector: " + testVector + "\tBaseString: " + baseString + "\t" + (ArrayEquals(origin, bytes) ? "Success" : "failed")); }