Thứ Năm, 23 tháng 12, 2010

Các bài học từ WikiLeaks: phân tán, phân tán và phân tán

Lessons from WikiLeaks: decentralize, decentralize, decentralize

by Glyn Moody, 21 December 2010, 11:53

Theo: http://www.h-online.com/open/features/Lessons-from-WikiLeaks-decentralize-decentralize-decentralize-1153977.html

Bài được đưa lên Internet ngày: 21/12/2010

Lời người dịch: Sự việc của WikiLeaks bị đá khỏi nhiều website của nhiều nhà cung cấp làm nảy sinh một nhu cầu về sự phân tán quyền của các nhà cung cấp và các nhà tạo website, sao cho các ứng dụng chạy cục bộ trên các máy trạm, với các dữ liệu được mã hóa được lưu trữ trong đám mây trên các máy chủ “câm”, chứ không phải chạy cái gì cũng trên máy chủ và nhà cung cấp có thể nhìn thấy bất kỳ dữ liệu nào của bạn.

Có hay không việc WikiLeaks biến thành một lưu vực sông trong chính trị, có một câu hỏi khác được quan tâm ngay lập tức đối với thế giới nguồn mở: liệu cái sau có học được một bài họa từ những biện pháp được nắm lấy để chống lại hoạt động của WikiLeaks hay không?

Những thứ này đã đưa việc đá nó ra khỏi các máy chủ của Amazon và dừng những quyên góp thông qua MasterCard, Visa hoặc PayPal. Và điều này đã xảy ra mà không có cảnh báo phục vụ như một cái nhắc nhở về thời gian mà những dịch vụ tập trung như vậy có quyền lực tùy thích tuyệt đối và rộng rãi đối với những người sử dụng của họ.

Tất nhiên, điều đó không phải là một nhận thức gì mới. Eben Moglen đã biến chính xác điểm này thành một cuộc phỏng vấn với The H khi nói về mối đe dọa mà Facebook thể hiện đối với sự riêng tư và tự do của chúng ta:

Nếu chúng ta đã có một sự phân loại thực sự có thể bảo vệ được một cách có tri thức các dịch vụ, thì chúng ta có thể nhận thức được rằng một số các dịch vụ mà chúng hiện đang được tập trung hóa cao độ, và chúng tính tới nhiều sự giám sát được xây dựng trong xã hội mà chúng ta đang tiến tới, là những dịch vụ mà chúng không đòi hỏi sự tập trung hóa để trở thành có thể phân phối được bằng công nghệ. Chúng thực sự là Web được đóng gói lại”.

Các ứng dụng mạng xã hội là sống còn nhất. Chúng dựa vào phép ẩn dụ cơ bản của chúng đối với hoạt dộng trong một mối quan hệ đôi bên được gọi là quan hệ bạn bè, và những hậu quả đa nhiều bên của nó. Và chúng được mô hình hóa cao độ bằng những cấu trúc hiện có của bản thân Web. Facebook là Web hosting tự do với một số doodads PHP và APIs, và theo dõi bên trong mọi lúc - không thực sự là một thứ mà chúng ta không thể làm tốt hơn”

Whether or not Wikileaks turns out to be a watershed in politics, there's another question of more immediate interest to the open source world: can the latter learn a key lesson from the measures taken against the Wikileaks operation?

These have included booting it off Amazon's servers and stopping donations through MasterCard, Visa or PayPal. That this happened without warning serves as a timely reminder that such centralized services have absolute and largely arbitrary power over their users.

Of course, that's not a new insight. Eben Moglen made precisely this point in an interview with The H when talking about the threat that Facebook represents to our privacy and liberty:

"If we had a real intellectually-defensible taxonomy of services, we would recognize that a number of the services which are currently highly centralized, and which count for a lot of the surveillance built in to the society that we are moving towards, are services which do not require centralization in order to be technologically deliverable. They are really the Web repackaged.

"Social networking applications are the most crucial. They rely in their basic metaphors of operation on a bilateral relationship called friendship, and its multilateral consequences. And they are eminently modelled by the existing structures of the Web itself. Facebook is free Web hosting with some PHP doodads and APIs, and spying free inside all the time – not actually a deal we can't do better than.

“Đề xuất của tôi là thế này: nếu chúng ta có thể phi tập trung hóa các ghi chép log, trong khi cung cấp cho mọi người tất cả các tính năng y hệt, thì chúng ta có thể có một kết quả siêu hạng hơn. Mỗi người - vâng, trừ ngài Zuckenberg - có thể sẽ tốt hơn, và không ai tệ hơn. Và chúng ta có thể làm điều đó bằng việc sử dụng những thứ hiện có”.

