蜜桃av色欲a片精品一区,麻豆aⅴ精品无码一区二区,亚洲人成网站在线播放影院在线,亚洲 素人 字幕 在线 最新

微立頂科技

新聞資訊

創(chuàng)新 服務 價值

  Damus: Nostr的新面具

發(fā)布日期:2023/2/3 13:46:31      瀏覽量:

轉自知乎https://zhuanlan.zhihu.com/p/603069814?utm_campaign=shareopn&utm_medium=social&utm_oi=40997237030912&utm_psn=1604813186426896384&utm_source=wechat_session&s_r=0

如有侵權請聯(lián)系我們刪除

起源

前天,一個叫Jack的人發(fā)布了一條Twitter,燃爆了整個Web3的朋友圈,讓一款叫做Damus的應用出盡了風頭。


Jack的那條Twitter

這個Jack,當然不是泰坦尼克號里面You jump, I jump的Jack。

不過依然是個非常有名的人,Jack,全名Jack Dorsey,Twitter創(chuàng)始人,可以說是是在馬斯克之前,對Twitter影響最深的人之一。

這也是這款應用習慣性地被人稱作去中心化Twitter的原因,當然了,擁有和類似Twitter的Post功能也是原因之一,就像下圖一樣。

話說如果是王志東搞的話也許就會被叫做去中心化新浪微博了。


發(fā)了一條去中心化的推

PS. 題外話,不要問我什么是Twitter,怎么能夠看到Twitter?。?!我不是,我沒有,別瞎說,我什么都沒用過,這屬于我有一個朋友系列。

Jack和Nostr——Damus背后的他和它

好了,扯遠了,言歸正傳。下面,我們拆解下Damus到底是何方神圣。

其實嚴格來說,Damus只是一個殼而已,這款產(chǎn)品真正的內(nèi)核是Nostr,全稱Notes and Other Stuff Transmitted by Relays,英文不好的也不用在意這些細節(jié),只用知道,這是一個開源的通訊協(xié)議,主要功能包括了POST(類似于發(fā)推),私信和群聊,都是社交軟件常見的功能。

而Damus,可以簡單的理解為是這個協(xié)議在的蘋果系統(tǒng)上的一個操作界面,事實上,它還有好多分身,比如在安卓系統(tǒng)上叫做Amethyst,在網(wǎng)頁端叫做astral等等。

我為什么會知道這么多,很明顯因為我是一個沒有擁有蘋果三件套的可憐的Boy.

事實上,考慮到Nostr協(xié)議是開源的,任何人都可以基于它來開發(fā)一套自己的操作界面,并命為自己喜歡的名字。

另外,和在Twitter不一樣,Jack在Nostr的身份并不是創(chuàng)始人,而是捐贈者,至少表面上是這樣的。

迄今為止,他總共捐贈了14個比特幣。

除了捐錢之外,Jack還義無反顧的擔當起了CMO的角色,不遺余力的推廣Nostr。

這到底是因為對去中心化信念的追求,還是對馬斯克的“奪推之恨”的報復,這就不得而知了。

Nostr的魅力在哪里

如果只是單純的看功能,那么Nostr簡直可以說是乏善可陳,剛才提到的幾個功能在互聯(lián)網(wǎng)界都是陳芝麻爛谷子了。

在它的幾個客戶端里面,Damus算是做的不錯的了,功能和界面都還算說的過去,網(wǎng)頁客戶端那可真叫一個簡陋??梢詤⒖聪旅娴膱D。

說實話,即使不看你也想象得到,我一個對審美基本上沒有什么要求的人都這么說,說明它確實還是寒磣了些。


手機客戶端

網(wǎng)頁客戶端

如果對比現(xiàn)在琳瑯滿目的互聯(lián)網(wǎng)應用,不能說是各有特色,只能說是毫無亮點,簡直是被按在地上摩擦。

但是對于Web3的從業(yè)者來說,它卻是如此具備魅力,一切都來源于幾個字——去中心化。

與區(qū)塊鏈沒關系

說到去中心化,大家第一反應就是區(qū)塊鏈,但是這次出乎意料了,Nostr可以說跟區(qū)塊鏈毫無關系。

