CSK.Blog--个人原创Weblog

Blog防止spam信息技巧

自从把我blog迁至专用服务器上,访问率不断提升,但同时增加的是烦人的垃圾广告,常称为spam信息。

就blog而言,这类信息主要通过2种途径传播

1.留言、评论信息

2.引用信息

其中,第一种是最直观的spam传播方式,也是比较常见的,至于第二种,利用文章的trackback来做spam,这不禁令我赞叹人类智慧的伟大!

和垃圾邮件一样,目前自然语言处理还没达到一定的高度,自然没有什么很有效的办法杜绝这类信息。不过作为一个站长,看着这些恶心的东西贴在自己网站上实在是受不了。

为此我最早采取的方式是关键字过滤,但防不胜防...最后发展出下面2招,供各位参考:

对付评论:

思想:由于一般spam是推销产品、网站为目的,其中自然少不了链接与网址,不过链接标签不是必要的,但网址(严格说是URL)一般是必须的。所以突破口就在其中。

方案:对于留言作关键字过滤,将"http://"作为关键词,如果发现有这个关键词,则禁止发送留言。这样基本上就不会有第一类spam干扰你了。

对付引用:

要知道,既然是trackback,那么url是必须的,而且自动会加上链接...这也是那些spamer的狡诈之处,上面的办法自然是无效了

不过也有解决之道(不讨论关闭trackback的方案):

1.只有本blog注册用户才能获取trackback地址

好处:可以比较有效杜绝此类spam,缺点:并不是人人都愿意为了做个处于良心(至少国人不大愿意作trackback的,可能我有些偏见)的trackback特地来你这注册

2.动态生成trackback地址

我之前在网上看过具体例子,大家可以找下,那人提供方法的。

实现起来比较复杂,为了做到每次产生的地址不同,要做很复杂的后台跟踪,而且网上有人实现的方案是一个trackback地址在24小时后自动失效...

这招绝对很有效,不过我实在没这个功夫..

3.作trackback地址变换

此话怎讲?下面我来分析下spam的特点:

不要以为那些发送spam的人有很好的耐心给你blog每篇文章手工去发那些trackpost。他们一般都使用外面流行的spam群发工具。

我没有具体研究过,如果要我编写,一般会遵循这个原则:

一般trackback地址的格式为http://xxxblog.xx.com/trackback.asp?id=xxx&....

是不是这样?在那个trackback.asp后面跟的querystring里面一般总会含有id这类的信息的,这是必须的,因为blog要知道是对哪篇文章作了trackback。

好,现在我们要做群发软件,所谓群发,就是一次性给一个blog发很多有效的spam,这自然不可能要发送者去提供每个页面的trackback地址了,往往软件会找出每篇trackback地址的规律:

太简单不过了,因为一般id就是一个数字,而且文章id都是连续的,那么直接循环发送就好了,比如:

for (int id=0;id<maxid;id++)

{

CString url;

url.Format("http://xxxblog.xx.com/trackback.asp?id=%d",id);

sendspam(url);

}

所以我们的突破口就是在把这个id值变成不能用上述代码枚举的形式

这里介绍我目前采用的办法:把每个数字用对应的罗马字表示:

1->I ,2 -> II , 6 -> VI 等

这样,诸如id=53的形式可以变换到:id=V,III

现在我们考虑上面算法,虽然要写一个枚举这样id的程序实在很容易,但spam群发器的作者不会就为了这个情况特地去写这个算法吧。

而且对自己来说实现起来也很容易。

还有可以把数字用大写中文表示,或者英文,哈哈,就看各位想象了!

这个办法虽然不能绝对防止spam发作,但要知道在这个浮躁的社会,那些spamer们自然不会有工夫去研究你的算法的...

2007的第一个作品,一个crack

昨天2006.12.31得知学校comic采取了条措施:一定要安装SJTU自己的windows自动更新服务才能访问网站内容。

我第一反应就是:流氓软件...

其实不是这样,SJTU的自动更新服务只不过是一个配置脚本,不过对于win9x和linux用户那样做也太过分了些..

所以一时兴致,写了这个伪装更新服务去完成所谓的“激活”的操作:

虽然comic的做法我很理解,但未必有些霸道,希望这个程序能给各位更多选择。

由于最近要为demo sence开发作准备,所以今后的crack程序都带有mod音乐

这次的是:floppi&zalza的snowballs_with_attitud

