西西软件园多重安全检测下载网站、值得信赖的软件下载站!
软件
软件
文章
搜索

首页编程开发C#.NET → C#编码打造安全完美Email地址,

C#编码打造安全完美Email地址,

相关软件相关文章发表评论 来源:本站整理时间:2010/11/17 22:37:31字体大小:A-A+

作者:佚名点击:76次评论:0次标签: Email 防垃圾

  • 类型:源码相关大小:541KB语言:中文 评分:7.1
  • 标签:
立即下载

在实验中发现将mailto:进行编码,Outlook也能识别,其他邮件客户端没有进行测试。
花了一袋烟的功夫写了个小工具。思路是:将邮件地址拼接成“mailto:youremail@domain.com?Subject=”的形式,然后随机拆分该字符串,编码后赋值到javascript变量。最后将javascript变量相加。编码方式是:将单字节字符编码为%XX的形式,(unicode)双字节字符编码为\uXXXX形式。具体实现见代码。
生成的效果如下:(请给我写信作为测试,谢谢^_^)

试一试:

多少粘点代码吧(汗...)

// Divide the string to some parts.
protected List<string> PartString(string input)
{
List<string> list = new List<string>();
Random rnd = new Random();
int len = input.Length;
int idx = 0;

while (len > 0)
{
int tmp = rnd.Next(1, len + 1);

list.Add(input.Substring(idx, tmp));

idx += tmp;
len -= tmp;
}

return list;
}

// Encode string. ASCII: %xx format; double bytes: \uxxxx format.
protected string EncodeString(string input)
{
StringBuilder output = new StringBuilder(input.Length * 4);

foreach (char c in input)
{
int charValue = (int)c;

if (charValue > 255)
{
output.AppendFormat("\\u{0:x4}", charValue);
}
else
{
output.AppendFormat("%{0:x2}", charValue);
}
}

return output.ToString();
}

// Generate unique variable name.
protected string GenerateVarName()
{
Random rnd = new Random();
string output = ((char)((int)'a' + rnd.Next(0, 26))).ToString() + rnd.Next(0, 10);

while (vars.ContainsKey(output))
{
output = ((char)((int)'a' + rnd.Next(0, 26))).ToString() + rnd.Next(0, 10);
}

return output;
}

演示地址:http://www.xianfen.net/Article148.aspx
代码下载:点这里

    相关评论

    阅读本文后您有什么感想? 已有人给出评价!

    • 8 喜欢喜欢
    • 3 顶
    • 1 难过难过
    • 5 囧
    • 3 围观围观
    • 2 无聊无聊

    热门评论

    最新评论

    发表评论 查看所有评论(0)

    昵称:
    表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲
    字数: 0/500 (您的评论需要经过审核才能显示)