好吧,有人說它集成了比特幣閃電網(wǎng)絡的支付功能,但這跟它的核心功能毫無關系,甚至不需要這個閃電網(wǎng)絡也不影響它的運行。

對,沒有鏈,沒有共識,沒有智能合約,沒有幣,就是一個單純的開源通訊協(xié)議,能夠實現(xiàn)發(fā)文,私信和群聊等功能。

跟想象中有點不一樣,那么,它的去中心化體現(xiàn)在哪里呢?

身份,行為,關系

這需要我們回到通訊或者說社交的本質,如果我們把關鍵屬性拆解一下的話,就會發(fā)現(xiàn),所謂社交,其實核心就在三個方面:

身份,行為和關系。

身份,即你是誰,以及如何讓別人知道你是誰。

行為,即你可以做什么,以及怎么做。

關系,即你的行為所涉及的其他主體,以及如何涉及的。

身份

Nostr的去中心化,首先體現(xiàn)在身份上,這方面的實現(xiàn)方法和區(qū)塊鏈是一致的,就是基于非對稱加密。

簡單的來說,就是公鑰代表了對外的身份,你可以把它想象成你的賬號,而私鑰用來簽名,你可以把它想象成你的密碼。

公鑰是可以隨便告訴別人的,別人也只能通過這個公鑰來找到你,就像通過你的賬號名來找到你一樣。

私鑰是不能見人的,就像你的密碼不能告訴別人一樣。

當然了,公私鑰體系和傳統(tǒng)的賬號密碼體系是完全不一樣的,這么說主要是方便理解,關于公私鑰更細致的知識,可以在網(wǎng)上查找學習,有很多公開的資料,這里就不贅述了。

和傳統(tǒng)的賬號密碼體系一點很大的不同,公私鑰最大的特點就是,不需要向任何第三方注冊,任何人都可以私下生成自己的密鑰對。

你可以通過一些現(xiàn)有的工具來生成,蘋果客戶端Damus和網(wǎng)頁客戶端astral都自帶這個功能,但是很習慣安卓客戶端沒有這個功能,不知道是不是被針對了。

如果不相信別人,你也可以自己寫個代碼來生成屬于你的密鑰對,記得種子一定要選長一點。

Nostr用的是一條很常用的橢圓曲線,對,就是secp256k1,比特幣,以太坊和其他很多公鏈都是用的這一條。

只是Nostr的簽名和驗簽算法不是常用的ECDSA,而是schnorr signature算法。

這也意味著,如果你已經(jīng)擁有比特幣和以太坊的私鑰,那么是可以用于Nostr網(wǎng)絡的,不過因為編碼形式的不同,私鑰在不同網(wǎng)絡的顯示形式可能有所不同,這個需要做一次轉換。

當然了,對于普通用戶而言,這一切都不重要,你只需要知道的就是剛才講到的,你可以生成屬于自己的賬戶體系,這個賬戶不依賴于任何第三方。

你所需要做的一切,就是記錄好你的私鑰,不要讓任何人知道,這是能夠證明你擁有這個賬戶并操作這個賬戶的唯一方法。

行為

在Nostr上能夠做的事情還很簡單,之前也都提到過,發(fā)文,私信和群聊,和常用的社交軟件沒有太大的區(qū)別,甚至還更簡陋,但是在如何實現(xiàn)這些行為的方式上,有一些特色。

讓我們以聊天這個場景為例來理解區(qū)別,比如你要給小明發(fā)送一條信息。

在傳統(tǒng)的聊天軟件上,比如微信:

  1. 你需要使用下載微信的官方客戶端,
  2. 然后用你的賬號密碼登錄
  3. 你的賬號密碼信息會通過客戶端發(fā)送到這個微信的官方服務器上
  4. 服務器驗證賬號密碼無誤后,你登錄成功
  5. 然后給小明發(fā)送了一條信息
  6. 這條信息會首先被發(fā)送到微信的官方服務器上
  7. 然后官方服務器將這條信息轉發(fā)給小明
  8. 小明收到信息,Over。

