必威电竞|足球世界杯竞猜平台

千年蟲
來源:互聯網

千年蟲(英文名:Millennium Bug),又叫做“計算機2000年問題”“電腦千禧年千年蟲問題”“千年危機”或“Year 2000 problem”,簡稱“Y2K”,是指在某些使用了計算機程序的智能系統(包括計算機系統、自動控制芯片等)中,由于其中的年份只使用兩位十進制數來表示,因此當系統進行(或涉及到)跨世紀的日期處理運算時(如多個日期之間的計算或比較等),就會出現錯誤的結果,進而引發各種各樣的系統功能紊亂甚至崩潰。從根本上說,千年蟲是一種程序處理日期上的bug(計算機程序故障),而非病毒。

“千年蟲”影響是巨大的,從計算機系統包括PC機的BIOS、微碼到操作系統、數據庫軟件、商用軟件和應用系統等,到與計算機和自動控制有關的電話程控交換機、銀行自動取款機、保安系統、工廠自動化系統等,乃至使用了嵌入式芯片技術的大量的電子電器、機械設備和控制系統等,都有可能受到“千年蟲”的攻擊。

2000年,據美國國務院對全球161個國家進行的調查顯示,約有80個國家面臨Y2K問題風險,這些國家在電信、能源及交通運輸產業上面臨中、高程度的風險,可能對國際貿易造成危害。針對千年蟲問題,各國紛紛采取相應舉措來防范和降低千年蟲所帶來的危害,對電力、通信和銀行等礎設施領域中的網絡和設備都進行了必要的改造和升級,同時加強各國之間的交流和合作,共同應對千年蟲問題。

概念來源

