哈希

哈希

HASH全稱是“Hash House Harriers”(簡稱“Hash"、“HHH”,或“3H”),是一項世界性的休閒活動,起源於1938年馬來西亞的吉隆坡,如今在全世界184個國家幾千個城市中都有開展,包括中國的北京、廣州、上海、深圳、烏魯木齊等城市。

基本信息

活動

哈希哈希
活動沒有固定的成員和組織,也不存在固定的模式,各個城市的具體做法各有不同,但所有的hash都有兩個共同的主題:跑步和啤酒,其參加者也因此自稱“Therunningclubwithadrinkingproblem”。經過幾十年的發展,hash活動已經超越簡單的體育鍛鍊活動,而形成了一種特色鮮明、獨具魅力的文化。
一、Hash活動崇尚一種自然健康、團結友愛、積極向上、挑戰自我的精神。
Hash中最重要的一件事就是跑步,而且是有趣味、有難度的跑步。每次活動都有一兩名參加者志願充當“兔子”(hare)的角色,事先在野外設定好錯綜複雜的路線,而自稱為獵狗(harriers)的參加者則追蹤而至,頂著烈日驕陽或淋著瓢潑大雨,尋找兔子留下的蛛絲馬跡。不論是攀山越嶺還是涉水過河,是披荊斬麻還是或踏污踩糞,只要是兔子布下的路線,獵狗們就義無反顧地一跑到底,決不偷工減料。這樣一兩個小時跑下來,不僅鍛鍊了身體,更磨鍊了意志。獵狗們在追蹤過程中,每到一個岔路口,都需要分工協作,分頭找路,才能最快地找到正確的道路。而遇上溝溝坎坎或荊棘刺叢的時候,參加者更是會伸出手來互相幫助。如果有人迷了路,他不僅會經歷一次對自己應變能力的挑戰,更將體會到同伴在尋找他的過程中表現出來的團結和友愛。
二、Hash活動體現了一種幽默、開朗、豁達而且自然隨意的生活態度。在鋼筋混凝土叢林中忙碌的現代人最需要的就是貼近自然,放鬆緊張的身心,而這也正是參加hash的人們所推崇的生活方式。
幽默可是說是全世界hash參加者的共性。他們最擅長的就是自嘲----自稱為“獵狗”,海口的hash參加者還自稱為“害蟲”,每個人有一個可笑甚至噁心的外號,比如“賣女孩的小火柴”、“肉肉”、“骯髒的魚”等等。唱歌、講故事、說笑話、相互捉弄、插科打諢……每一次hash活動都充滿歡笑和快樂。
看看沾滿泥水的跑鞋和掛滿草刺的小腿,暢飲一口冰啤酒高歌一曲,不由得豪氣頓生,早不見了辦公室里拘謹刻板的模樣。新老朋友一起在空曠的野外大聲喊叫,放肆地說笑話逗樂子,縱情地歌唱和歡笑,在音樂聲中又鬧又跳,疲倦的是軀體,而心靈得到了徹底的放鬆。
Hash活動過程中不準從事商業活動,不準打手機,不準談工作,所有參加者都以綽號互稱,遠離銅臭氣和複雜的人事關係,為純真的友誼提供了生長的環境。難怪Hash裡面許多人成了意氣相投的好朋友之後,才猛然發現原來自己連對方是做什麼生意的、有沒有結婚都不知道。
Hash活動不以營利為目的,每次活動的結餘歸入基金供大活動時支出;所有工作都由參加者齊心協力地完成;每期的兔子可以按自己的意願自由地組織一次跑步。這正是hash的魅力所在:為參加者提供一個可以盡情展現真我的機會。
正是出於對大自然的熱愛,Hash參加者們對環境保護尤為重視。空瓶空罐絕對不允許亂扔、垃圾袋必須是可降解塑膠做的、不準拈花惹草、不得踩壞莊稼、等等,這些規矩都是每一位hash參加者嚴格恪守,並在生活中也身體力行的。海口hash的參加者還曾組織過在五指山頂、牙龍灣、尖峰嶺等風景點清理垃圾的活動。
三、Hash還是一項各種文化匯集交流的活動。
Hash活動不僅僅是體育休閒活動。Hash參加者強烈的表現欲在這一寬鬆的環境中得到鼓勵和張揚。他們創造了種種個性鮮明的hash徽標,改編了上千首hash歌曲,製作了不計其數的、風格各異的T恤、帽子、杯墊,出版了大量或精美或簡陋然而同樣精彩的hash雜誌、報紙、宣傳冊,在Internet上,只要輸入“hash”或者“hhh”進行搜尋,可以發現成百上千個hash網站。可以說,hash已經有了自己的文化。參加過hash活動後,有人可能會不喜歡這種文化,可是沒有人會忘記這樣一種文化。它自有它獨特的、令人無法忘懷的風味。
在衍生出自己的文化之外,Hash活動從一開始就體現了不同文化的碰撞和交流。第一次hash跑步,就是由旅居馬來西亞的英國人組織的。世界各地的hash,吸引了各種各樣不同文化的人參加,尤其是旅居當地的外國人。這一點在英美之外的國家的hash中特別明顯。因此,hash除了帶有明顯的英美文化氣息外,還成了各種文化交匯融合的活動。像在中國的大多數hash,就成了各種外國人和中國人共同喜愛的活動,英語成為主要的交流手段,而他們的徽標、T恤設計中卻透著濃郁的中國文化氣息。Hash還是一個全球性的休閒活動,除了各地自有的hash活動,還有定期舉行的“泛亞hash”、“泛太平洋hash”等等區域性的活動,每四年還有一次“全球hash”。這種大規模的hash,更是雲集來自世界各地的愛好者,無形中也就是一次文化的盛會。Hash活動於生俱來的寬容和自由的特性,為各種不同文化背景的參加者提供了一個平等、寬鬆、隨意、自由發揮的環境。所有的參加者自由地來,自由地去,各人對各人的言行和安全負責,不論國籍、年齡、種族、膚色、職業、教育程度如何,都只是“獵狗”或者“兔子”這兩種角色之一種,以綽號相稱,甚至真名都不為人知。在“跑步”和“啤酒”這兩個主題下,參加者們徹底放下面子和成見,打破各種人為的隔閡和壁壘,真正玩到一塊兒,發展友誼,取長補短,盡情展現各自的風采。
海口的hash最早也是由外國人發起,除了旅居海口的外國人,還吸引了許多外企的白領和英語愛好者參加。後來由於愛好hash的外國人逐漸離開海口,參加海口hash的主要是中國人,其中大部分是旅居海口的內地人。Hash本身的淵源、活動形式及其精神都帶有濃厚的西方文化色彩,必然會對其參與者造成一定的影響,而中國古老的文化也給海口hash烙上獨特的印跡。
海口hash的參與者有老有少、有男有女,分別來自社會各個層面,有著不同的文化素養和人生觀。他們來參加hash,不僅面對hash本身具有的西方文化的衝擊,而且也面臨著相互間不同觀念帶來的衝突。但只要是熱愛運動和自然的人,在接受hash的同時,也就會接受hash寬容、自由的氛圍及其多姿多彩的文化,自然也就會變得更寬容、更善於理解他人。
正是由於hash具有這樣獨特的文化魅力,這項休閒活動才持續了近70年而不衰,風靡全球幾千個城市,受到各界的廣泛關注。尤其是定期舉行的跨地區的hash,比如環亞太地區的hash,或者環東南亞的hash,每次都在不同的城市舉行,對於舉辦城市來說,這無疑是當地旅遊業發展的一次良好契機。

emule概念

2002年5月13日emule誕生,隨著emule的普及,喜歡他的人也越來越多,但是由於emule對技術相應有一個門檻,不像bt那么容易上手,所以很多朋友很長時間以來一直都有這樣或那樣的疑問,今天是周末我也獻獻醜,寫一篇關於hash的文章。
大家天天都在使用emule,hash這個詞是在emule裡面出現頻率最高的,那么到底什麼是hash呢?
讓我們先來了解一些基本知識,作作預熱只有這樣才能更好的了解hash。
Hash,一般翻譯做"散列”,也有直接音譯為"哈希"的,就是把任意長度的輸入(又叫做預映射,pre-image),通過散列算法,變換成固定長度的輸出,該輸出就是散列值。這種轉換是一種壓縮映射,也就是,散列值的空間通常遠小於輸入的空間,不同的輸入可能會散列成相同的輸出,而不可能從散列值來唯一的確定輸入值。
簡單的說就是一種將任意長度的訊息壓縮到某一固定長度的訊息摘要的函式。
HASH主要用於信息安全領域中加密算法,他把一些不同長度的信息轉化成雜亂的128位的編碼里,叫做HASH值.也可以說,hash就是找到一種數據內容和數據存放地址之間的映射關係
了解了hash基本定義,就不能不提到一些著名的hash算法,MD5和SHA1可以說是目前套用最廣泛的Hash算法,而它們都是以MD4為基礎設計的。那么他們都是什麼意思呢?
這裡簡單說一下:
1)MD4
MD4(RFC1320)是MIT的RonaldL.Rivest在1990年設計的,MD是MessageDigest的縮寫。它適用在32位字長的處理器上用高速軟體實現--它是基於32位運算元的位操作來實現的。
2)MD5
MD5(RFC1321)是Rivest於1991年對MD4的改進版本。它對輸入仍以512位分組,其輸出是4個32位字的級聯,與MD4相同。MD5比MD4來得複雜,並且速度較之要慢一點,但更安全,在抗分析和抗差分方面表現更好。由於計算機運算水平的發展,可以通過大型計算機的運算採用暴力破解方式在秒級內破解MD5。
3)SHA1及其他
SHA1是由NISTNSA設計為同DSA一起使用的,它對長度小於264的輸入,產生長度為160bit的散列值,因此抗窮舉(brute-force)性更好。SHA-1設計時基於和MD4相同原理,並且模仿了該算法。
那么這些Hash算法到底有什麼用呢?
Hash算法在信息安全方面的套用主要體現在以下的3個方面:
1)檔案校驗
我們比較熟悉的校驗算法有奇偶校驗和CRC校驗,這2種校驗並沒有抗數據篡改的能力,它們一定程度上能檢測並糾正數據傳輸中的信道誤碼,但卻不能防止對數據的惡意破壞。
MD5Hash算法的"數字指紋"特性,使它成為目前套用最廣泛的一種檔案完整性校驗和(Checksum)算法,不少Unix系統有提供計算md5checksum的命令。
2)數字簽名
Hash算法也是現代密碼體系中的一個重要組成部分。由於非對稱算法的運算速度較慢,所以在數字簽名協定中,單向散列函式扮演了一個重要的角色。對Hash值,又稱"數字摘要"進行數字簽名,在統計上可以認為與對檔案本身進行數字簽名是等效的。而且這樣的協定還有其他的優點。
3)鑒權協定
如下的鑒權協定又被稱作"挑戰--認證模式:在傳輸信道是可被偵聽,但不可被篡改的情況下,這是一種簡單而安全的方法。
以上就是一些關於hash以及其相關的一些基本預備知識。那么在emule裡面他具體起到什麼作用呢?
什麼是檔案的hash值呢?
大家都知道emule是基於P2P(Peer-to-peer的縮寫,指的是點對點的意思的軟體),它採用了"多源檔案傳輸協定”(MFTP,theMultisourceFileTransferProtocol)。在協定中,定義了一系列傳輸、壓縮和打包還有積分的標準,emule對於每個檔案都有md5-hash的算法設定,這使得該檔案獨一無二,並且在整個網路上都可以追蹤得到。
MD5-Hash-檔案的數字文摘通過Hash函式計算得到。不管檔案長度如何,它的Hash函式計算結果是一個固定長度的數字。與加密算法不同,這一個Hash算法是一個不可逆的單向函式。採用安全性高的Hash算法,如MD5、SHA時,兩個不同的檔案幾乎不可能得到相同的Hash結果。因此,一旦檔案被修改,就可檢測出來。
當我們的檔案放到emule裡面進行共享發布的時候,emule會根據hash算法自動生成這個檔案的hash值,他就是這個檔案唯一的身份標誌,它包含了這個檔案的基本信息,然後把它提交到所連線的伺服器。當有他人想對這個檔案提出下載請求的時候,這個hash值可以讓他人知道他正在下載的檔案是不是就是他所想要的。尤其是在檔案的其他屬性被更改之後(如名稱等)這個值就更顯得重要。而且伺服器還提供了,這個檔案當前所在的用戶的地址,連線埠等信息,這樣emule就知道到哪裡去下載了.
一般來講我們要搜尋一個檔案,emule在得到了這個信息後,會向被添加的伺服器發出請求,要求得到有相同hash值的檔案。而伺服器則返回持有這個檔案的用戶信息。這樣我們的客戶端就可以直接的和擁有那個檔案的用戶溝通,看看是不是可以從他那裡下載所需的檔案。
對於emule中檔案的hash值是固定的,也是唯一的,它就相當於這個檔案的信息摘要,無論這個檔案在誰的機器上,他的hash值都是不變的,無論過了多長時間,這個值始終如一,當我們在進行檔案的下載上傳過程中,emule都是通過這個值來確定檔案。
那么什麼是userhash呢?
道理同上,當我們在第一次使用emule的時候,emule會自動生成一個值,這個值也是唯一的,它是我們在emule世界裡面的標誌,只要你不卸載,不刪除config,你的userhash值也就永遠不變,積分制度就是通過這個值在起作用,emule裡面的積分保存,身份識別,都是使用這個值,而和你的id和你的用戶名無關,你隨便怎么改這些東西,你的userhash值都是不變的,這也充分保證了公平性。其實他也是一個信息摘要,只不過保存的不是檔案信息,而是我們每個人的信息。
那么什麼是hash檔案呢?
我們經常在emule日誌裡面看到,emule正在hash檔案,這裡就是利用了hash算法的檔案校驗性這個功能了,文章前面已經說了一些這些功能,其實這部分是一個非常複雜的過程,在ftp,bt等軟體裡面都是用的這個基本原理,emule裡面是採用檔案分塊傳輸,這樣傳輸的每一塊都要進行對比校驗,如果錯誤則要進行重新下載,這期間這些相關信息寫入met檔案,直到整個任務完成,這個時候part檔案進行重新命名,然後使用move命令,把它傳送到incoming檔案裡面,然後met檔案自動刪除,所以我們有的時候會遇到hash檔案失敗,就是指的是met裡面的信息出了錯誤不能夠和part檔案匹配,另外有的時候開機也要瘋狂hash,有兩種情況一種是你在第一次使用,這個時候要hash提取所有檔案信息,還有一種情況就是上一次你非法關機,那么這個時候就是要進行排錯校驗了。
關於hash的算法研究,一直是信息科學裡面的一個前沿,尤其在網路技術普及的今天,他的重要性越來越突出,其實我們每天在網上進行的信息交流安全驗證,我們在使用的作業系統密鑰原理,裡面都有它的身影,特別對於那些研究信息安全有興趣的朋友,這更是一個打開信息世界的鑰匙,他在hack世界裡面也是一個研究的焦點.我是一個門外漢,利用這個周末找了一些資料,胡亂寫了一點關於hash的文章,也有不少是我自己的分析,這期間肯定還有不對的地方,還請朋友們多多指出錯誤,我拋磚引玉希望大家批評指導。

相關詞條

相關搜尋

熱門詞條

聯絡我們