你可以看到,這里面非常關鍵的幾個點,一個就是微信的官方客戶端,這個,只能由微信官方提供,因為他是不開源的,什么?你不想用他的,不好意思,別無他家。

二就是這個官方服務器,依然別無他家,如果這個官方服務器掛了,或者拒絕為你服務,那么就算小明站在你面前,你的信息也發(fā)送不到他的微信上。

有禁言或者封號經(jīng)歷的朋友應該能夠深刻理解。

那么,Nostr呢?我們先假設你和小明都已經(jīng)完成了乏味的公私鑰生成的過程,并且已經(jīng)妥善地將私鑰保管好了,并且,在一次線下聚會中,小明已經(jīng)將它的公鑰告訴了你。

  1. 你下載一個Nostr的客戶端,如果能力足夠強的話,不用客戶端,用命令行也可以,或者,像之前說的,你完全可以自己開發(fā)一個客戶端來自己用;
  2. 寫好一條信息,然后用自己的私鑰簽名,通過客戶端或者命令行發(fā)送出去
  3. 連接到一個或者多個Relays
  4. 查詢看小明是否也連接到了這其中的某個Relays
  5. 將信息發(fā)送到小明連接的那個Relays,發(fā)送地址填寫的就是小明的公鑰
  6. 小明可以從Relay那里獲取到這條信息
  7. 小明用你的公鑰對信息的簽名進行驗證,確定這條信息是你發(fā)送的,Over

PS. 這里面涉及到公私鑰的一個用法,就是私鑰用于簽名,而通過公鑰可以驗證是否是這個私鑰簽的名,整個過程不會暴露私鑰的實際信息。

你依然可以看到,這里面的幾個關鍵點,首先就是在客戶端方面,沒有強制的客戶端,如果不相信任何人,你完全可以一怒之下自己搞一個客戶端。

其次,就是這個Relays,聽起來和官方服務器很像,但是最大的不同就是,如果你不喜歡某個Relay,你可以重新?lián)Q一個,甚至你依然可以一怒之下自己搭一個Relay,Relay不會去判斷你的賬號密碼是否正確,Relays只是做信息的轉發(fā),妥妥的工具人,小明自己可以通過你的公鑰驗簽來判斷是否是你發(fā)送的信息,以及信息是否被篡改。

Relays最多可以做的一件事情就是屏蔽你,不轉發(fā)你的信息,但是你可以通過其他Relays,或者自己的Relays來做這件事情,這不需要任何人的同意。

關系

目前的關系系統(tǒng)比較簡單,主要就是關注和被關注,沒來得及看詳細實現(xiàn)原理,不過我估計應該也是通過消息+簽名的形式來實現(xiàn)的。

比如你關注了小明,那么就是將這條消息用你的私鑰簽名,然后發(fā)送到Relay。

小明就可以知道你關注了他。

實現(xiàn)方式和上面講到的行為應該差不多。

當然了,這是我的揣測,如果謬誤,請指正。

通過上述,應該明白為什么它被稱作去中心化的原因了。

存在的問題

Nostr是非常偉大的一步,經(jīng)常被封號或者禁言的朋友應該更是眼前一亮。

作為嘗鮮的玩具或者展示的藝術品,它已經(jīng)足夠優(yōu)秀了,但是,倘若想再進一步,真正大規(guī)模正式用起來,顯然,問題也不少。

