上級分類: Distributed computing

Decentralisation with P2P software

How can we use Peer 2 peer software to accomplish distribution


Centralisation maximizes the chance people will use your software. The problem is that it's brittle and not really fair for the people who have to maintain it on servers they pay for or maintain by themselves.

We could have a federated platform for distribution of processing and data storage. This category is to cover ideas related to decentralisation.

I recommend the decentralise community redecentralize for ideas on decentralisation


投票 (可選) (別通知) (可選)


Yeah, this is definitely an important category, and a link. Will have to describe a few ideas here, that are on other places or within the mind.

我認爲 Kademlia 的想法在今天仍然適用。


分佈式鍵值存儲可以作爲存儲後端(如 SQL 數據庫)的基礎。我已經在 https://GitHub.com/samsquire/hash-db 上演示了使用鍵值存儲作爲 SQL 後端

我不想用它來共享像受版權保護的音樂和電影之類的大文件,而是用作 0oo.li 或 DAO 等應用程序的後端。

Kademlia 或分發的一個問題是安全性。我們遇到了不良演員和垃圾郵件發送者的問題。因此,我們需要某種信任系統網絡,這樣您的應用就不會因垃圾郵件而過載。我們可以通過將主機標記爲受信任來驗證主機,然後我們看到它們的內容來實現這一點。這樣,沒有人可以強迫您存儲垃圾郵件。如果您看到垃圾郵件,則取消驗證服務器,您的視圖將返回到非垃圾郵件。每個人都擁有自己的信息。

I think the ideas of Kademlia are still relevant today.


A distributed key value store can be the basis of a storage backend such as a SQL database. I have demonstrated use of keyvalue storage as SQL backend on https://GitHub.com/samsquire/hash-db

I don't want to use this to share big files like copyrighted music and films but as a backend for apps like 0oo.li or DAOs.

One problem of Kademlia or distribution is security. We have a problem of bad actors and spammers. So we need some sort of web of trust system so your app isn't overloaded with spam. We can achieve this by verifying hosts by marking them as trusted and then we see their content. This way nobody can force you to store spam. If you see spam, you unverify the server and your view goes back to nonspam. Everybody hosts their own information.

    :  -- 
    : Mindey
    :  -- 


安全,準確地說。沒有辦法安全地運行社區模塊。確保安全的唯一方法是同行評審系統。傳統的安全模型是一個專有邊界系統。阿拉的,那些業主被證明不值得信賴,因爲該計劃缺乏透明度。 我將針對這個主題開始一個單獨的主題,並非常感謝其他人的意見,但我看到了發展不列顛哥倫比亞省經濟的解決方案,其中審閱者爲他們的服務和經濟的一部分付費,確保代碼質量。當然,評論者及其評論的質量存在問題,等等。

Security, precisely. There's no way to run a community module safely. The only way to ensure security is a system of peer review. The traditional security model is a system of proprietary boundaries. Alla's, those proprietors proven not to be trustworthy, for the scheme lacks transparency. I'll start a separate thread on the subject and would really appreciate to hear from others, but I see the solution in developing a bc economy where reviewers are paid for their services and part of the economy, ensuring quality of code. Of course, there's an issue of quality of reviewers and their reviews, and on and on.

運行不可信的代碼與查詢不可信的數據源是一個不同的問題。一種很容易驗證 - 只需將不良數據的來源標記爲不可信,並且不要將其包含在計算中。您可以在每條數據旁邊都有一個按鈕來指示數據的來源。因此,您可以一鍵輕鬆阻止或過濾掉服務器的數據。

我懷疑可以創建某種形式的虛擬機來限制任意代碼執行的數據處理原語。如果您有一種簡單的語言可以進行數學運算並調用有限的運行時間。只讀 SQL 查詢可以安全運行。寫入查詢(例如刪除和插入)應轉到應用程序主機服務器。您將在運行時限制通信夥伴,因此無法產生任意流量。您可能希望將循環執行與數據查詢聯繫起來,以便無法運行任意繁忙循環。

Running untrustworthy code is a different problem from querying untrusted sources of data. One is easy to verify - just mark the source of bad data as untrustworthy and do not include it in calculations. You could have a button next to every piece of data to indicate the data's source. So you can easily block or filter out a server's data with one click.

I suspect some form of virtual machine can be created to limit the primitives of data processing for arbitrary code execution. If you had a simple language that can do mathematical operations and call out to a limited runtime. Read-only SQL queries can be safe to run. Write queries such as delete and insert should go to the app host server. You would have communication partners be limited in the runtime so arbitrary traffic cannot be produced. You may want to tie loop execution to data queries so arbitrary busy loops cannot run.

添加了一個指向 dfinity 互聯網計算機的鏈接,該計算機具有自己的運行時和語言。 https://dfinity.org/

Have added a link to dfinity the internet computer which has its own runtime and language. https://dfinity.org/