第15章 柳暗花再明(1 / 1)

賽博信徒 狂三中包F7 3289 字 2024-03-18

思索間,秦楓背著電腦包晃晃悠悠地來到公司,想了半天還是沒有一個好的方案。對方實在是過於神通廣大,就不說催眠自己說出代碼機密這種事了,就單憑人家能夠在自己對麵買一棟樓的實力,隻要他們想,就完全足夠竊取海欣公司的一切秘密。   比如說,在他們樓內安裝一套望遠鏡外加高清的監控設備,這樣無論秦楓在海欣做了什麼,他們都能夠了如指掌。   如果秦楓拉上窗簾呢?他們完全可以買通保潔阿姨,讓她每天做工的時候把窗戶打開,再趁阿姨離開的時候直接用飛的從空中通過窗戶來海欣。   那如果秦楓不在公司編程,每次要用的時候就帶個即插即走的U盤呢?他們也能神不知鬼不覺地在海欣的辦公電腦上安裝一些後門軟件,隻要秦楓一插U盤,其中的內容就會被拷貝在電腦的某個隱秘角落。   秦楓可沒自信到一定能發現這種電腦上的手腳,畢竟一來他的專業並不是軟件破解這一塊,對後門這種東西完全不熟悉;二來他的水平也絕對不是頂尖,在對方的財力下,秦楓完全沒有把握能夠發現對方的後門。   那假如秦楓每次用完U盤就把電腦硬盤也一並帶走呢?沒用的,對方的後門軟件完全可以做到第一時間把秦楓U盤的內容發給對方的私人郵箱。理論上來說,斷網倒不失為一種方法,然而秦楓開發的程序又必須依托網絡才能運行。隻要鏈接互聯網的那一瞬間,秦楓的程序就會第一時間暴露給對麵。   當然,以上全是秦楓的猜想,不過依舊極有可能。麵對如此龐然巨物,無論出現什麼事情,都是有可能發生的。   秦楓越想越苦惱,索性扯了個文件夾往臉上一蓋,向後一仰半躺在了工學椅上。   就在這時,王海走了過來:“哎喲我去,這是誰呀大白天擱這享福呢?喲,原來是楓哥!不是我說,這可不像您啊,咱可都還在苦哈哈地上班呢,您老人家這是要乾嘛呀?光天化日朗朗乾坤的,這是要用您寧折不彎的態度,來表達自己不向金錢低頭、不為五鬥米折腰的誌向呀?小陸,像楓哥這種人,用你們家鄉話怎麼說來著?”   “用窩們那兒的話來嗦,楓哥這種人,那就是懶兮兮,兮兮賴賴的樣子嘛,要不得!”陸白軟聲軟氣地飆了一句三豎方言,語氣溫柔的同時又帶著一絲憨氣。   “隨你們怎麼說,我先瞇一會!”仿佛抗議似的,秦楓還在椅子上翻了個身子。   閉上雙眼,陸白的話像音樂一樣不停地在耳邊回響:“楓哥這種人,那就是懶兮兮……”   突然,一道靈感如閃電般擊中了秦楓腦海!   秦楓猛地從椅子上挺起,大喊一聲:“我知道了!謝謝你小白!”說著便不顧三七二十一給了陸白一個大大的擁抱。   陸白簡直是被秦楓搞得當場愣在原地,大腦一片空白,半天都做不出一點動作。好不容易反應過來之後,她的耳根刷得一下地紅了,趕忙端起一杯水咽下,害羞地縮到電腦後麵,又悄咪咪抬起一點頭透過屏幕的反射去看秦楓。   “哎呀我去,楓哥您知道什麼了,瞧給人家小姑娘嚇得,這給人家來這麼一下可不輕啊。”   陸白聞言,又被水嗆了一波。   “去去去,別管我,你們忙你們的。我這裡走不開,也沒你們的事,該乾嘛乾嘛去!”   秦楓知道什麼了?他想到了保護自己代碼的辦法。   那就是,用一門自創的編程語言來重寫程序!   既然自己的代碼和開發過程無論如何都無法保密,都會被看光,那就讓他們看!隻要這個世界上除了自己,沒人能看得懂自己的代碼,那麼自己就是絕對安全的!   三流程序員要保住飯碗,靠的是寫屎山,讓無數冗雜沉寂在程序裡,動了一點就馬上崩盤;   二流程序員要保住飯碗,靠的是寫bug,隻要刻意留下一個除了自己沒人能解決的bug,甚至出現那種“同樣的程序,在別人的電腦上跑不通,在程序員自己的電腦上就跑的通”的情況,這下,公司怎麼敢讓程序員離職?   一流程序員要保住飯碗,靠的是一門冷門的語言。就像傳說中的保羅·格雷厄姆那樣,使用一門冷門的Lisp語言,直接奠定了自己乃至整個產品在業界無可替代的優勢和地位,甚至影響後續諸多創業者的選擇。   秦楓要做的,就是對那位保羅·格雷厄姆的模仿。雖然說,一門好的編程語言,離不開一個開放、交流的社區論壇,但是秦楓的目的並不是為了實用或者好用,而是保密,隻要能用就行了。   實在不行,拿記事本敲0101的二進製指令也不是不可以。   所謂二進製指令和編程語言的關係,就是說人話與說機器話的區別。   機器實際上沒有所謂的智慧,隻能通過0和1模擬電路的開關,通過一係列01的操作來達到種種目的。往往編程語言裡幾個很簡單的字母,背後就是幾百個01的操作。找書苑 www.zhaoshuyuan.com   所謂編程語言,就是把人話翻譯成機器語言的一套指令,這個單詞對應幾百個01如此這般排列,那個單詞又對應另外幾百個01的另一種排列。   哪怕不用編程語言,在不計較效率的情況下,程序員也是可以做到隻靠0和1就完成編程的。隻不過往往一小段編程語言的代碼,其背後的0和1的數量大概可以寫滿一整個本子。   秦楓顯然並不打算這樣,他要的是加密。單純用0和1來編程的話,其實就跟把代碼脫光了給人看沒什麼太大的區別,唯一的區別就是代碼的數量太大了,有心人一時半會可能看不完。但即便如此,秦楓自己也寫不完。   ……   花了小半天時間,秦楓用網上搜來的加密方法把要用到的二進製指令加密成了一套新的匯編語言,又把這套匯編語言再加密,形成了新的編程語言。打個比方,傳統的加法指令,二進製下的表示方法是00000011,其匯編語言是“ADD“,在秦楓的語言裡,就不是“ADD“而是先把“ADD”轉成編碼下的“?”,再取“?”的異體字“?”的UTF-32碼,把“?”轉換成“0000441D“。   然後用“0000441D“來表示機器的00000011,這就是秦楓的編碼操作。   秦楓逆向試了一遍,0000441D連之前的?字都無法逆向轉換,更不要提?再轉換成ADD了。   凡此種種不再贅述。   怎麼說呢,雖然略顯簡陋,但是暫時應付一兩個月還是問題不大的。