首先是商業(yè)閉環(huán)方面,我們都知道,Relays在這個系統(tǒng)中是非常重要的,盡管看功能只是一個工具人。如果Relays的數(shù)量不夠多,那么很容易帶來幾方面的問題:

  • 一個是去中心化的問題,目前看起來,在工作的幾個Relays應該都是項目方自己起的,雖然理論上,任何人都可以起自己的Relays。
    但是問題又來了,為什么要起?事實上,Relays的門檻雖然不高,但是也并不低,需要較好的處理性能和網(wǎng)絡,如果大規(guī)模使用起來更是如此,需要較高的穩(wěn)定性,另外,還需要一個靜態(tài)的IP地址,長期下來,這些都是不菲的成本,也需要一定的技術和運維能力,但是Relays并沒有肉眼可見的收益,這個平衡問題是需要考慮的。
    總得來說,Nostr和IPFS的定位很像,是一個開源開放的功能層,本身并沒有顯著的激勵機制和經(jīng)濟系統(tǒng),在以后,是否需要一個激勵層,激勵層能不能做到去中心化的同時兼顧易用性,這是個問題。
  • 二是DDoS攻擊的問題,Relay雖然不能偽造和篡改你的信息,但是它可以屏蔽和聚焦你的信息,雖然它可能不是主動的,但是有可能遭受到DDoS攻擊,在Realys少的時候,這個問題是致命的,一旦遭受這樣的攻擊,那就不是針對你,而是在做的各位都沒有使用了。
    事實上,如果系統(tǒng)規(guī)模達到Web2軟件的規(guī)模,即使沒有DDoS攻擊,如果沒有足夠數(shù)量的Relays,系統(tǒng)一樣會因為超負荷而溢出,導致不能正常工作。

其次是數(shù)據(jù)可用性的問題
目前看來,數(shù)據(jù)的存儲主要是在Relays上,也就是說,你發(fā)送出的信息或者推文也好,是Relays在幫你存儲,別人能夠看到你的信息或者推文,也是因為Relays幫你存儲了。
客戶端應該是有緩存的,但是這并不是持久存儲,一旦你更換了客戶端,信息就清除了。
而至于Relays,如果它因為主動或者被動的情況將數(shù)據(jù)刪除了,那么,你歷史的記錄也就沒有了,結合上面提到的,Relays還不具備一個商業(yè)閉環(huán)讓它有義務或者有動力一定要幫你存儲數(shù)據(jù),那么這種情況是很有可能發(fā)生的。

也就是說,如果你不想把它當作一個閱后即焚的軟件使用的話,你有必要自己來備份自己的歷史數(shù)據(jù)。

最后是易可用性的問題
剛才講到了Relays數(shù)量不夠多的情況下可能帶來的問題,然而,在Relays數(shù)量多的情況下,同樣有問題。
從目前來看,兩個用戶之間的通信前提是,比如至少連接到一個共同的Relays。
這主要是因為Relays不像區(qū)塊鏈的節(jié)點,相互之間是不通信的,也不需要通信。
在Relays數(shù)量不多的情況下,這個問題還不顯著,不過我已經(jīng)有遇到過了,就是搜一個用戶的地址死活搜不到。
一旦Relays的數(shù)量眾多,大家連接到不同Relays上的概率就會大大增加,這種情況下的交互體驗會變得非常差,如果解決這個問題,還需要進一步的設計。

——上述這些都是一些實際試用過程中的體會,并不系統(tǒng),但很真實,目的是拋磚引玉,絕對不是踢館,事實上,我非常敬重這些做出開源貢獻的人。

展望

盡管剛才說了問題,但是這并不是批判,但是就像Nostr自己所說的那樣,它提供的是開源的架構和協(xié)議,這已經(jīng)足夠了,至于如何在此基礎上構建有效的商業(yè)閉環(huán)體系以及更好的用戶體驗,這是每個社區(qū)開發(fā)者和屏蔽禁言受害者要一起思考和解決的事情。

畢竟,考慮到它只是個孩子,它已經(jīng)做的足夠好了。

歷史很沉重,所以,應該是每一個人的事情。



  業(yè)務實施流程

需求調(diào)研 →

團隊組建和動員 →

數(shù)據(jù)初始化 →

調(diào)試完善 →

解決方案和選型 →

硬件網(wǎng)絡部署 →

系統(tǒng)部署試運行 →

系統(tǒng)正式上線 →

合作協(xié)議

系統(tǒng)開發(fā)/整合

制作文檔和員工培訓

售后服務

馬上咨詢: 如果您有業(yè)務方面的問題或者需求,歡迎您咨詢!我們帶來的不僅僅是技術,還有行業(yè)經(jīng)驗積累。
QQ: 39764417/308460098     Phone: 13 9800 1 9844 / 135 6887 9550     聯(lián)系人:石先生/雷先生