写点什么

Breach:基于 Chromium 和 Node.js 构建的“可破解”的浏览器

  • 2014-07-27
  • 本文字数:2025 字

    阅读完需:约 7 分钟

最近,Stanislas Polu 发布了 Breach 的第一个公开测试版(Alpha 版),这是一个基于 Chromium 和 Node.js 构建的模块化浏览器。

在文章“构建下一代Web 浏览器的实验平台”中,Polu 简要介绍了引发Breach 的实验性项目。在他看来,“一直延续下来的Web 浏览的方法”从未改变,而且浏览器从未针对这样的Web 场景进行针对性设计:它“永远处于打开并且联网的状态”。

Polu 表示:

ExoBrowser 的目的,是在 Web 渲染引擎之上嵌入 Node.js。其主要目标在于,把绝大部分浏览器代码从 C++ 迁移到 JavaScirpt(借助特定的 JavaScript 闭包和语法,以及 Node.js 的原生能力——例如网络能力)。

ExoBrowser 背后的基本动机来自这样一个现实情况:在构建浏览器的过程中,我们能够随心处置 JavaScript 引擎和 HTML 渲染引擎。那么,为什么我们要忍受使用 C++ 构建浏览器本身所经历的那些痛苦?为什么不“启动它”并使用它自己拥有的技术进行构建?而这正是 ExoBrowser 希望能够实现的。

之后不到一年的时间里,在 ExoBrowser 之上运行的 Breach 就诞生了。接受采访的过程中,Polu 向 InfoQ 表示,Breach 让开发者只靠 Web 技术,就能够打建出全新的浏览体验。

发行公告中,Polu 宣称,尽管 Breach 还很年轻,但是他相信 Breach 将允许其使用者“破解”其代码并改变其行为,从而为浏览器带来新的、有趣的方向。

他说:

我们设计并完整地编写了向模块提供的 Breach API。这些 API 可以用来实现完整的模块化浏览器的愿景——在这样的浏览器中,功能是由简单、独立的 Web 应用提供的。我们融合了至少四个 Chromium 内容 API 的主流版本,并使 Breach 核心引擎始终追随最新的 HTML5 标准。此外,我们还修订了大量的 Bug,让 Breach 足够稳定,从而能够胜任作为我们日常主要使用的浏览器所肩负的重大职责。

Breach 中有一些涉及到 mode_strip(在打包的时候已经安装的默认模块)的重要特性,包括:

  • 标签页遵循 FIFO 原则;
  • 标签页能够嗅探页面的颜色;
  • 在 URL 地址栏输入时,Breach 将对标签页进行动态筛选。

Polu 表示,这些实验性质的特性将提供有趣的浏览体验,但是 Breach 将赋予开发者“彻底修改其外观和行为并(更重要地是)对其进行扩展的自由”。

对于 Breach 的反响褒贬不一,部分开发者和 JavaScript 社区表达了对 Breach 这个名字的疑虑。Hacker News 上,在黑客新闻展播(Show HN):Breach——一个基于Chromium 和Node.js 构建的模块化浏览器及相关讨论中,WeSawIt.com 的首席技术官Christopher Elwell 对Breach评价道:“我可能会通过浏览器发送几乎全部个人数据。对于应用来说,这个名字(Breah,意为‘攻破’)感觉并不可靠。”

在Reddit 的讨论 Breach,使用 JavaScript 编写的可破解的浏览器中,用户 640*480表示

面对“Breach”这样一个名字,“可破解”这个说法会引导我进行负面解读。

这个项目的思路听起来很酷,但是与其他浏览器(比如 Firefox)相比,它到底有何不同?Firefox 拥有许多扩展,它们同样能够完全改变浏览器工作方式。

社区里,其他人也依旧并不清楚 Breach 到底能够提供什么新东西。用户 Shawnz询问道:“Breach 身上有什么Firefox 并不具备的东西?Firefox 也是开源、模块化的,而且同样使用JavaScript 编写(尽管是与XUL 而不是HTML 结合,并且使用Gecko 而不是Webkit 内核)。”

Polu 给出的回答如下:

我们的平台要更进一步:它不向浏览器直接提供任何功能,从而保证浏览器完全基于模块构建。同时,我们基于 Chromium Content 模块完成这一切。Breach 与 Firefox 的根本动机相同,但我相信,基于 Breach 来重新编写整套 Web 浏览体验或许会更简单。

除了名字方面的问题,以及一些对于 Breach 能够提供什么的困惑外,试用过这个浏览器的用户们的反馈是正面的。在 Hacker News 上,用户 Paul Sawaya表示