“千年蟲”這一概念,來源于英文Milennium Bug。Millennium,是“一千年”的意思,Bug意為“臭蟲”。千年蟲即指計算機程序開發中沒有注意到的漏洞和毛病,又因為這種毛病會在2000年來臨時發作,所以千年蟲問題也被稱為2000年問題。此外,由于千在國外常被簡寫為K,所以2000年問題(Year2000)在國際上也簡稱為Y2K。Y2K一詞的首創者是戴維·埃迪,首先出現在1995年6月12日的一份電子郵件中,郵件內容涉及的正是千年蟲問題。Y2K中的Y代表year,2K代表2000年(其中K代表希臘語中的Kilo,意為“千”。

問題發現

20世紀40年代,美國計算機科學家霍普女士,參與研制了“馬克一號”計算機,完成了電腦史上第一個編譯器,但由于內存資源有限又昂貴的情況,霍普為了節省內存,采用6位數來表示具體的日期,即年、月、日各兩位,這就為后來千年蟲問題的爆發留下了隱患。1960年,RobertBemer及其他47位計算機科學家預見到兩位數表示年度可能帶來的危險,開始四處奔走,呼吁用4位數表示年度。1995年,IBM承認計算機存在千年蟲問題,并向其客戶公布“及時安全過渡計劃”。

具體表現

20世紀六七十年代,受客觀技術條件的限制,為了節約存儲空間,人們在存儲具體的年份時,選擇了可節約許多存儲空間的二位數而不是四位數。雖然后來存儲器的價格降低了,但在后來新開發的一些程序中,由于開發人員思維的習慣使然,繼續沿用了二位數來表示年份,這就使得計算機無法正確辨識公元2000年及其以后的年份,如1998年即被計算機表示為98,1999年則為99,隨之而來的問題是2000年就會被計算機表示為00,即2000年將被計算機誤認為是1900年或者是一個無效數據。

公元2000年是一個閏年,許多系統和應用程序開發者忽略了這一問題,在進行系統和應用程序的開發時,沒有考慮到2000年的閏年問題,這些系統和程序不能將2000年2月29日這一天計算在內,系統將直接由2月28日過渡到3月1日。由于日期的計算錯誤,導致了一系列的計算機邏輯錯誤。

很多舊版的應用程序將特定的日期當作為特定的含義和命令,如將9/9/99或00設定為某種特殊的含義,“00”表示末知年份的資料,“99”表示永不刪除的資料,那么到了1999年9月9日和2000年,這些設定有特殊意義的程序將由于計算機邏輯上的錯誤而出現不能運行的結果。

影響

地區影響

由于受千年蟲問題嚴重影響,岡比亞政府已宣布2000年1月3日(周一)為非工作日,以暫時減輕出事機關所要承受的壓力。岡比亞爆發千年蟲問題的部門,主要集中在一些政府機構??偛吭O在華盛頓哥倫比亞特區的國際千年蟲合作中心指出,聯合國撥出資金太晚,令岡比亞未能及時修補海關和稅務局的系統。

2000年1月4日,美國廣播公司報道稱:美國國防部間諜衛星情報因“千年蟲”問題損失慘重。受“千年蟲”的影響,美國貝爾沃爾堡間諜衛星地面站的情報處理系統全部癱瘓,根本無法破譯間諜衛星傳送回來的情報。美國國防部“計算機2000年作戰中心”的電腦專家應急分隊在空軍“聯合中心”的“千年蟲”問題專家立即飛赴貝爾沃爾堡,協同那里的電腦專家一起進行系統的修復工作。兩天之后,所有的情報處理系統才恢復正常工作。

由于“千年蟲”的原因,一些海外旅游者為安全起見,紛紛放棄出遠門旅行的計劃。千年之交的凈慈寺敲鐘活動,本來有620名海外旅游者報名參加,最后只到了366人。據浙江省旅游局負責人介紹:“千年蟲”的威脅使旅游業首當其沖。據不完全統計,因“千年蟲”原因未能如期來浙江旅游的海外游客約有2500人次,占元旦期間接待量的一半。

2000年2月29日,“千年蟲”隊伍中的“閏年小蟲”在日本興風作浪:凌晨2時,因電腦不識閏2月,致使日本全國43個地方的氣象部門氣象數據出現差錯。原本京都大阪、福岡市等地沒下雨,但氣象數據卻表明上述地區分別降大雨359毫米-972毫米。

行業影響

由于醫療設備是采用計算機控制,千年蟲問題會造成醫療系統死機、設備不運轉;病人的信息出現嚴重錯誤,影響診斷,延誤治療;病例不能保留正確信息等問題。

千年蟲也給世界航空帶來了巨大影響。1999年12月31日午夜,從南、北美洲遠東、近東地區,南亞、西亞和非洲抵達英國的航班由原來的89班,削減為55班,旅客也由原來計劃的11780位減少到10385位,全世界共取消航班10980班次;停飛航線5800多條;削減航班3800個;合并航班200個。其中比較突出的是:孟加拉航空公司(BANGL ADESH)全線停飛;北歐航空公司(SAS)360架飛機多條航線停飛一天。全日空航空公司(ANA)取消航班25個。

千年蟲問題主要影響帳務系統及利息計算。主要表現為存、貸款周期計算錯誤,造成帳務混亂和資金損失,直接影響業務運轉;由于信貸客戶受千年蟲問題的影響而間接影響金融機構的信貸資產質量,導致信貸風險;如果金融機構千年蟲問題處理不當,影響到客戶利益,致使客戶對金融機構的信心減弱,引起金融動蕩和金融風險;由于千年蟲問題影響電力供應或電訊系統,使金融機構計算機系統或網絡系統無法正常運行,影響金融機構的業務處理。

千年蟲問題導致電廠自動停止操作,在某些情況下也發生電壓與頻率方面的變化,造成用戶全面停電、電器故障甚至燒毀;美國聯邦核管處更是擔心全美的百余座核電站里的儀器由于2000年間題失控造成核輻射外瀉等災難。

其他影響

“千年蟲”問題不僅影響電腦及與資訊有關的行業,還將影響商貿機構、政府部門、通訊、出版、交通運輸系統、能源供應和生產、生活設施等行業。例如:新加坡由電腦控制的300輛出租車的計價器于1999年1月1日中午停止計價達2小時;中國出現因客戶信用卡有效期跨越2000年而被銀行電腦拒付的情況,銀行對此只能采取一些變通辦法,如中國工商銀行的牡丹信用卡原本有效期為兩年,改為一年。此外,部分國家和地區出現了水電、燃油供應系統癱瘓,電梯、中央空調等機電裝置不能進行正常操作,日常產品不能及時供應居民生活等問題,這都在很大程度上影響了居民的正常生活。

解決方案

年域擴展法就是指將表示年代的信息域由后兩位擴大到全部四位數,同時將那些需要對年代進行計算和比較的信息域也擴大,此外一些相關部分也要做相應的修改。

日期重譯法又稱為“70/30”,“80/20”法。如“70/30”表示:任何大于70的數字都為20世紀,小于70的數字為21世紀,使用這種方法不改動數據,只改動源碼。程序中凡是用年代信息組進行比較計算時,都應將源碼做相應的改動。例如日期02/02/02和01/02/99,在程序未經修改時,系統將其識別為02/02/1902和01/02/1999,而采取日期重譯法,這兩組數表示的日期分別為02/02/2002和01/02/1999。

日期操縱法指在現存的年份上加上某一年數,如日期01/02/99,01/02/00和01/02/03,將所有年代數后都加上80,則日期分別為01/02/79,01/02/80和01/02/83,即將2000年問題推后20年。

增加紀元代碼法是指將原有的日期域DD/MM/YY格式改為CYYD-DD,其中DDD為YY年從第一天起計算的天數,C為紀元代碼。

應對策略

在1999年末防止千年蟲行動進入倒計時期間,IAEA(國際原子能機構)和其他國際組織以多種行動加強了他們對一些國家主管部門的援助。這些行動有助于國家主管部門確保應用核與輻射技術的設施安全運行。在向2000年過渡期間,啟動了IAEA的應急響應中心,以幫助國家主管部門和便于IAEA成員國之間進行信息交流。

中國

1998年5月,吳邦國副總理主持召開國務院專題會議,聽取信息產業部關于解決計算機2000年問題的匯報,研究具體工作措施。按照國務院的有關要求,信息產業部在成立Y2K工作小組后,會同有關部門成立了由40多名專家組成的解決計算機2000年問題專家組,對部門、行業和地方存在的共性問題進行技術指導和協調;以中國軟件評測中心、國家電子計算機質量檢測中心和中國電子技術標準化研究所為依托,建立了三個Y2K符合性測試中心,分別對計算機軟件、硬件和嵌入式芯片產品進行測試;電信、郵政、電子行業各單位在對自身計算機系統進行認真分析、評估風險的基礎上,都制定了詳細的、可操作的工作計劃和應急計劃。

日本

20世紀90年代初,日本通產省就明確規定計算機年份必須用4位數。日本在1992年以后生產的計算機基本不存在千年問題。1997年日本設立了“計算機千年問題各部委聯絡會",要求政府各部委加強合作。日本的金融界在20世紀90年代初期建立第三批計算機網絡時就注意到了千年蟲問題,提前實施了年份4位化的防范措施,后又投入了大量的資金、努力解決遺留問題;交通運輸部門完成了東航浙江公司計算機2000年問題檢測及新干線管理系統的更新和修改工作;電力、煤氣、通信等基礎設施領域中的網絡和設備也都進行了必要的改造。1999年4月9日,以日本首相小淵惠三為本部長的“高度信息通信社會推進本部”舉行顧問會議,針對千年蟲問題,要求各有關省廳對企業加強督促,特別要對電力、通信、交通等與人民生活密切相關的部門嚴格管理,要求他們依據有關法令解決千年問題,政府要給予企業以財政支援,必要時不排除強制執行的可能。此外,日本政府還向企業發布了“制定危機管理計劃手冊”,其中包括“對象業務的選定”“問題發生時的預想情景”“問題發生時的行動計劃”“緊急聯絡一覽表"等10個階段的工作。

美國

美國于1995年就有企業開始著手進行這項工作。美國聯邦政府共有33個部門涉及到Y2K問題,共有7850個重要系統必須作Y2K問題的修改,2048個地方政府必須對Y2K問題采取措施。威廉·克林頓總統在1998年初任命新的Y2K問題委員會高層官員,對Y2K問題工作進行監督管理,委員會主任負責直接向總統報告工作情況。

波蘭

1999年3月底,波蘭政府出臺了“解決2000年計算機問題國家計劃"。此舉旨在19世紀末前徹底解決2000年計算機問題或把“千年蟲”問題所造成的危害減少到最低程度。波蘭銀行系統對全系統所有計算機進行測試,將所有計算機的時鐘都調至2000年1月1日,以檢驗計算機工作是否正常,銀行系統還計劃將1999年的財政年度縮至1999年12月30日,以留出一天的應急時間。波蘭總統于1999年1月就此專門召集有關部門領導和專家研討和座談。此外,波蘭國家安全委員會與俄羅斯國家安全委員會就2000年計算機問題建立了合作關系,同時還與一些西方國家相互交流信息和經驗。

衍生概念

Y2K20

2020年,一些已經修復過“千年蟲”漏洞的系統和新安裝的系統,出現了與“千年蟲”類似的問題——這次的漏洞被稱為“Y2K20”。此后兩年,類似的漏洞時有出現,被稱為“Y2K21”“Y2K22”。類似“千年蟲”的問題之所以又會發生,是因為2000年前后用于修復“千年蟲”問題的補丁只對本世紀前20年有效。設計產品的時候,為了減少對存儲空間的占用,一些廠商會選擇“簡化問題”。有的汽車企業考慮到消費者可能在4~6年內就會換車,他們為汽車設計的計時系統可能只涵蓋了20年。例如,計時系統只涵蓋了2002~2021年,當2022年到來時,汽車的系統又只能跳回到2002年了。微軟Exchange郵箱的問題也類似。系統的周期被設置得過短,無法進入2022年,用戶在新一年的郵件便無法發送。數碼評論員黃浩告訴《新聞超鏈接》,這次出現的“Y2K22”漏洞,與2000年的“千年蟲”漏洞性質不同,是因為廠商為了節省成本而導致的故障,這不完全是軟件問題,其中還有人為的低級錯誤。

2038年問題

由于軟件代碼運行時檢測時間的方式存在一些問題,大量的計算機軟件很可能會在2038年失效。工程師在20世紀七十年代開發出世界第一款unix操作系統時,使用32位簽名整數(或數字)來代表時間。整個計時系統的起始時間是1970年1月1日。之后,UNIX系統中的時間編碼機制得到廣泛應用,它被整合到所有需要檢測時間的軟件或硬件系統之中。但是這個時間編碼機制存在一個嚴重的問題,因為這個數據是以32位存儲的,第一位是符號位,其余的31位用來存數字,而這31位數字可以存儲的最大數字為2147483647,這就是32位系統能夠顯示出的最大數字。通過計算,目前在各種軟件中廣泛應用的時間編碼機制中的這個最大值對應的時間是2038年1月19日。如果無法解決這個問題,地球上的所有計算機將在那個時刻點將時間計數“歸零”,重新從1970年1月1日算起。

相關作品

2000年,新加坡導演陳建儀導拍了電視劇《力克千年蟲》,由鄭惠玉賴興祥陳漢瑋主演,以千年蟲問題為線索展開故事敘述。

2022年,中國導演楊宇燁主導拍攝有關千年蟲問題的紀錄片《千年蟲》,片長55分鐘,于2022年3月18日上映。

相關爭議

有關千年蟲問題的爭論主要包括以下幾種:第一種觀點認為其影響巨大,因為隨著科技的飛速發展,人類對計算機的依賴性不斷增強,如果“千年蟲”發作使計算機出現問題,就可能使整個人類的社會生活、經濟生活發生混亂。水利、電力、交通、能源、金融、通訊等系統都會不同程度地受到影響。這種影響不僅存在于發達國家,也波及發展中國家。此外,還有一些從事計算機安全問題研究的專家認為:“千年蟲”使計算機出故障可能導致核武器意外發射,甚至可能導致一場核戰爭。

第二種觀點以微軟總裁比爾·蓋茨為首,他們認為“千年蟲”是計算機的小故障、小麻煩,只會暫時地使交通、通信、能源系統發生混亂。第三種觀點認為,千年蟲問題在宣傳中產生被夸大的傾向,這種觀點認為千年蟲問題主要集中在金融、商業、保險、交通等領域。而在其他領域,通常采用對計算機來說更方便和更有效的時間表示方式,計算結果通常也不依賴于日歷日期而是依賴于相對時段的長度,這些系統的計時周期與2000年無關,沒有一般意義上的千年蟲問題。

參考資料 >

“大東話安全”熱門原創文章盤點(上)丨初五.中科院之聲.2023-12-18

22年過去了,“千年蟲”漏洞為何還會出現?.央廣網.2023-12-25

..2023-12-25

..2023-12-25

..2023-12-25

..2023-12-25

..2023-12-25

..2023-12-25

22年過去了,“千年蟲”漏洞為何還會出現?.央廣網.2023-12-19

力克千年蟲 (2000).豆瓣電影.2023-12-21

千年蟲 (2022).豆瓣電影.2023-12-21

評論:談“千年蟲”要講科學.新浪科技.2023-12-29

生活家百科家居網