“我就知道你狗嘴里吐不出象牙。”
饱餐了一顿烤鱼和咖喱饭后,我们驱车来到西土城附近的CERT。这个机构的办公地点坐落在僻静小巷的尽头,独栋的灰色玻璃大楼里透出的灯光在寂静的夜色中给人一种很威严的感觉,它的全称其实是“国家计算机网络应急技术处理协调中心”,是信息产业部直属的计算机安全事件应急小组。在这里工作的技术人员很多都可以称得上是IT领域的权威。
我们在宽敞的大厅办理了登记手续以后,乘电梯来到中心的五楼,在那里等待我们的是一位年轻的工程师,秦思伟称他为丁博士。
“要找到邮件发送的地址并不是很难。”丁博士一边敲打着键盘,一边给我们解释,“我要先找到发送这个邮件的IP地址,也就是逻辑地址,然后再进一步确定它的物理地址,这需要一点时间。”
“那就拜托您了。”秦思伟专注地看着他的一举一动,“我今天下午让人送来的那台计算机您检查过了吗?”
“我正要跟你说这件事。”丁博士站起身,走到机房的尽头,那里并排摆放着两台单机,“我发现新送来的那台机器上也有一个security文件夹,不知道是不是同样的内容,只是不知道他们用什么算法加的密,我只能用穷举来解码,这恐怕就要很长的时间了。还有,彭勃给你发的图片,正好是姚锐电脑的桌面。”
“难道说,图片里真的有什么玄机吗?”我盯着屏幕上那只憨厚得一塌糊涂的小猫,“这个图片其实除了有点偏大,没什么特别之处啊。”
“偏大?怎么偏大了?”丁博士问我,“这图片就是普通的1024×768啊。”
“我是说一般的1024×768的bmp格式文件,大小都在2MB左右的,这幅图却有3MB——我跟我收集的图片比较过了。而且,bmp格式……为什么是bmp呢?用jpg不是能节省一些空间吗?效果也没什么区别……”
“也许问题就在这里!”丁博士似乎恍然大悟,“这幅图片里也许隐含着文件。”
“您是说,这是用伪装加密软件处理过的图片?”我也突然明白了,“不过因为加密时有些疏忽,导致了图片占用空间偏大了。”
“伪装加密?”秦思伟疑惑地看着我,“能具体说说吗?”
“现在有一些软件可以把文件隐藏在bmp图片中。这样,利用人们的思维定式,就可以确保文件的安全。”
“为什么一定是bmp呢?”
“伪装加密需要将一个文件隐藏在一张图片中,所以必须要求图片中有可供存放文件的位置。有一点常识的人都知道,几MB的bmp文件之所以能被压缩为几百KB的jpg文件,就因为bmp格式没有压缩,在它里面有大量的冗余字符,而这个特点正是伪装加密软件所需要的,这样,只需对图片进行轻微压缩,就能顺利地将文件放入图片中,而jpg图片因为压缩比太高,就不大可能完成这个工作了。”
“原来如此,那我们能解密吗?”秦思伟着急地追问。
“当然没问题。”丁博士轻快地点击着鼠标,“我估计他是用z-file或者hideinpicture做的伪装加密,这些软件的特点是,图片的质量不会受影响,但是占用空间会变大。它们用的是128位Blowfish算法,用我编的软件很快就可以破解。”
解密只用了几分钟时间,我们眼前出现一串数字:
10—19—9—1—5—3—19—22—19—8—20—5—21—18—19—4
“果然是密码!”秦思伟乐不可支地说,“快试试看!”
丁博士把数字串输入电脑,结果却是密码错误。我们又尝试着把数字之间的横杠去掉,但还是不对。
“其实,把数字提取出来的话,一共16个,正好可以写成一个4×4矩阵。这是常用的恺撒矩阵。”丁博士一边说,一边在一张白纸上写下:
101991
531922
198205
2118194
“把这个矩阵做置换,就得到另一个矩阵,也就得到了新的数字组合。”他继续演算:
1051921
193818
9192019
12254
得到一个新的数字串10—5—19—21—19—3—8—18—9—19—20—19—1—22—5—4
但是我们把它输入电脑,还是提示密码错误。
“密码不一定非得是数字吧?”我发现了一个问题,“字母和符号都可以作密码,而且这些数字都是26以内的,会不会是字母密码?”
“你是说1=a,2=b……”秦思伟皱起眉头,“那么原先那串数字就应该换算成jsiaecsvshteursd,对吧?”
可是这个字符串仍然不是我们想要的密码。