唉,希望今后老弟来提供给我音乐...

程序和代码:


http://www.csksoft.net/data/legacyftp/Products/Crack/ComicCracker.rar


http://www.csksoft.net/data/legacyftp/Products/Crack/comic_cheater_src.rar

列一下今后要看的书,备忘

一次偶然在学校bbs ai版面看到一些学长讨论计算机视觉的问题,从很多视觉识别算法是NP hard到后来直接转到意识研究,随后列了一些书名。

看了以后很有感觉,终于找到自己今后的方向了,而且搞计算机最终目的不就是AI么...

目前传统的AI领域,就是那些各类人工智能上说的什么决策树、状态图、A*....这类,以我的直觉那并不是AI的正确方向,而比较新的ANN理论才可能是正确的。随着现在生物学的深入,以及ANN自身理论的一些应用的成功或许这条路是对的。

自从知道有个遗传算法以来,或许达尔文是对的,意识可能就是遗传的产物(神经达尔文主义)...今后如果能真的涉及这些领域去研究,那真是无比之兴奋。不过感觉自己还是二元论者,虽然我赞成用唯物观点去研究意识,不过至少目前我宁愿相信灵魂。。

好了,不说自己的胡话了:一些书还没有电子版,恐怕要买实体的了

1.The Quest for Consciousness: a Neurobiological Approach

AI版的学长推荐了,不过国内没有出版,没有电子书...不过看介绍似乎都是一致的称赞,实在不行就去amazon买了..贵..所以如果大家有什么线索希望能告诉我

Christof Koch这个人貌似还有不少东西,而且我很吃惊的发现一些大学的人工智能课程里面有用这本书当辅助教材的,而且一些神学院有针对这本书的研究项目..可见...

2.神经达尔文主义

很早的一本书,而且不敢保证里面的东西是否已被推翻,不过我还是蛮赞同进化论观点的...如果没电子书就买实体的了..

3.拓扑生物学\记忆中的现在

与上本同一作者的

4.Evolution of the Brain: Creation of the Self

5.The Mystery of Consciousness

当然最为一个CS的人貌似不能很深入的去研究这些了,主要还是获得灵感,就像ANN从现代神经细胞研究并建立模型那样,个人觉得我们恐怕永远无法创造灵魂,但至少还是可能知道他的机理的

6.心智的社会

M. Minsky提出的怪异理论,不过我也想过这个问题...或许今后internet发展到一定水平就有意识了...

7.智能科学

好像是国人写的书,评价似乎不错,看目录好像把所有最近的AI领域的事都说了...不管如何下次有机会要看看

[开源]抽象语法树图形化显示程序

最近在做编译大作业需要将语法翻译好的抽象语法树(Abstract Syntax Tree)显示出来,教材使用了ANDREW W. APPEL的Modern Compiler Implementation in Java一书。

看过的人都知道其中要求将他定义的一种叫做tiger的语言先翻译成一棵抽象书,我们的大作业就到此为止,至于将这颗树显示可以采用作者提供的print.java以文本展现出来,也就是这样:

LetExp(
DecList(
TypeDec(myint,
NameTy(int),TypeDec(arrtype,
ArrayTy(myint))),
DecList(
VarDec(arr1,
arrtype,
ArrayExp(arrtype,
IntExp(10),
IntExp(0)),
true),
DecList())),
SeqExp(
ExpList(
varExp(
SimpleVar(arr1)))))finished

不过这样难免和我们直观的语法树理解差太远了,于是我就写了个程序,效果是这样的:

自认为还不赖,程序和原有的print.java类似,直接接受抽象树根节点,你再指定给他保存到的图片文件名和保存的格式就可以了。

我将源代码公布在下面,如果大家需要也可以用来玩玩^_^

下载地址:

公网:http://www.csksoft.net/data/legacyftp/Products/code_and_lib/PrettyTree_BY_CSK.rar

教育网:ftp://great_csk:public@public.sjtu.edu.cn/public-files/PrettyTree_BY_CSK.rar

说明:

作者保留源代码的著作权利,可以在不修改删除作者信息的前提下任意使用和分发。作者不对由于本代码产生的问题负责

代码采用SWT库开发,请将swt.jar以及相关的系统相关库文件复制到程序的根目录

使用例子:

