超腦黑客 第六百一十三章 最危險和最安全
竟然是essi給自己的郵件?
林鴻看了一下電子郵件地址,從地址中並不能看出什麼,但是對方在末尾附上了這麼一個簽名是什麼意思?
是essi本人?亦或是別人惡搞?
看著對方所提出的這個問題,想來想去,林鴻最終覺得是真實的essi的可能性比較大一點。
essi,網絡中的神秘黑客,著名破解組織core的創始人。
當初,廣永元跟他說,他推測essi很可能是個華人,也不知道是不是真的。
他們所在的這個討論組,是一個秘密討論組,發信的時候都通過pgp軟件進行加密,然後再對外發送,也就是說,林鴻就算想查,也不是那麼容易能夠查得到。
當然,林鴻也並不是非得將所有人都查清楚,對方向自己私底下提出了這麼一個問題,並且表明了自己的身份,很顯然是非常友善的。
從這點就可以看得出來,這個essi對比特幣也很看好,並不想其他人也這麼早就知道這個缺陷。
這個51%攻擊漏洞,從理論上來說,是一直存在的,但是,實際情況可能就有些不同了。
剛開始比特幣剛剛發展的時候,可能整個網絡的計算力還比較小,隨便一太配置比較強大的機器可能就能佔據51%的運算力,可是這畢竟是分布式的網絡,等參與這個項目的人越來越多,接入這個網絡的計算機越來越多的時候,再想佔據51%的運算力可就不是一件容易的事情了。因為,到了那個時候,就是一一人之力和全世界所有的比特幣參與者相抗衡。
也就是說,比特幣越發展就越安全,到了一定的數量級,就算是政府想用超級計算機來抗衡都可能不行了。
林鴻在自己的房間里面踱來踱去,思考著解決方案。
很可惜的是。最終他發現這個問題無解,只能希望比特幣一路發展順利,前期不會遇到這樣的瘋狂人士。
林鴻重新坐回電腦前,給essi回了一封信。
“essi,久仰大名,來信已閱。你說到的這個問題確實存在,可惜的是,目前暫時未想到什麼好的解決方案。不過。你也知道,這個問題應該只會存在于比特幣發展的前期,後期這個漏洞將不復存在。感謝你的提醒,另外,如果有什麼好的提議,還請多多告知。保持聯系,ghoster致敬。”
這是一個無解的問題,林鴻只能將其放到一邊。
比特幣的設計,是他目前能夠找到的唯一的一個可以完美地解決以往那些電子貨幣所有缺陷的方案。他絕對不可能就這樣放棄。
林鴻繼續編寫比特幣軟件。
p2p軟件有個特點,即客戶端和服務器端集為一體,既可以下載數據。又可以充當服務器,給其他人提供服務。
有了比特信使的經驗,他編寫比特幣軟件的速度很快。
前期的理論架構早已構想清楚,現在只不過是對這個理論實踐,是一個水到渠成的過程。
編寫這個軟件,基本上只花費了大概五六個小時的時間,但是調試花的時間卻不短。
之前已經很久沒有睡覺,林鴻編寫好雛形之後,便休息了一晚。將身體給調整了過來,然後再花了半天的時間進行調試。
比特幣客戶端測試版正式出爐!
這是一個值得紀念的日子。
這個比特幣客戶端,其實就相當于是一個電子貨幣的錢包軟件,可以使用這個軟件發送和接收比特幣,驗證交易的合法性。對外廣播交易數據,以及下載和保存整個比特幣網絡中所有的交易。
不過,現在軟件剛剛出來,比特幣網絡中還只有他本身一個節點,並且里面根本沒有任何地交易數據。
接著。林鴻編寫了一個簡單的挖礦軟件,按照挖礦的算法機制,使用cpu對數據區塊的頭部進行計算,最終挖掘出比特幣來。
由于是剛開始,挖礦的難度直接為1,也就是說,只要開動電腦,非常容易就可以挖到比特幣。
林鴻心情激動地啟動了挖礦測試程序,軟件中的數字不斷上漲,進度條很快便從零漲到了一百。
第一個比特幣區塊產生了!被後來者一直惦記著的“創世紀塊”誕生了!
這種區塊,被後來的礦工們親切地稱之為“比特幣金塊”。,按照比特幣的設計原則,在第一個四年里,一個“金塊”的比特幣數量是五十個。
林鴻的比特幣客戶端中顯示數目的地方從零變為了五十,而整個比特幣網絡中,也出現了第一條交易記錄,這條記錄是挖礦記錄,出現了第一個被打包的數據塊,如果仔細對這個數據塊進行分析,會發現,這個里面記錄了這個比特幣所誕生的一些詳細信息,例如區塊id、哈希值、難度、創建時間、傳輸次數(交易次數)、比特幣數量,區塊大小……等等。
林鴻一邊使用挖礦程序繼續挖著比特幣,一邊則對這兩個軟件進行調試。
他這個時候的挖礦難度為1,又沒有其他人跟他競爭,正是最容易挖礦的時候,只要開動機器,基本上都能挖到比特幣,而且一次就是一個區塊,有五十個比特幣。
他一邊挖,一邊開始改進自己當初的設計方案,為其添加一些細節作為補充,讓比特幣更為合理。
挖礦實際上就是不斷破解區塊頭部的哈希值的計算的過程,需要佔用大量的cpu周期時間,每次挖礦,cpu基本上都是滿負荷地在運轉,也需要消耗大量的電能,林鴻挖了幾天,家里的電表蹭蹭地往上跳動著,電費消耗不少。
實際上,這也是林鴻在這個設計中的巧妙之處。
任何太容易得到的東西都不會有多珍貴,他深知這一點,所以才這樣設計,要想挖到比特幣,必須花費大量的機器運算力在其中,這就是消耗資源。
這個情況,就如同現實生活中的挖礦一樣,想要挖到金礦銀礦,就必須花費人工和時間,才能置換相應的回報。
在計算機中,資源就是電腦的計算能力,目前是指cpu的運算時間周期。必須消耗一定的運算力和時間,才能挖到比特幣,並且,隨著挖礦難度的上升,這個時間也會相應延長。
林鴻這段時間里,將全部的心神都投入到了比特幣的開發當中,公司那邊的事情,暫時又交給了張瑾。好在他前陣子將公司的事情安排妥當,暫時離開也沒有什麼事情。
八天之後,林鴻終于決定要將比特幣客戶端和挖礦程序完善得差不多了,他便將其整理為v0.1版,然後在這個秘密的郵件列表中發布了。
在這段時間里,有關比特幣的討論就沒有停止過。
可以說,這個郵件列表自從創建起來,就從來沒有如此熱鬧過。
有人繼續討論有關比特幣的原理,探索細節,畢竟在那篇論文當中,林鴻只是寫了大概的理論,細節並沒有過多談到。
有人則在構想比特幣誕生之後,將會對社會產生什麼樣的影響。
還有人,則一直在催促ghoster,詢問有關軟件實現的進度,甚至還有不少人表示,願意當義工,盡一份自己的力量。
當林鴻將v0.1版發布之後,大家立刻在第一時間將附件中的種子下載下來,然後通過比特信使的文件下載功能立刻下載。
大家實在沒有想到,ghoster竟然這麼快就將第一個版本給實現出來了,由此可見,ghoster不但理論了得,還精通編程,是個實干家。
軟件其實很簡單,關鍵在于軟件當中所實現的機制。
和客戶端一起開放的,還有源代碼,考慮到保密的問題,林鴻暫時並沒有提供linx版本的,而只是提供了windows和linux這兩個平台的源代碼版本。
就這樣,比特幣網絡中擁有了第一批的用戶,他們在自己的電腦中開動挖礦程序,開沒日沒夜地挖著,為比特幣網絡貢獻自己的計算力,同時也獲得比特幣。
有了大家的加入,比特幣網絡中的數據也開始有了變化,首先最為明顯的,就是難度開始增長,不再像之前那麼容易,但相對說來,還是挺容易的。
就像是一個新發現的金礦一樣,新入者肯定可以很容易就賺到錢。
在比特幣客戶端發布的第二天,比特幣網絡中便產生了第一筆交易,這是林鴻發送給essi的交易,總數為100個比特幣。
和比特信使類似,比特幣的公鑰和私鑰地址,都是一連串的加密字符,公鑰即收款地址,這一串長達34位的字符是獨一無二的,並且同一個錢包,理論上是可以生成無數個地址的。
也就是說,如果當心經常使用某個賬號收款容易暴露自己的身份,則可以直接另外生成一個新的,同樣可以收到比特幣。
就這樣,比特幣這種被後來的人們稱之為“最危險”和“最安全”的電子貨幣邁出了小小的一步,也是非常重要的一步。
|