Chromium – це

The Chromium Authors, Google [1] [2] .

Windows (XP SP2 або вище, так само запускається на Windows 2000 SP4 під час встановлення в систему додаткових бібліотек) Mac OS X (10.5.6 або вище) Linux [3]

В активній розробці

Компоненти поширюються під Apache License, BSD license, ICU License, LGPL, libjpeg license, libpng license, MIT License, MS-PL, MPL/GPL/LGPL, zlib license [1] .

Chromium(МФА 'krəumɪəm, англ.chromium— хром) — веб-браузер з відкритим вихідним кодом, розроблений компанією Google [1] і призначений, за твердженням розробників, для надання користувачам швидкого , безпечного та надійного доступу до Інтернету, а також зручної платформи для веб-додатків [5] [6] . На основі Chromium створюється браузер Google Chrome (при цьому в рамках Chromium також доступні ранні пре-альфа версії [7] , в яких можна ознайомитися з нововведеннями, що ще не включені до складу Chrome), а також ряд інших альтернативних веб-браузерів [2] .

Зміст

Історія створення

Особливості

Безпека

також

Відповідно до заявлених творцями Chromium прагнень створити найбезпечніший браузер, розробники приділяють велику увагу впровадженню нових функцій захисту браузера. Для забезпечення безпеки в Chromium була обрана модель «пісочниці», що дозволяла обмежити простір для атаки комп'ютера користувача через використану вразливість [36] . Дослідники Google дійшли висновку, що майже 70% загроз «працюють» у движку відображення, що взаємодіє з ненадійним вмістом. Саме тому розробники перевели всю роботу двигуна в пісочницю.

3] , а також проводити очищення конфіденційних даних за певний період [

4] [57]. Серед іншихмеханізмів захисту можна виділити:

  • Специфікація HTML5 як Origin Header забезпечує захист від підробки міжсайтових запитів (CSRF) [52] , блокуючи неправильні запити сайтів.
  • Chromium підтримує X-Frame-Options API [58] , що захищає браузер від клікджекінгу, а також X-Content-Type-Options API [59] , що надає браузеру можливість захищатися від MIME-сніфінгу [

5].

  • Chromium підтримує режим інкогніто, при якому історія відвідувань і завантажень не записується в журнали, а файли cookies видаляються після закриття браузера [60] .
  • При цьому Google закликає користувачів при знаходженні вразливостей у браузері повідомляти про них розробникам, натомість отримуючи грошові винагороди [61] .

    Надійність

    З метою підвищення стабільності для Chromium було обрано мультипроцесну архітектуру. Браузер, двигун рендерингу, розширення, модулі, що підключаються, працюють в окремих процесах. Таким чином, при порушенні роботи, наприклад, розширення браузер продовжить роботу у звичайному режимі, видавши пропозицію про перезапуск розширення [62] . У мультипроцесної архітектури є ще ряд переваг, крім стабільності [63] [64] :

    • Можливість миттєвого звільнення пам'яті під час закриття одного з компонентів. Зокрема, при закритті вкладки пам'ять, що споживалася нею, звільниться відразу, на відміну від браузерів, що використовують однопроцесну архітектуру, де очищення пам'яті при закритті вкладки йде дещо довше.
    • Активна взаємодія із операційною системою. При використанні великої кількості вкладок багато вкладок можуть простоювати в бездіяльності, незважаючи на те, що вони необхідні користувачеві. Chromium, взаємодіючи з ОС, зменшує споживання пам'яті, змушуючи систему рахувативкладку, що не використовується, згорнутим додатком.
    • Можливість розуміння, які ресурси та в якій кількості виділяються кожному запущеному компоненту. Для того, щоб користувач міг точно розібратися в кожному процесі, у Chromium встановлений власний диспетчер завдань та інструмент статистики about:memory.

    Але при цьому подібна архітектура має істотний недолік — велике загальне споживання пам'яті [64] .

    Підтримка веб-спеціфікацій

    Chromium використовує движок WebKit для відображення веб-сторінок, завдяки чому Chromium забезпечує широку підтримку HTML 4.01, xHTML 1.0 (2 вид.), XML 1.0 (4 вид.), SVG (рівень підтримки у 6 версії) оцінений як Advanced+ [65] SVG Fonts, SVG Filters, SVG SMIL animation, MathML, ECMAScript, DOM, забезпечуючи підтримку близько 95% існуючих рекомендованих стандартів [66] [67] . Розробники ж активно впроваджують підтримку специфікацій HTML5, реалізувавши підтримку canvas, тегів, веб-додатків, геолокації, WebGL, Web SQL Database і ряду інших стандартів, що активно розробляються [68] . Також Chromium повністю проходить тести CSS3 Selectors Test та Acid3 [68] .

    Підтримка форматів

    Розширюваність

    Використовуючи нативні API, розширення для Chromium можуть взаємодіяти з закладками , надаючи можливість створювати їх і проводити над ними різні дії [80] ;контекстним меню, дозволяючи редагувати його вміст [81] ;вкладками, дозволяючи сортувати їх, змінювати та проводити деякі інші дії. [82]; іншими нативними API [83] , зокрема експериментальними [84] . Зі сторонніх API є можливість працювати з DOM, HTML5 API's, WebKit API та іншими [85] .

    Персоналізація

    Модулі, що підключаються

    Chromium дозволяєпідключати до браузера плагіни, що розширюють можливості браузера. У стандартному постачанні на платформі Windows разом з браузером йдуть:

    • Default Plug-in - надає можливість підключати сторонні плагіни.
    • GPU Plug-in – підключає можливість рендерингу Pepper 3D за допомогою GPU.
    • Native Client - плагін-компонент, що дозволяє запускати додатки, що використовують машинний код, в "пісочниці".

    Безпека

    Плагіни запускаються, згідно з мультипроцесною архітектурою, в окремих процесах, тому порушити роботу браузера вони не здатні [63] . Але через те, що модулі, що підключаються, використовують системні бібліотеки, їх виконання було винесено з «пісочниці».

    Програми

    браузер

    Розробка додатків має приблизно ті ж можливості, що й розробка розширень, але є додаткові можливості, як, наприклад, запуск додатків, що встановлюються поза браузером [106] .

    Синхронізація

    Інструменти розробника

    6]. Диспетчер завдань показує всі процеси, запущені в Chromium, і ресурси, що використовуються цими процесами (пам'ять, процесор і мережа).

    Інші інструменти. Браузер має додаткові приховані інструменти для розробників і тестувальників, що дозволяють отримати доступ до додаткових експериментальних функцій браузера [115] [116] , докладної інформації про браузер, засоби моніторингу даних, а також до ряду інших можливостей [117] .

    Браузер в цілому позитивно сприймається експертами, які відзначають більш високу швидкість роботи та менше споживання ресурсів у порівнянні з Mozilla Firefox, а також має ряд переваг, недоступних конкурентам, такими як: веб-додатки, мінімалістичний інтерфейс, зручнаробота з вкладками та деякі інші переваги [118] [119] . При цьому перші тестові версії браузера для платформ Linux і Mac OS X піддавалися критиці через вкрай нестабільну роботу, нестачу функцій, неробочих інструментів розробника і багато інших недоліків [120] [121] [122] . Пізніше Chromium став об'єктом скандалу, що виник після виявлення українським програмістом Олексієм Ужвою доказів того, що браузер, всупереч заявам Google, робить недокументовані запити на сервери Google [123] [124] . Розробники визнали дефект, оголосили, що це помилка, і видалили всі елементи, що стежать [125] .

    Відмінності від Google Chrome

    Найчастіше виникає плутанина між браузерами Chromium та Google Chrome [126] . Незважаючи на схожість, браузери мають низку суттєвих відмінностей. Chromium є вільним веб-браузером з відкритим вихідним кодом, в той час як Google Chrome поширюється під власною ліцензією [127] і містить низку невільних елементів. З подробицями можна ознайомитись у таблиці [39] .