本系列各篇章的翻译链接如下:
[译] Dweb: 什么是 Dweb?(中英)
[译] Dweb: 基于 Secure Scuttlebutt 的社交消息流 (中英)
[译] Dweb: 用 WebTorrent 搭建一个可复原的 Web (中英)
[译] Dweb: Beaker-- 去中心化浏览器 (中英)
待发布......
译注: 下面是斜体文本为原文的编者按.
展开原文
在这个系列中, 我们会讲到一些正在尝试探索在 Web 变为去中心化或分布式的时候存在哪些可能性的项目, 这些项目不附属于 Mozilla, 其中一些项目还重新定义了我们对 web 浏览器的认识. 他们都有共同点: 这些项目都是开源的, 开放参与的, 并且和 Mozilla "keep the web open and accessible for all (让 Web 对所有人保持开放和可访问)" 的宗旨一致.
展开原文
到这篇文章为止, 我们已经讲到过分布式的社交消息流和去中心化的文件共享两个主题. 今天我们想要介绍一些不一样的东西: 想象一下, 如果整个 web 都是分布式的...... 浏览器将会变成怎样一种体验. Beaker 浏览器就是这样一款浏览器! 它代表了其背后开发团队的一个宏图愿景, 这个团队旨在提供从顶层设计到基础设施各层面的去中心化 Web 的团队. 这是一篇出自 Beaker 的联合制作人 Tara Vancil 的贴文, 请尽情享阅.--Dietrich Ayala
蓝链实验室及 Beaker 浏览器
展开原文
我们是蓝链实验室 https://bluelinklabs.com/ 团队, 我们是一个 3 人团队, 我们的任务是用 Dat 协议 https://datproject.org/ 及一个叫做 Beaker https://beakerbrowser.com/ 的点对点浏览器来让 Web 变得更好.
展开原文
Web 的基础就是发布和分享, 现在如果你想发布属于自己的网站或者分享一些文档, 你仍然需要懂得如何运营一台服务器, 或者具备因雇人帮你做这些而支付报酬的能力.
So we asked ourselves, "What if you could share a website directly from your browser?"
所以我们开始思考 "是否我们可以仅在浏览器里就能搭建一个网站?"
展开原文
dat:// 这类点对点 (P2P) 协议使得实现这种想法变为可能, 普通的用户设备也可以用来提供内容服务, 所以我们没有使用服务器 -- 那种需要网站作者和他的访客来支持其文件供应服务的形式 , 而是采用了 data:// 及 Beaker 来支持在浏览器中发布内容. 这有点像 BitTorrent, 不过是针对浏览器的!
架构
Beaker uses a distributed peer-to-peer network to publish websites and datasets (sometimes we call them "dats").
Beaker 采用的是一种点对点 (P2P) 式的网络来发布网站及数据的(有时候我们也称之为 "dats").
展开原文
- dat:// 网站的地址是以公钥作为 URL 来标识的. 每份添加到 dat:// 网站的数据都会被追加到一个签名的日志本上. 访客们通过 tracker 协议或 DHT https://en.wikipedia.org/wiki/Distributed_hash_table 网络来相互找寻各方, 然后相互进行数据同步, 同时充当下载者 (流量下行) 和上传者(流行上行), 在此过程中还会对数据是否被篡改做检查.
- https://user-gold-cdn.xitu.io/2018/8/25/165705932426a468?w=394&h=252&f=png&s=10201
展开原文
从本质上讲, 一个 dat:// 网站和一个 https:// 网站没有什么不同 -- 都是浏览器按照 Web 的系列标准来解释一系列文件及目录的形式. 但是 dat:// 网站特殊的地方就在于 Beaker, 因为我们为其附加了 "点对对 Web 接口 https://beakerbrowser.com/docs/apis", 以便开发者可以进行读取, 写入及监测 dat:// 文件从而构建出点对点 Web 应用.
创建一个 P2P 网站
展开原文
Beaker 使得任何人创建一个 dat:// 网站都变得容易 -- 只需一次点击即可完成(查看我们的教程 https://beakerbrowser.com/docs/tour ). 如果你对 html,CSS 及 JavaScript 熟悉的话(哪怕只一丁点熟悉), 你就可以开始发布你的第一个 dat:// 网站了.
Developers can get started by checking out our API documentation https://beakerbrowser.com/docs/apis or reading through our https://beakerbrowser.com/docs/guides .
开发人员可以通过查看我们的 API 文档 https://beakerbrowser.com/docs/apis 或者查阅我们的指导教程 https://beakerbrowser.com/docs/guides 来入门.
展开原文
下面这个例子展示了一个可以自我编辑以此创造和保存文件的网站. 虽然这个例子不贴实际, 但它完整地展示了一个 dat:// 网站在数据排序, 用户信息等数据处理方面所共有的操作模式, 和那些把应用数据传输至一台服务器去处理的形式不一样, 这种形式可以把数据存储在这个网站本身.
// index.html 文件
发送消息
<script src="index.js"></script>
复制代码
- // index.js 文件
- // first get an instance of the website's files
- // 首先实例化该网站的文件集合对象
- var files = new DatArchive(window.location)
- document.getElementById('create-json-button').addEventListener('click', saveMessage)
- async function saveMessage () {
- var timestamp = Date.now()
- var filename = timestamp + '.json'
- var content = {
- timestamp,
- message: document.getElementById('message').value
- }
- // write the message to a JSON file
- // this file can be read later using the DatArchive.readFile API
- // 将消息写入一个 JSON 文件
- // 这个文件在之后还可以通过 DataArchive.readFile 接口进行读取
- await files.writeFile(filename, JSON.stringify(content))
- }
复制代码
更多信息
展开原文
每次看到大家用 dat:// 及 Beaker 创造出一些东西来的时候, 我们都很激动, 特别是当有人用其制作出网站或博客的时候, 或者当他们尝试用 Beaker 提供的 API 来制作 App 的时候.
展开原文
关于点对点 Web 的信息还有很多!
Beaker 一览 https://beakerbrowser.com/docs/tour
Beaker 文档 https://beakerbrowser.com/docs
http://p2pforever.org/ -- 一个朴素的集合了点对点 Web 资源的网站
Beaker 的 GitHub 主页 https://github.com/beakerbrowser/beaker
关于 Tara Vancil https://hacks.mozilla.org/author/tbvancgmail-com/
展开原文
Tara 是 Beaker 浏览器的联合制作人. 她之前在 Cloudflare 工作过, 另外她还参加了 the Recurse Center https://recurse.com/ .
来源: https://juejin.im/post/5b810252f265da4347313e82