package XTiger.parsersys;
import XTiger.parsersys.Absyn.Print;
import net.csksoft.PrettyTree.*;
public class Main {

public static void main(String argv[]) {
String filename = argv[0];
Parse myXParse = new Parse(filename);
if (myXParse.absyn !=null)
{
System.out.println("parse succeed");
System.out.println("Dump Trees");
System.out.println("Please Wait...it takes time :-)");
TreeMaker myTree=new TreeMaker();
myTree.renderToFile(myXParse.absyn,"dumpedTree.bmp",0);
System.out.println("finished");
myTree.dispose();
}
}

}

由于采用了SWT库,所以必须显式调用TreeMaker.dispose释放资源,否则将可能导致系统崩溃。

函数:renderToFile(absyn.Exp e,String destFile,int Type);

Type = 0/bmp 1/jpg 2/png

已知问题:在编译较大程序,比如queen.tig时候,由于产生的语法树图片过大会产生heap溢出异常。

[分享]Introductory Econometrics - A Modern Approach

Introductory Econometrics - A Modern Approach 作者:Wooldridge 2004版 很明显一本经济学书,为什么会发布这个东西? 主要是为gf找的,同时发现emule的版本没有目录,就收工加上了目录信息,要知道800多页的书,我是一页页翻过去的...类似了,弄了2个小时... 好了,希望没白费力气,需要的就下: ftp://FTP_visitor:visitor@ftp.csksoft.net/download/e_book/Introductory.Econometrics-A.Modern.Approach_Wooldridge(2004).rar 同时推荐2本不错的书:《皇帝新脑》和《惊人的假说》 主要涉及人工智能、意识论、生物神经学研究,甚至是神学的研究...pdf google下就能找到。因为今后自己就要朝这方面发展,所以比较在意。 对于网站第二版,由于上周电脑送修,现在已经错过任务时间片(我似乎是OS了..)。所以很抱歉的要等寒假。不过发布已是必然。接下来主要是美化和配乐,这2个我喜欢~

通知:将取消blog背景音乐或?

