作者shoshumai (筋斗雲速度變快了)
看板Programming
標題[討論] 新型態的Protocol兼FileSystem
時間Mon Feb 1 23:05:54 2016
大家好,工程師職歷近2年的7年級最末段生想和各位前輩討論一下protocol
最近因為工作關係,一會是研究unix,一會是研究blockchain的,非理工出身的我真的是
腦袋一片混亂…不過因為完全沒有理工背景,能在工作上有機會去查這些東西也是覺得滿
特別的,跟同業聊天可以裝個mania
(但終究是裝的,希望可以趕快裝滿)
然後最近在關注一個叫做「ipfs」的Open Source專案(
https://github.com/ipfs/ipfs)
他既是一個protocol,又是一個FileSystem,還可以是P2P,CDN等等
野望是取代http@@
(引用: If built right, it could complement or replace HTTP. )
其中,特別想知道的是hash collision問題
http://silverwingedseraph.net/ipfs.html
脫離數學很久,而且不太看得懂英文寫的數學,有點難想像怎樣的條件下可以自由的產生
hash而不重複。(天文數字&???)
要是真的可行,網站不需要ip的世界,乍看是滿理想的。但類同比特幣,這種無法地帶能
成為主流?
但telnet的ptt也沒有消失,說真的,網路的歷史要說也不算長
(例如說:對應IoT跟行動機器而)重建一個protocol的理想,也是有那麼些說服力
另外一個想討論的是,standard uri
https://github.com/ipfs/go-ipfs/issues/1678
文中引用了RFC 2718
2.1.2 Improper use of "//" following "<scheme>:"
我微弱的科技英語的解讀是,「scheme名 : slash slash 網址」
這個表現其實不符合美學
理由可能是其它回文討論提到的在「bridge unix and the web」上的問題
(上面這句收回。重讀一次覺得這邊沒有關聯...)
我沒寫過C, 沒經歷過UNIX-based OS林立的時代(最近有在讀跟我出生年份差不多的書)
ARPA更是不懂
這篇希望可以看看同年代的考古學生或考古上班族 and 那年代的前輩們的見解
「新時代的main protocol的可能性」
如果是肯定的話,「它該有的模樣?」
否定的話,「人為因素或技術因素?」
以上,感謝閱讀,敬請指教
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.161.166.95
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Programming/M.1454339161.A.F36.html
※ 編輯: shoshumai (106.161.166.95), 02/01/2016 23:08:35
※ 編輯: shoshumai (106.161.166.95), 02/01/2016 23:12:35
※ 編輯: shoshumai (106.161.166.95), 02/01/2016 23:50:40
1F:推 longlongint: hash 不需要真的不會重複 只需要這220.137.158.216 02/02 02:00
2F:→ longlongint: 輩子沒遇過重複就夠了220.137.158.216 02/02 02:00
3F:推 capita: 我做過幾乎一樣的研究 但你是想討論什麼? 1.171.176.23 02/02 11:00
4F:推 penut85420: double hash不夠就用triple hash啊XDD 1.167.156.26 02/02 12:24
RE: capita前輩
sorry, 夾雜了個人的煩惱,隨手用自己微薄的知識寫了這篇,文章流暢度有點差
主要想問:
(1)HTTP未來被取代的可能性?
因為我不想focus在我個人的煩惱, 所以說是與其要求一個結果, 我比較傾向於不同年代的
工程師的開放式討論
然後
(2)進一步假設, 要是想打造一個全新的, 近未來的理想的protocol,
他會是個怎樣的protocol?
當然,
(3)技術上或者人為因素ooxx的關係, http是無法取代的論點也想聽聽看
RE:longlongint前輩, penut85420前輩
hash那部分, 我的腦袋的想像是, 假設全世界用著類似的機器,(假設是有連線功能的
電燈好了, 無視使用hash的理由, 只是假設龐大數量且條件相近的機器), 在同一時間內
做類似的事情, 不會發生hash collision嗎??
P.S.我本來只是個Java工程師, 一言難盡的原因, 現在在研究這些資訊知識用詞有誤之類
的話請鞭小力一點...
※ 編輯: shoshumai (106.161.158.143), 02/02/2016 20:01:50
5F:推 penut85420: 其實我對hash實作也是感到不可思議, 61.231.61.84 02/02 22:19
6F:→ penut85420: 用過js跟ruby之類的總覺得很神奇,好 61.231.61.84 02/02 22:19
7F:→ penut85420: 像hash一輩子用不完一樣 61.231.61.84 02/02 22:19
8F:→ shoshumai: 我連高中都不是理組,怕亂用詞會有點丟106.161.166.112 02/03 00:32
9F:→ shoshumai: 臉. 我的空想是,性質極度相似的機械,106.161.166.112 02/03 00:33
10F:→ shoshumai: ,時間也相近時,產生hash時就算是random106.161.166.112 02/03 00:34
11F:→ shoshumai: 也不會重複或有所偏向嗎?why?106.161.166.112 02/03 00:34
※ 編輯: shoshumai (106.161.166.112), 02/03/2016 00:36:58
12F:推 penut85420: 即使極相似的機械,他們還是會有一個 1.167.156.26 02/03 11:46
13F:→ penut85420: 獨一無二的代碼,就像mac位址一樣 1.167.156.26 02/03 11:46
14F:推 Killercat: hash重複只有一個原因,樣本過大 59.124.251.135 02/05 10:34
15F:→ Killercat: 但是這要大到什麼程度 你可以研究一下 59.124.251.135 02/05 10:34
16F:→ Killercat: hash collision rate 59.124.251.135 02/05 10:34
18F:→ Killercat: 不重複是絕無可能的 只是看樣本多大 59.124.251.135 02/05 10:37
19F:→ Killercat: 造成的rate是「可接受的」 59.124.251.135 02/05 10:37
20F:→ Killercat: 表中的160bit就是現行的20bytes MD5 59.124.251.135 02/05 10:39
感謝各位的分享。
我不解的是,機率是一個單純的計算結果
但hash的產生的背景真的是算式那樣單純的東西嗎?
(上面這句有點難懂,但我也不知怎麼說,就是上面所說極度相似的機械)
還有一點就是,如果我們談某件事機率是0.1
但發生時也有可能是,1/10, 1/12, 1/8
會有偏差
實際上可能沒有實驗室測過天文數字級樣本
那這樣用來作為世界級分散protocol真的不會發生大問題嗎?
特別是如果ipfs可以用hash取代ip的話
某政府機關是某hash,但某hacker想出了奇招,做出一樣的hash,仿製該網頁?
但最近想想,就跟前幾例所說的相同,弄得超複雜的,也許就夠了
※ 編輯: shoshumai (106.161.162.186), 02/05/2016 22:59:33
21F:推 Killercat: 你這問題就簡單了,地球上沙子約有101.139.180.153 02/08 12:29
22F:→ Killercat: 7x10^21, 也就是說,就算數量到那麼大101.139.180.153 02/08 12:29
23F:→ Killercat: 現有160bit碰撞機率僅略大於百萬分之一101.139.180.153 02/08 12:30
24F:→ Killercat: 而160bit不夠多 可以網上加到240bit101.139.180.153 02/08 12:31
25F:→ Killercat: 反正不過30bytes,以現在網路科技來講101.139.180.153 02/08 12:31
26F:→ Killercat: 實在只是個微不足道的大小101.139.180.153 02/08 12:31