欢迎光临
我们一直在努力

如何防止页面中的敏感信息被提取-ASP教程,ASP应用

建站超值云服务器,限时71元/月

公布到网页上的email经常会被一些工具自动提取,一些非法用户就会利用所提取的email大肆发送垃圾邮件。这些工具大多都是查找链接中“mailto:”后面的信息或是“@”前后的信息来达到提取email的目的。我在看dotnetnuke(以下简称dnn)的源代码时发现了一个不错的方式来防止这些信息被自动提取。

在dnn中有这么一段函数(globals.vb中):
public function cloaktext()function cloaktext(byval personalinfo as string) as string

    if not personalinfo is nothing then
        dim sb as new stringbuilder

        convert to ascii character codes,将字符串转换成ascii编码字符串形式
        sb.remove(0, sb.length)
        dim stringlength as integer = personalinfo.length – 1
        for i as integer = 0 to stringlength
            sb.append(asc(personalinfo.substring(i, 1)).tostring)
            if i < stringlength then
                sb.append(“,”)
            end if
        next

        build script block
        dim sbscript as new stringbuilder

        sbscript.append(vbcrlf & “<script language=””javascript””>” & vbcrlf)
        sbscript.append(“<!– ” & vbcrlf)
        fromcharcode 方法:从一些 unicode 字符值中返回一个字符串。
        sbscript.append(”   document.write(string.fromcharcode(” & sb.tostring & “))” & vbcrlf)
        sbscript.append(“// –>” & vbcrlf)
        sbscript.append(“</script>” & vbcrlf)

        return sbscript.tostring
    else
        return null.nullstring
    end if

end function

该段代码先将需要加密的信息转换成ascii编码字符串形式,然后用javascript中的document.write方法写到页面。

我测试了以下效果,还不错。大家也可以试试。
<html>
<head>
<meta http-equiv=”content-type” content=”text/html; charset=gb2312″>
<title>测试信息加密</title>
</head>

<body>
可以被提取的链接:<a href=”mailto:aaa@163.com”>aaa@163.com</a><br>
不能被提取的链接:
<script language=”javascript”>
<!–
   document.write(string.fromcharcode(60,97,32,104,114,101,102,61,34,109,97,105,108,116,111,58,120,120,120,64,116,111,109,
46,99,111,109,34,62,120,120,120,64,116,111,109,46,99,111,109,60,47,97,62))
// –>
</script>
</body>
</html>

如果大家有兴趣,还可以用更加复杂的方法来进行加密,一句话:再也不能让人轻易获取信息了!

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 如何防止页面中的敏感信息被提取-ASP教程,ASP应用
分享到: 更多 (0)