这是个伟大的理念。我曾经想要构建一些类似的东西,但从未付诸行动。我认为这里的许多评论并没有准确领会 Breach 的目的。Firefox 和 XUL 同样是在浏览器之上叠加的可以使用 JS 脚本描述的 UI,但它是个糟糕的工作环境。

UI 是区别不同 Web 浏览器的主要因素。我们使用的选项卡风格的浏览器外观,已经许多年没有变过了。而 Breach 将支持各种有意思的实验和定制。对于能够看到这样的项目不断前进,我感到非常兴奋。

Polu 表示,在未来的几个月中,Breach 还有大量技术栈上的工作以及面向模块开放的 API 有待完成。他表示,这些工作的目标是让 Breach 足够可靠,以成为其他开发者构建工作的有力基础。Polu 相信,Breach 还将在聚合原生应用和 HTML5 Web 应用方面扮演重要的角色,同时他对于目前 Google Chrome 应用的模型并不满意。

Breach 将基于 MIT 协议发布。InfoQ 读者可以通过构建新模块或参与当前工作的方式,为该项目贡献自己的努力。不过,Polu 表示,他已经被最近的贡献和反馈淹没了,因此他正计划围绕着项目创建一个社区,从而推动 Breach 不断前进。

查看英文原文: Breach: Hackable Browser Built on Chromium and Node.js

2014-07-27 11:362741
用户头像

发布了 256 篇内容, 共 75.8 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

喜迎双节,测评征文活动等你来参加!

InfoQ写作社区官方

AI 大模型

Dubbo源码浅析(一)—RPC框架与Dubbo | 京东云技术团队

京东科技开发者

spring dubbo RPC RPC框架 企业号9月PK榜

实用指南:掌握 Node.js 文件复制的最佳实践

Apifox

JavaScript node.js 程序员 后端 教程

AI编程助手工具,走过路过别错过

飞算JavaAI开发助手

分分钟搞定来源list添加到目标list,据说只要5%的人知道

飞算JavaAI开发助手

软件开发全套资料获取

金陵老街

百度交易中台之内容分润结算系统架构浅析

百度Geek说

大数据 架构 交易 调度任务 企业号9月PK榜

MySQL到TiDB:Hive Metastore横向扩展之路

vivo互联网技术

大数据 hive 元数据 TiDB 横向扩展

HarmonyOS非线性容器特性及使用场景

HarmonyOS开发者

HarmonyOS

实战指南,SpringBoot + Mybatis 如何对接多数据源

华为云开发者联盟

大数据 华为云 华为云开发者联盟 企业号9月PK榜

【AIGC】只要10秒,AI生成IP海报,解放双手!!! | 京东云技术团队

京东科技开发者

人工智能 IP AIGC 企业号9月PK榜

CPU性能指标简览

DevOps和数字孪生

仿真建模 CPU性能

中秋国庆花式玩法,用低代码DIY假日大屏“Vlog”

华为云开发者联盟

低代码 开发 华为云 华为云开发者联盟 企业号9月PK榜

DxO PhotoLab 6 for Mac(raw图片处理软件) 6.10.0.57中文激活版

mac

raw图片处理软件 苹果mac Windows软件 DxO PhotoLab 6

【稳定性】秘密武器--功能开关技术 | 京东物流技术团队

京东科技开发者

稳定性 企业号9月PK榜 功能开关

MAC手动修复『已损坏』问题 终端运行命令报错处理

展初云

Mac Mac软件

软件测试/测试开发丨岗位内推-58同城岗位开放

测试人

软件测试 招聘 校招 岗位内推

基于Java开发的工作流系统(springboot+activiti源码)

金陵老街

springboot Activit

软件测试/测试开发丨结对编程助手 GitHubCopilot

测试人

人工智能 程序员 软件测试 ChatGPT Copilot

质量高的http代理ip需要具备什么特点?

巨量HTTP

代理IP http代理

Mac如何内录系统声音

展初云

录屏 Mac软件

QCN6274 VS QCN9274|QCN9074 VS QCN6122|Exploring the World of Wi-Fi 6E and the Latest Chip Innovations

wallyslilly

QCN9074 QCN6122 qcn9274 qcn6274

1分钟完成1000万key数据对比

NineData

redis Redis 核心技术与实战 redis 精讲 数据对比 NineData

徐刚:AIGC时代,人力资源数智化的关键趋势与应对

用友BIP

人力资源 AIGC

英伟达张玮东:NVIDIA核心GPU技术与软件生态助力大模型开发和部署

TRaaS

英伟达 大模型训练

Breach:基于Chromium和Node.js构建的“可破解”的浏览器_JavaScript_James Chesters_InfoQ精选文章