Chỉ 6 tháng sau, một dự án mới có mục đích để làm cho “sự phi tập trung hóa” đó có thể được, và không chỉ cho mạng xã hội, mà còn cho dạng của ứng dụng được host: được đặt tên thông minh là Unhosted - không host:

Phần mềm tự do nguồn mở FOSS giải phóng chúng ta khỏi việc phải cài đặt phần mềm sở hữu độc quyền trên các máy đầu cuối của chúng ta. Nhưng phần mềm có thể cài đặt được đang đánh mất nền tảng đối với các phần mềm được host (các website). Phần mềm máy chủ thường là nguồn mở (như LAMP), nhưng bản thân website như một sản phẩm phần mềm hầu như luôn là sở hữu độc quyền. Có một lý do rõ ràng cho điều này: thậm chí nếu một giấy phép Affero cho phép chúng ta tải về mã nguồn của website, thì chỉ một công ty thương mại mới có thể đầu tư tài chính để có hàng ngàn máy chủ cần thiết để host một website thành công”.

Để làm cho mọi thứ tồi tệ hơn, các phần mềm được host có sức mạnh hơn đối với những người sử dụng của nó hơn là những phần mềm có thể cài đặt được, vì nó ép bạn phải đặt các dữ liệu của người sử dụng của bạn lên các máy chủ được sở hữu bởi cùng công ty mà nó xuất bản phần mềm đó. Nếu bạn muốn sử dụng Google Docs, thì bạn phải hé lộ công việc của bạn cho một máy chủ mà Google sở hữu”.

"My proposal is this: if we could disaggregate the logs, while providing the people all of the same features, we would have a Pareto-superior outcome. Everybody – well, except Mr Zuckenberg – would be better off, and nobody would be worse off. And we can do that using existing stuff."

Just six months later, a new project aims to make that “disaggregation” possible, and not just for social networking, but for any kind of hosted application: the aptly-named Unhosted:

"Free / Libre and Open Source Software (FLOSS) frees us from having to install proprietary software on our terminals. But installable software is losing ground to hosted software (web sites). The server software is often open source (e.g. LAMP), but the web site itself as a software product is almost always proprietary. There is an obvious reason for this: even if an Affero license allows us to download the web site's source code, only a commercial company can finance the thousands of servers needed to host a successful web site.

"To make things worse, hosted software has more power over its users than installable software, because it forces you to put your user data on servers owned by the same company that publishes the software. If you want to use Google Docs, you have to reveal your work to a Google-owned server."

Thế giải pháp không host là gì vậy?

Chúng ta cần phá bỏ liên kết một - một giữa người xuất bản phần mềm mà viết một website (như Google) và 'nhà cung cấp con tin' mà host website đó (cũng là Google). Nếu chúng ta tạo ra đơn giản một lớp mỡ ở dạng một tiêu chuẩn mở giữa phần mềm được host và các máy chủ mà host nó, thì điều này được tách riêng ra”.

Như bước đầu tiên. Tôi đang làm việc trên một mẫu mà tôi hy vọng sẽ tung ra đúng lúc cho ngày Noel, sao cho các lập trình viên web có thể chơi với nó qua những ngày nghỉ. Mã nguồn một website sẽ cần phải rất Ajaxy trước tiên, sao cho tất cả việc mà các máy chủ làm là lưu trữ và phục vụ các dữ liệu của json. Không có việc xử lý ở phía máy chủ. Tiếp theo, chúng ta cần chuyển từ sự mã hóa lớp vận chuyển (transport) tới mã hóa chất tải phía máy trạm, vì chúng ta không còn cần thiết phải tin máy chủ mà chúng ta đang nói chuyện với. Rồi chúng ta cần một chút ký mã nguồn, để biết chúng ta có thể tin tưởng mọi thứ mà đang chạy trên trình duyệt của chúng ta, và chúng ta đã thực hiện xong. Người sử dụng sẽ có cùng kinh nghiệm (ngoại trừ một trong những cài cắm để nhắc), mà website được không host theo nghĩa là các máy chủ mà bạn nói với chúng chỉ thấy các dữ liệu được mã hóa và thậm chí không biết được bạn đang chạy ứng dụng nào”.

So what's Unhosted's solution?

"We need to break the one-to-one link between the software publisher who writes a web site (e.g. Google, Inc) and the 'hostage provider' who hosts that web site (e.g. also Google, Inc). If we create a simple grease layer in the form of an open standard between the hosted software and the servers that host it, then this is decoupled.

