public static bool IsAuthed(string key, out UserInfo userInfo) { userInfo = null; try { var mixedKey = DESProvider.Decrypt(key, _desKey); var parameters = mixedKey.Split('&'); var keyTime = TimeConvert.TimeSpanToUTCDateTime(parameters[0]); if ((DateTime.UtcNow - keyTime) > _expireTime || parameters[2] != _desKey) { return(false); } userInfo = JsonConvert.DeserializeObject <UserInfo>(parameters[1]); return(true); } catch { return(false); } }