为了认真贯彻文化部不久前出台的《文化部关于网络音乐发展和管理的若干意见》(http://www.cnbeta.com/modules.php?name=News&file=article&mode=flat&sid=19311)本blog将取消背景音乐,毕竟每首音乐备案太麻烦,而且老弟的音乐还要去文化部审批,555,没时间

今后可能会取消背景音乐或者放些红色经典:-P

各位在space、blog放置音乐的也要注意拉,每首歌都要去备案的!

[独家]三星M40 plus拆机照片

注意:我放出照片并不是鼓励大家去拆机,毕竟本本是高精密设备,如果操作不当将造成不可预计后果,对此造成的损失作者概不负责!

在放出图片前不妨耐心听我说些话:

前天本本1394接口接触不良,明显是虚焊了,不知自己是不是脑子昏了,就拆开了打算自己修复,因为之前有过修复本本耳机插座虚焊的经历,所以这次特别胆大,把能拆得几乎都拆了。

为此付出的后果是:可能为静电击穿,本本主板烧毁。即将发布的第二版网站也只能暂停。我为此痛苦了2天,原本是想发哀悼文章的,不过今天送修时候,维修人员并没发现我拆机的迹象,所以很爽快地答应了保修承诺。不过还是造成了巨大损失。

这些照片原本是我在修复完成后作为纪念地,现在只能给我带来遗憾了。不过考虑到网上还没如何拆本本的教程,而且m40 plus也没人发过拆机图,所以就把一些图片放出来,附上简短说明。如果需要高清晰版本可以单独问我要。不过再重申一遍:这不是鼓励大家去拆。

N0.1

首先将地板标有KBD的螺丝年、去除,这样可以把键盘拆下,小心别弄断键盘的排线

N0.2

屏幕和地板转轴的外壳可以取下

N0.3

原本以为是屏幕的供电线路,结果发现是无线网卡的2根天线

黑的是Main,白的是Aux

先将接口拔开,如下图

N0.4

是屏蔽线,不过事实上屏蔽层和中轴线是断接的~浪费。

一定要先把接头拔开,否则就容易把这2根线弄断,后面有照片

N0.5

屏幕转轴另一侧才是视频信号和电源排线。将其拔开,整个屏幕面板便可拆下

N0.6

底板上表面拆除了,便能看到主板

N0.7

给intel855芯片来了个特写

N0.8

底板上表面的背面,有触摸板和指示灯排线

N0.9

拆下的屏幕

N0.10

前面那2根无线网天线是进入屏幕的,而又被我弄断,所以无奈继续拆

N0.11

液晶面板的背面,那个长的PCB板应该是背光灯管的高压驱动电路

N0.12

弄断的天线~

N0.13

屏幕背面,那2根天线原来装在屏幕顶上

 

好了,就这些了,看了这些还是心痛不已,不知能不能修好...我的网站又要遥遥无期了。尝试用台式机开发

6天,一年零四个月,写在发布之前

预计离第二个Flash网站发布还剩下:6天

从该版本网站即后台的支撑系统ReformCore概念提出开始编写至今:一年又4个月(2005.7开工)

网站flash文件以及后台的ReformCore提供的API及各类method:近2000个

随着puXos和本地puXos缓存系统的完成,终于可以进行比较实际的网站开发了。

这个项目自从其开始起步到现在并没有一凡丰顺过。前前后后几乎4次因为学习或工作生活等方面原因停工又复工(可以参见以往的一些文章)。因此一直拖延至今才终于有了明确的完成期限。

在这段时间里面,这个项目一直成为我的一个心病,虽然有过想放弃开发的念头,不过还是坚持下来了...

严格的说,这1年多时间并不是花在做一个flash网站上面,因为按照目前编写的代码量来算,将来这个flash site V2真正展现在浏览者面前以及后台默默执行的部分估计只有30-40%。

主要原因是我从一开始就提过自己在做的是reformCore。他不是一个网站,而是一个属于我自己的平台系统。

目前包括的组件有:

服务端:

基本的安全函数,包括登陆验证,令牌管理,权限管理,反注入检测

基本的运行支持函数,如对各类底层对象的封装类,加密算法,邮件投递函数,动态插件库

环境监测函数,包括ip段识别,客户端授权认证

通讯组件,ReformPost RPC系统,puXos的reformPost前端

数据服务,puXos系统,用于puXos树形结构的uid管理器,以及各自的缓存系统

flash客户端:

ReformUI界面系统,组件包括:

XWindow,UIHost,TxtHolder,ScrollBar,progressBar,FlatButton,dragbar,LinkBtn,

PicSlider,TextTab,BlockView,ListView,tooltip,MessengBox

基本上是实现了一个windows的窗口环境,不过只是存在于flash中而已

ReformCore的客户终端

包括reformPost的事务化抽象管理器,本地令牌管理,puXos客户端以及数据缓存

本地Flash环境监测函数,包括浏览器历史监测,本地数据连接

Flash插件管理器及本地逻辑服务管理

音效管理

ReformScript解析器

基于ReformUI的网站组件,包括:BlockSys,MenuSys,LayoutMgr,ListView,BlockView,FlatView,ViewMgr

目前还在编写的部分是:Flash网站的版面插件以及音效管理器。

以前预计进度的时候是以每完成一个组件为1-2 %计算的

可能有人会问花了那么大力气作这个东西可能没有意义,这样说也对,毕竟这个网站做好了也不可能是盈利的,将来也只是作为我的个人网站,的确有点自娱自乐的目的。

我也曾经质问过自己,不过现在有一点是明确:经历了这个过程,也算是一种修行吧。毕竟那些组建是具有无限的扩充可能的,也为我积累了丰富的代码库。

好了,就当是我自言自语,毕竟这是我一个人做过的最大的项目了,经历了那么久,现在觉得很激动。

祈求上帝能让我安心的度过那最后一周的开发时间,了却这桩心事~

网站发布后我会编写一本函数参考手册,毕竟网站也是个编译器,呵呵,你可以在网站中修改或者增加些功能来

最后附上目前的一张截图:

(我将来的打算开发网站所有源文件,在必要的时刻,不过我不想看到自己的东西非法的遭受侵权)

Click To View Org Size

推荐大家看下《寂静之城》

一部科幻小说:《寂静之城

或许里我们已经不远了,呵呵

今天FTP服务器要搬迁~

收到服务商通知,今天ftp.csksoft.net服务器搬迁,目前已经修改了DNS解析,估计到明天前我网站ftp访问会中断,如果正巧有需要从我网站下载资料的朋友请耐心等待会 或者可以联系我本人~
分页:[«]12[13][14][15][16][17][18][19][20][21][22][23][24][25][26][»]

日历

<< 2015-6 >>

Sun

Mon

Tue

Wed

Thu

Fri

Sat

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

Copyright Shikai Chen 2000-2012. Powered By Z-Blog(CSK Modified)