"As a first step, I'm working on a prototype that I hope to launch in time for Christmas, so that web devs can play with it over the holidays. A web site's code will need to be very Ajaxy first, so that all the servers do is store and serve json data. No server-side processing. Next, we need to switch from transport-layer encryption to client-side payload encryption, because we no longer necessarily trust the server we're talking to. Then we need a bit of code-signing, to know we can trust everything that is running in our browser, and we're done. The user will have the same experience (except for a one-off plug-in-prompt), but the web site is unhosted in the sense that the servers you talk to only see encrypted data and don't even know which application you are running."

Mã nguồn đó bây giờ có sẵn như một phiên bản alpha trên GitHub. Ý tưởng chính là việc các ứng dụng chạy cục bộ, với các dữ liệu được mã hóa được lưu trữ trong đám mây trên các máy chủ “câm”.

Trong khi một website được host cung cấp cả việc xử lý và lưu trữ, thì một website không host chỉ host mã nguồn của nó (hoặc chỉ là một trình khởi động). Như một trong những người đằng sau không host, Michiel de Jong, đã giải thích cho tôi, trên thực tế nó sẽ làm việc như thế này:

Ai đó mà chạy một nút không host, cung cấp cho những người sử dụng mà là các khách hàng của anh ta. Anh ta biết chính xác ai là ai trong số họ, dù anh ta không thể thấy nội dung các gói dữ liệu của họ (nhưng anh ta có thể thấy được sự tồn tại của chúng). Vì thế điều này giống việc host một máy chủ thư mà host các thư điện tử được mã hóa PGP. Hoặc như ISP của bạn xem các giao thông https của bạn vậy. Nếu nhà cung cấp của một nút không được host nhận được một giấy phép tìm kiếm, rồi thì anh ta có thể bỏ địa chỉ IP của người đứng đằng sau tài khoản đó. Vì thế nó không là sự tối tăm. Điều này là tùy vào mục đích. Không được host là về việc đấu tranh chống độc quyền, và chúng ta không muốn sự lúng túng với các mạng vô danh, đối với chúng các dịch vụ đã đang tồn tại”.

Cho tới khi người sử dụng đầu cuối có quan tâm, nếu một website được host được chuyển thành không được host, thì anh ta không để ý thấy sự khác biệt và sẽ không cần phải hành động gì; những lập trình viên cảm thấy nó là sống còn rằng tính có thể sử dụng được của người sử dụng đầu cuối không bị tổn thương. Và như Moglen đã tiên đoán, tất cả điều này có thể được thực hiện “bằng việc sử dụng những thứ đang có sẵn” như:

That code is now available as an alpha release on GitHub. The key idea is that the apps run locally, with encrypted data stored in the cloud on “dumb” servers.

Whereas a hosted web site provides both processing and storage, an unhosted web site only hosts its source code (or merely a bootloader). As one of the people behind Unhosted, Michiel de Jong, explained to me, in practice it will work like this:

"Someone who runs an unhosted node, provides for the users that are his customers. He knows exactly who every one of them is, although he cannot see the content of their data packets (but he can see the existence of them). So it's like hosting a mail server that hosts PGP-encrypted emails. Or like your ISP watching your https traffic. If the provider of an unhosted-node receives a search warrant, then he would give up the IP address of the person behind the account. So it's not a darknet. This is on purpose. Unhosted is about fighting monopolies, and we don't want the confusion with anonymity networks, for which services already exist.

As far as the end-user is concerned, if a hosted web site is converted to unhosted, he should not notice the difference and will need to take no action; the developers felt it vital that end-user usability should not be compromised. And as Moglen predicted, all this can be done "using existing stuff":

Đối với những người đứng đằng sau dự án này, 'không được host' là phát minh của Kenny Bentley và Michael de Jong. Kenny từng là lập trình viên gốc của Tuenti, một mạng xã hội chỉ đổi mới sáng tạo mà đã trở thành công ty mới thành lập thành công nhất thập niên của Tây Ban Nha đã được bán cho Telefonica mùa hè này. Anh ta và Michael đã gặp nhau ở Tuenti, và đã thành lập ra unhosted.org: một dự án vị tha mà có mục tiêu để dừng các công ty lớn mà áp đảo web ngày nay. Để cắt các chi phí cuộc sống trong khi làm việc trong dự án toàn thời gian, Micheal đã chuyển tới Bali, từ đó anh ta làm việc với không gì hơn một cái ba lô, một máy tính xách tay, và các kết nối Wi-Fi dễ bong thành từng mảng của các quán bar bên bờ biển Bali.

Những hy vọng của họ là khá tham vọng: nếu hạ tầng của họ có thể trở thành sự hỗ trợ cho các ứng dụng như Diaspora, web xác hội liên đoàn, quản lý quan hệ nhà cung cấp, Bitcoin, và hơn nữa, nguồn mở sẽ thành công trong lĩnh vực dịch vụ như nó thành công trong phần mềm được cài đặt. Và điều này có thể “giúp giữa cho Google, Facebook và Apple kiểm soát được, sao cho họ cạnh tranh chỉ về các giá trị”.

