public static Dictionary <string, string> Parse(string param) { var state = new HttpWwwAuthenticateHeaderParameterParser(param); var result = new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase); var token = state.ReadToken(); while (!string.IsNullOrEmpty(token)) { if (!state.ReadDelim('=')) { return(result); } result[token] = state.ReadString(); if (!state.ReadDelim(',')) { return(result); } token = state.ReadToken(); } return(result); }