ما الذي يزيله Brave من محرك Chromium؟ اتباع
(لاحظ أن هذه الصفحة قيد العمل وقد يتم تحديثها بشكل متكرر)
Brave for desktop is built on top of the open-source Chromium project. نضيف ميزات فوق ما هو موجود بالفعل ونزيل أيضًا ميزات أو أجزاء من الكود. التعديلات التي نجريها تلتمس الكود الأساسي لـ Chromium تتم عبر التطبيق.
Chromium ليس هو نفسه Google Chrome. For some differences, see https://chromium.googlesource.com/chromium/src/+/master/docs/chromium_browser_vs_google_chrome.md.
How it works
If you wanted to do an audit of the code, you would start with the brave-browser repository. Our wiki has instructions about what steps need to be done to perform a build after cloning the source
تم جلب مصدر Chromium
أداة gclient (جزء من أدوات المستودعات) ستقوم بجلب شفرة المصدر الرسمية لـ Chromium. The tag that is fetched is captured in our package.json(for example,70.0.3538.35). All of the source code will be downloaded into the./src/folder
تم جلب كود Brave
كجزء من عملية الإعداد، نقوم أيضًا بجلب الكود الخاص بنا. The brave-core repository has the code that makes the browser Brave. The branch that should be checked out is also contained in that package.json. There is also a DEPS file in brave-core that pulls in sub-dependencies (such as the brave-extension)
تشغيل الخطافات
بعد أن تشغيل مزامنة gclient وجلب كافة الكود (بما في ذلك brave-core)، يتم تشغيل الخطافات. واحدة من الخطافات التي يتم تشغيلها تطبق التصحيحات (التي يمكنك رؤيتها هنا) التي يحتوي عليها brave-core. If you'd like to know more details about HOW the patching works, you can view our patching wiki page.
ما هي ميزات Chromium التي تم إزالتها لأسباب تتعلق بالخصوصية/الأمان؟
الخدمات والميزات التي نعطلها تمامًا
- Chrome Privacy Sandbox. There are several APIs bundled together in Privacy Sandbox and we aim to disable all given our concerns.
- تكامل حسابات Google ("GAIA") تم تعطيلها
- إزالة جميع الميزات التي ترسل بيانات إلى Google من الإعدادات
- تعطيل التوجيه المسبق لـ DNS
- تعطيل Chrome Google URL Tracker
- تعطيل موثوقية خدمة النطاق
- تعطيل التمديدات الداخلية
- تعطيل المزامنة الخلفية
- Hyperlink
pingattribute is disabled - تعطيل واجهة برمجة تطبيقات البطارية
- تعطيل واجهة برمجة تطبيقات البلوتوث على الويب
- تعطيل رفع سجلات تصحيح WebRTC
- تعطيل إعدادات التحميل بعد إعادة تعيين الملف الشخصي
- تعطيل استرجاع إعدادات OEM الافتراضية بعد إعادة تعيين الملف الشخصي
- تعطيل رفع سجلات تتبع الأعطال
- تعطيل Google Cloud Messaging
- تعطيل Firebase Cloud Messaging
- تعطيل تحديثات قناة العميل
- تعطيل متعقب وقت الشبكة
- تعطيل مساعدة Google في تنسيق العناوين
-
Specific features are disabled on startup via the CLI (search for
disabled_features) - إزالة مستودع dl.google.com من حزم Linux
- تعطيل تقارير القياسات
- تعطيل اقتراحات التنقل باستخدام عناوين URL المتشابهة
- تعطيل مراقبين التقارير وواجهة برمجة تطبيقات التقارير
- تعطيل ميزة التمرير إلى مقطع نصي
- تعطيل مستشعرات الحركة
- تعطيل navigator.credentials
- تعطيل تكامل OTP لنظام Android
- تعطيل SXG
- تعطيل NFC
- تعطيل WebBundles
- تعطيل تلميحات العميل (lang)
- تعطيل المقابس المباشرة/الخام
- تعطيل الكشف عن وقت الخمول
- تعطيل تشغيل الإشعارات
- تعطيل واجهة برمجة تطبيقات نظام الملفات
- تعطيل واجهة برمجة تطبيقات السلع الرقمية
- تعطيل واجهة برمجة تطبيقات التسلسل
- تعطيل التعلم الموحد للمجموعات (FLoC)
- تعطيل واجهة برمجة تطبيقات معلومات الشبكة
- SCT auditing
- Site affiliation fetcher (part of the password manager)
- Disables kOptimizationGuideFetchingForSRP
- Disable Web Environment Integrity
- Disable Popular Sites (AKA Top Sites)
- Disable Trust Tokens / Private State Tokens
خدمات بروكسي نستخدمها عبر خوادم Brave
لا تتلقى Google أي معلومات حول العميل الذي يقوم بهذه الطلبات (ولا حتى عنوان IP الخاص بك).
- طلبات التصفح الآمن تجري عبر وكيل
- طلبات تحديد الموقع الجغرافي تجري عبر وكيل
- تحديثات الملحقات تجري عبر وكيل
- طلبات إلغاء الشهادات تتم عبر خادم وسيط
- يتم تمرير طلبات CRLSets عبر خادم وسيط
- طلبات تحديث المكونات تتم عبر خادم وسيط
- طلبات قواميس التدقيق الإملائي تتم عبر خادم وسيط
- الطلبات في أدوات المطورين تتم عبر خادم وسيط
- Requests for Search Engine page favicon (Android) are proxied
نقاط النهاية عبر خادم وسيط
https://dl.google.com/release2/chrome_component/*crl-set*https://*.gvt1.com/edgedl/release2/chrome_component/*https://*.gvt1.com/edgedl/chrome/dict/*.bdichttps://storage.googleapis.com/update-delta/hfnkpimlhhgieaddgfemjhofmfblmnib/.+crxdhttps://safebrowsing.googleapis.com/https://sb-ssl.google.com/https://safebrowsing.google.comhttps://ssl.gstatic.comhttps://gstatic.comhttps://update.googleapis.comhttps://chrome-devtools-frontend.appspot.comhttps://clients2.googleusercontent.comhttps://clients2.google.comhttps://clients4.google.comhttps://chrome-devtools-frontend.appspot.comhttps://accounts.google.comhttps://*.infura.iohttps://*.gvt1.com/edgel/chromewebstore/*/*https://*.gvt1.com/edgedl/release2/*/*http://dl.google.com/release2/*/*
الميزات والوظائف المعدلة
-
Cookies:
- Cookies are given a maximum lifetime of 7 days for cookies set through Javascript and 6 months for cookies set through HTTP
- Session Cookies are cleaned up on restart if "Continue where you left off" mode is enabled (which is default in Brave).
- Third-party cookies are always blocked at the HTTP header level, but we give JavaScript access to partitioned ephemeral storage to pages (learn more about partitioned ephemeral storage).
- The Battery API always returns a fixed value.
- Referrer values are capped to
strict-origin-when-cross-originand can only be tightened by referrer policy, not weakened. In addition, cross-origin requests from a.onionservice have an emptyRefererheader and anullOriginheader just like the Tor Browser. -
.onionentries are replaced with"null"indocument.location.ancestorOrigins()unless such entries are same-origin with the innermost frame. - Hangouts extension is disabled by default. We also disable log uploading to Google's servers: https://github.com/brave/brave-browser/issues/1993.
- يتم تعطيل جهاز التوجيه الإعلامي (Chromecast) افتراضيًا على سطح المكتب. يمكنك تشغيله عن طريق تبديل المفتاح في brave://settings.
- تتجاهل عمليات البحث البعيدة للحماية من التنزيل عناوين URL وأسماء الملفات (https://github.com/brave/brave-core/pull/6763).
- Have StorageManager.estimate تبلغ عن قيمة ثابتة (issue #11543)
- العديد من الميزات تمت إضافة العشوائية إليها أو تم تعميم القيم كدفاع ضد التعرف على البصمات، بما في ذلك:
- طرق إعادة القراءة للقماش
- User Agent, follow ups in issues #12097, #12638, #14740
- enumerateDevices
- تسلسل Web Audio
- تصحيح WebGL
- الإضافات
- hardwareConcurrency
- deviceMemory
- The list of hostnames with pinned CA certificates is replaced with a Brave-specific one.
- إعادة استخدام متطلبات الإيماءات للوصول إلى الكتابة في الحافظة غير المتزامنة
- Dangerous download warnings are always shown when Safe Browsing is OFF, but a flag to disable the warnings is available for advanced users.
- Functionality from the Chromium side panel has been merged into the Brave Sidebar.
- Web Serial API is OFF but a flag to enable is available for advanced users.
- Enhanced the geolocation permission dialog to inform the user whether the site they are visiting has requested location data with the
enableHighAccuracyoption. - Reporting Observers are enabled but don't work (calling will no-op). See here for where it was disabled and see here for where it was re-enabled but made to do nothing.
- Open Search adding engines has a toggle (
Index other search engines) and is disabled by default. - Access to Storage Access API is disabled in Brave by always rejecting the permission request.
- When group policy is in place, Brave does NOT disable secure DNS. Chrome/Chromium will disable secure DNS in the UI and force the administrator to define a policy if they want a value other than
Off. See here and here.
التعليقات
Some of the above (along with other issues) were previously tracked in https://github.com/brave/brave-browser/issues/13.
قد تلاحظ بعض الطلبات إلى نطاقات Google. Some of these, such asclients*.google.com and update.googleapis.com are needed to check for extension updates if you installed extensions.
كيف يقارن Brave بـ ungoogled-chromium؟
Description of ungoogled-chromium, per their GitHub page:
ungoogled-chromium هو Google Chromium ، بدون تكامل مع Google. It also features some tweaks to enhance privacy, control, and transparency(almost all of which require manual activation or enabling).
We have an issue captured for pulling in relevant patches from theungoogled-chromiumproject. Theungoogled-chromiumproject similarly has an issue captured where they mention pulling in patches from Brave.