Đưa ra bản chất tự nhiên tìm kiếm web thường tập trung hóa có thể là việc thách thức. Tuy nhiên, đã có một dự án máy tìm kiếm phi tập trung hóa nguồn mở thú vị được gọi là YaCy. Bất kỳ ai cũng có thể sử dụng thứ này để tạo ra một cổng tìm kiếm hoặc cho một intranet hoặc cho web công cộng. Nó hoàn toàn là phi tập trung hóa và không ai có khả năng để kiểm duyệt chỉ số của nó.

Điều đó để chúng ta phải tìm kiếm một số dạng hệ thống thanh toán phi tập trung hóa để thay thế các thẻ tín dụng và PayPal: Về điều này thì thế nào nhỉ?

As for the people behind the project, 'Unhosted' is the brainchild of Kenny Bentley and Michiel de Jong. Kenny was the original programmer of Tuenti, an invitation-only social network that became this decade's most successful Spanish start-up before being sold to Telefonica this summer. He and Michiel met at Tuenti, and founded unhosted.org: an altruistic project that aims to stop the big companies that dominate the web today. To cut living expenses while working on the project full time, Michiel moved to Bali, from where he works with nothing more than a backpack, a laptop, and the flaky Wi-Fi connections of Bali's beach bars.

Their hopes are pretty ambitious: if their infrastructure can become the support for apps such as Diaspora, federated social web, vendor relationship management, Bitcoin, and so forth, open source will be as successful in the service area as it is in installed software. And this would "help keep Google, Facebook and Apple in check, so they compete on merit only."

Given its generally centralized nature web search would be challenging. However, there is already an interesting open source decentralized search engine project called YaCy. Anybody can use this to create a search portal either for an intranet or the public web. It is fully decentralized and nobody should be able to censor the index.

That just leaves us to find some kind of decentralized payment system to replace credit cards and PayPal; how about this?

Bitcoin là một tiền tệ số ngang hàng. Ngang hàng P2P có nghĩa là không có nhà chức trách trung tâm để phát hành tiền mới hoặc theo dõi các giao dịch. Thay vào đó, những nhiệm vụ này được quản lý một cách hợp tác bởi những nút mạng.

Các ưu điểm:

  • Bitcoins có thể được gửi đi dễ dàng qua Internet, không phải tin tưởng vào người trung gian

  • Các giao dịch được thiết kế sẽ là không thể đảo ngược được.

  • An toàn đối với tính không ổn định được tạo ra bởi các ngân hàng trung ương và ngân hàng dự trữ nhỏ. Sự lạm phát được hạn chế của sự cung cấp tiền của hệ thống Bitcoin được phân phối công bằng (bởi nguồn của CPU) qua khắp mạng, không bị độc quyền bởi các ngân hàng.

  • Bitcoin là một dự án nguồn mở hiện ở giai đoạn phát triển beta.

Một trong những vấn đề (nhỏ) với nguồn mở là việc nhiều chủng loại phần mềm “rõ ràng” đã là quá phổ biến, làm cho khó đối với một tin tặc để đánh dấu của anh hoặc chị ta. Tuy nhiên, những việc gần đây của WikiLeaks cảnh báo cho chúng ta về tầm quan trọng sống còn của lớp mới các phần mềm tự do: các dịch vụ Web có sử dụng một tiếp cận phân tán hoàn toàn. Khi bài báo này được xuất bản, thì đã có một số dự án hứa hẹn bắt đầu khai thác lĩnh vực này: thế thì bạn còn chờ đợi gì nữa nhỉ?

Bitcoin is a peer-to-peer digital currency. Peer-to-peer (P2P) means that there is no central authority to issue new money or keep track of transactions. Instead, these tasks are managed collectively by the nodes of the network.

Advantages:

  • Bitcoins can be sent easily through the Internet, without having to trust middlemen.

  • Transactions are designed to be irreversible.

  • Be safe from instability caused by fractional reserve banking and central banks. The limited inflation of the Bitcoin system’s money supply is distributed evenly (by CPU power) throughout the network, not monopolised by banks.

  • Bitcoin is an open source project currently in beta development stage.

One of the (minor) problems with open source is that many of the “obvious” categories of software are already overpopulated, making it hard for a new hacker to make his or her mark. However, the recent travails of WikiLeaks alert us to the crucial importance of a new class of free software: Web services using a completely decentralised approach. As this article has shown, there are already some promising projects starting to explore this domain: so what are you waiting for?

Dịch tài liệu: Lê Trung Nghĩa

letrungnghia.foss@gmail.com

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.