Re: [討論] Gmail收外部信…怎麼放心把密碼交出去呢?
講到 trust, 就不得不提一下這個很有名的故事:
故事的主角是 Ken Thompson,他是 Turing Award 得主,也是發明 C 語言和 UNIX 的
關鍵人物,目前在 Google 工作(這樣就和這個板有關了 ;-)。
這個故事是這樣的。Thompson 寫過一個很有趣的程式,是一個特別的 C compiler。如
果你對 compiler 的知識還算熟悉的話,應該知道 C 的 compiler 是可以用 C 來寫的
這是一個雞生蛋,蛋生雞的問題,不過我們的確是用 C 來寫 C compiler。
Thompson 的 compiler 之所以特別,是他在其中偷偷藏了一個 bug。UNIX 有一個程式
叫 login,它是負責核對使用者帳號和密碼的程式。Thompson 的 compiler 如果發現它
在 compile 一個 UNIX 的 login 程式時,它會在比對密碼的時候,偷偷加入一筆萬用
密碼。如此一來,用這個 compiler 產生出來的 UNIX,都會有這個「漏洞」在。你會說
這個只要檢查 compiler 的程式碼就可以發現了。沒錯,所以 Thompson 的 compiler
還有一個神奇的功能。這個 compiler 如果發現它在 compile 一個 compiler 的時候,
它會把它本身的這個「神奇功能」放到 compiler 裡頭,所以用這個 compiler compile
出來的 compiler (我知道這有點難懂 XD)也都會帶有這個神奇功能。之後,他再用
compiler 把本身自己 compile 一次後,就可以把神奇功能從程式碼裡面隱藏起來,只有
從 binary 才看的出端倪。
這會造成一個問題,就是你即使有原始碼,你也沒辦法確保你的程式是可以信任的。你
要能夠確定你的程式是可靠的,唯一的辦法就是全部從頭來。如果你把這個問題過度延
深,你就會發現你可能要從 CPU 的電晶體開始設計,才有辦法「保證」你的程式是完
全符合你的意思在執行。
所以,信任,不是見簡單的事。
喔.....我還想補一句「電腦是很危險的,你還是回去用算盤吧」...XD
p.s. 詳細的故事可以在這邊找到 http://www.acm.org/classics/sep95/
※ 引述《davidyu (davidyu)》之銘言:
: 呃...那你怎麼敢用電腦?
: 從你打密碼開始,你的密碼就經過了鍵盤,主機板,CPU,網路卡,作業系統,ISP,
: Router,等等等......你全部每一層都信任嗎?(幫助中國建立GFW的)Cisco能信任嗎?
: 邪惡大本營的M$能信任嗎?這裡面隨便有一層要偷竊你的密碼都是易如反掌。
: 我敢用,是因為我沒什麼重要的資料放在電腦上,是因為我信任這些公司。同理,你也
: 可以想想看為什麼你敢用電腦。
: ※ 引述《Aligu1009 (=.=)》之銘言:
: : 能利用Gmail收外部信
: : 再透過Gmail強大的擋垃圾信機制擋掉惱人的垃圾信當然很棒
: : 但是,為什麼各位敢把其他信箱的密碼告訴google呢?
: : 小弟我就是因為不想把其他的帳號密碼告訴google
: : 而遲遲不敢使用fetch mail功能的人啊....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 24.6.168.117
※ 編輯: davidyu 來自: 24.6.168.117 (02/24 12:23)
推
02/24 12:34, , 1F
02/24 12:34, 1F
推
02/24 12:36, , 2F
02/24 12:36, 2F
推
02/24 12:41, , 3F
02/24 12:41, 3F
推
02/24 13:06, , 4F
02/24 13:06, 4F
推
02/24 13:43, , 5F
02/24 13:43, 5F
推
02/24 17:33, , 6F
02/24 17:33, 6F
推
02/24 18:48, , 7F
02/24 18:48, 7F
推
02/24 18:50, , 8F
02/24 18:50, 8F
推
02/24 23:17, , 9F
02/24 23:17, 9F
推
02/24 23:19, , 10F
02/24 23:19, 10F
推
02/25 07:44, , 11F
02/25 07:44, 11F
推
02/25 10:27, , 12F
02/25 10:27, 12F
推
02/25 11:27, , 13F
02/25 11:27, 13F
推
02/25 13:10, , 14F
02/25 13:10, 14F
推
02/26 10:56, , 15F
02/26 10:56, 15F
推
02/28 13:21, , 16F
02/28 13:21, 16F
推
02/28 22:00, , 17F
02/28 22:00, 17F
推
03/01 20:19, , 18F
03/01 20:19, 18F
推
03/05 11:53, , 19F
03/05 11:53, 19F
※ HowLeeHi:轉錄至看板 Programming 03/09 03:14
討論串 (同標題文章)