Author Archives: Claud

OpenBTS基站硬件清单

OpenBTS基站需要的硬件包括:

1. 一块USRP 1主板,及其USB电缆、电源;

2. 一块或两个RFX 1800子板;

3. 一个或两个VERT900天线;

4. 一块52MHz时钟板;

5. 一个SIM卡读写器;

6. 多张空白SIM卡。

国内几乎只有一套方案……

想做个论文和代码阅读评论分享的Web系统

类似于http://djangobook.py3k.cn/这本书的系统,用来开放性地一起读代码和论文,然后在任意位置加评论、批注和笔记。

这样的web系统应该是没有现成的,其实如果google code/github/google book能加上这个功能就好了。

不会web开发,不知道怎么下手,也没有持续做下去的劲。如果有人有类似的想法,倒是愿意加入。

乐土不再:评《黑客》

Hackers: Heroes of the Computer Revolution这本书很早以前就有了,但是在对Hackers and Painters和Coders at Work失望以后,一直没有打算读一读它。直到出了中文版,买了一本来翻一翻,于是大呼万幸。

这是一本极好的书。它没有掺杂个人意志,作者只是站在旁观者的角度去描述那一段史诗般的岁月——而那些时光已经完全被现在的人所遗忘。阅读的过程就是不断震撼的过程,看那些纯粹的人不断地创造历史和挑战自我,仿佛可以呼吸到MIT科技广场大楼9楼的那种嘈杂的空气。

然而这样的场景、这样的人已经很难再有了。为什么无法重现?这是我一直在思考的问题。结果是:外因——钱、内因——复杂。

无论多么崇高脱俗,也不得不承认钱是重要的东西,至少需要用它维持生计(当年有个人为了不被国防部门调去用IBM的烂机器,不得不想办法搞到3K刀付了违约金,然后继续开心地用PDP-1)。当年ARPA为目的不明的基础研究源源不断地支付大笔的费用,仅仅是为了将来国防上需要用到什么的时候,能从这些支助项目里找出一些可用的技术来。赞美你,纯洁的国防部……这些费用支撑起9楼,让这群hackers能无忧无虑地玩spacewar。

然而,慢慢地ARPA开始现实起来,不再撒钱。这成了衰落的最初原因。

随着技术和产业的发展,以及计算机的普及(又是hackers的功劳),也有人发现了其中蕴含的大量商机。这些人包括:内部的、外部的、恶意的。

最典型的内部的例子是Symbolics公司,这个制造了最强大的Lisp机器的企业,不但从MIT分化成为纯商业公司,还不断地从9楼挖人。正好这些人很难拿到ARPA的资助了,于是开始进入商业的圈子。Gosper,这个领袖,就走了这样的道路。而现在,他一边做独立咨询的工作,一边继续玩数学、分形和Game of Life,从未磨灭的兴趣再也无法支撑自己的生活,让人唏嘘不已。

最典型的外部的例子是Microsoft公司,完全不用多说。Gates打破了hackers最优秀的传统和约定,推动法律将代码保护起来并直接卖钱。这一产业开始形成,一方面大量的人发现赚钱是如此容易,另一方面自由交流带来的损失会如此巨大。Gates说他自己是真正的hacker,显然他没读过这本书。

恶意获利的例子来得最晚。最早的恶意代码和恶意攻击都是圈子里的人在展现自己无所不能(就像在9楼做的事一样),甚至第一个rootkit就是Ken Thompson公布出来的。直到八十年代末才出现ransom类的木马,加密了文件以后敲诈受害者,而大规模的获利性攻击直到九十年代中期才出现。无论如何,这些恶意的获利者进一步促使了技术的封闭——虽然这种认为不被人知道就安全了的想法不怎么正确。

接下来看内因。系统的不断复杂使得后来的人很难具有第一代hacker的能力了。

最早,hackers对硬件、系统(哦,操作系统就是他们写出来的)、软件(软件也是他们写的,工具链也是他们写的……)有着无与伦比地了解。主要原因应该是本质地简单。TX-0的操作数前2位指示指令类型,也就意味着它只有4条指令——搞x86开发的人看到这句话一定是泪流满面的。PDP-1也不怎么复杂,而PDP-6干脆就是根据他们的需求设计出来的。为了减少指令,这群人甚至拆开机器,接上几个元件,就给它增加了一条指令——这一切只花了一个晚上。这真是乐土。

不到五十年,一切都变了。再也找不到一个对硬件、操作系统、编译器/汇编器、软件、人工智能都熟练的人。这是任何一种知识发展的必然(最经典的,Poincaré之后,再无全能的数学大师),但也够让人悲哀的。

不仅如此,现在的一切都被封装得妥妥当当。做开发的人再也不许要了解硬件,甚至连内存和CPU都不需要了解,更不会去管指令的手工优化。还有谁会在没有上机时间的情况下把代码写到纸上,精雕细琢?还有谁在现有工具用起来不舒服的时候,自己从头再去写一个?恐怕大部分人连什么是“不舒服”都不清楚,而会去评价并换另一个工具的人反而成为了牛人。

无论如何,复杂+对复杂的透明封装,一方面带来了方便,但另一方面又让人失去了什么。可以赞美这种伟大的现状,但也能从中回想到一些被集体遗忘的东西。

随便的一点想法

技术分为两种:非对抗性的,对抗性的。

其实很少有人会这么分,因为绝大部分属于前者。但这是我觉得反病毒和其他技术最大的区别。AV是对抗性的,与人斗,而不是与人合作。

AV和VX在框架内角逐,依靠对环境的理解、个人的智慧、严密的逻辑思维等,不断竞争。其中的不少方法,早就已经畸形。

而最为悲哀的是,AV的终极目标早在20年前就被盖上了不可能的大印。

而其他方向则不是如此。通常是有可以明确度量的目标或者评价方法,所有人配合起来不断突破现有环境。同样发明新的方法,但往往有种阳春白雪的感觉。

萝卜白菜,各有所爱而已。被人循教,写下这些稳稳心。