Anti XSS库解码

时间:2011-06-30 09:57:15

标签: c# decode antixsslibrary

我正在使用microsoft anti xss库来形成安全性。我正在使用HtmlFormUrlEncode方法。

如何解码录制的数据?

示例数据:

mail%40sample.com
%c3%96nder  

1 个答案:

答案 0 :(得分:7)

AntiXSS不提供解码 - .NET框架倾向于为您执行此操作。实际上,UrlDecode实际上应该是正确的。

但是,如果你想手动创建它应该能够创建一个与原始字符串长度相同的char []数组,然后遍历字符串,查找%然后抓取两个字符,确保它们是有效的十六进制,然后执行以下操作以获取十六进制值

if ((h >= '0') && (h <= '9'))
{
    return (h - '0');
}
if (((h >= 'a') && (h <= 'f')) ||
    ((h >= 'A') && (h <= 'F')))
{
    return ((h - 'a') + 10);
}

一旦你有两个值,你就可以组合

byte b = (byte) ((firstByte << 4) | secondByte);

通过调用UTF8Encoding.GetChars()

将其附加到数组中

(注意:代码不在我的头顶,没有正确测试)