Академический Документы
Профессиональный Документы
Культура Документы
ABSTRACT
Web browser is the most commonly used client application and speed and efficiency of our online work depends on browser to a great extent. As the market is flooding with new browsers there is a lot of confusion in everyones mind as to which is the best browser.Our project aims to answer this question. We have done a comparative study of the four most popular web browsers namely Mozilla Firefox, Internet Explorer, Google Chrome, Opera. In the first phase of our project v arious comparison parameters are selected which can be broadly cat egorized into -General Features, Security features and browser extensibility features. Using the selected benchmarking tools each browser is tested. We have also use our own test scripts for some parameters .Depending on the performance of the browser points are assigned to each browser Submitted by .Public opinion is considered for usability issue and finally we have come to a conclusion t hat opera and firefox are leading the browser war. firefox has finished first scoring 49.84 and opera has scored the next highest 48.90
Web Browsers
Amogh (05CO05) Our other contributions include a K-chromium browser ,addonKulkarni for firefox and scripts showing the major browser attacks. Jaison Salu John (05CO29)
th
The report gives details of work done by our team from Jan 6
th
2008.
I. INTRODUCTION
Vrinda Halarnkar The World Wide Web has come a long way in its short existence. Without it,(08IS04F) many people wouldnt know what to do with their day. And others literally couldnt survive without it. To browse the internet we use browser. A browser provides a user interface for displaying and selecting items from a list of data or from hierarchically organized lists of data such as directory paths. We can tell that browser is the most commonly used client side application. Earlier the choice of the browser was limited but this is no longer the situation now. Numbers of options are available making the choice of web browser difficult and confusing. Mainstream browsers are getting tough competition from the upcoming alternatives each one having its own unique features. Hence making a right choice is a daunting task.
The main reason that motivates us to work on this project is that nowadays the users just use any browser they get without knowing its positives and negatives. Our project aims clear the confusion in users mind by systematically testing the browsers and deciding t he best choice for different categories of users. First we discuss about the importance of a browser and its general architecture. In section III we elaborate our evaluation strategy. In section IV, V , VI VII we list and justify our selection of browsers, test environment ,parameters and benchmarks . Section VIII gives the details of the tools/scripts developed by us and the test results. Section IX gives discusses the security issues of the browser . Section X we list out the points of each browser .
1 2
3 requested explicitly by URI, or implicitly by following embedded hyperlinks. Many other features are provided by browser which increases the ease of use. For example, most browsers keep track of recently visited web pages and provide a mechanism for book-marking pages of interest. They may also store commonly entered form values as well as usernames and passwords. Finally, browsers often provide accessibility features to accommodate users with disabilities such as blindness and low vision, hearing loss, and motor impairments Browser Jargon you will come across in this report : Plug-in or Add-on : It consists of a computer prog ram that interacts with a host application in our case a web browser to provide a certain specific function on demand . Extension :is a program desig ned to to be incorporated into web browser to extend the functionality of the later . On its own an extension is non-functional BHO : Browser Help Object, BHO is a help object added to your Internet browser. For example the Toolbar is considered a Browser Help Object; t his add-on enables users to perform Google searches through the toolbar and contains additional features that help improve a user's experience. Google
1) 2) 3) 4)
Test scripts were designed and used wherever possible (For ex. Speed Test Public opinion was asked for assigning values to features like usability Scripts were designed for attacking the browser Standard Benchmarks were used
IV .BROWSER SELECTION
As our task was to compare the browsers, we need to decide which browser is to be selected. For that, we went throug h the usage statistics and found the following results given by some of the websites. Market Share of browsers:
A.Mozilla Firefox
Firefox is an open-source project that is managed by the Mozilla Foundation. Each component is divided into submodules. Each of these modules is owned by a specific individual that is in charge of managing the development of that that module. It descended from Mozilla Corporation suite and is manag ed by Mozilla Corporation. Firefox includes tabbed browsing, a spell checker, incremental find, live bookmarking, a download manager, and an integrated search system that uses the user's desired search engine .Functions can be added through add-ons created by third-party developers, which include the NoScript JavaScript disabling utility, Tab Mix Plus customizer, FoxyTunes media player control toolbar, Adblock Plus ad blocking utility, StumbleUpon (website discovery), Foxmarks Bookmark Synchronizer (bookmark synchronizer), WOT: Web of Trust security site advisor, download enhancer, and Web Developer toolbar. With a market share of 45.5% in 2009 it is the most popular browser.
A.Internet Explorer
Windows Internet Explorer (formerly Microsoft Internet Ex plorer; abbreviated MSIE), commonly abbreviated to IE, is a series of graphical web browser developed by Microsoft and included as part of the Microsoft Windows line of operating system starting in 1995. It has been the most widely used web browser since 1999, attaining a peak of about 95%usage during 2002 and 2003 with IE 5 and IE6 and that percentage share has declined since in the face of renewed competition from other web browser developers. Internet Explorer uses DOCTYPE sniffing to choose between "quirks mode" (renders similarly to older versions of MSIE) and standard mode (renders closer to W3C's specifications) for HTML and CSS rendering on screen (Internet Explorer always uses standards mode for printing). It also provides its own dialect of ECMA Script called Jscript.Internet Explorer has been subjected to criticism over its limited support for open web standards.
B.Google Chrome
Chrome the latest browser released in 2008 already had a market share of 3.9% in Jan 2009. Chromium is the open source project behind Google chrome. Salient Features include: 1. Task Manager for Websites 2. Visual Browser History 3. Super Clean Contextual Menus 4. Search option from the Address Bar 5. Check Memory Usage by Different Browsers 6. Reopen Website tabs that you closed by mistake 7. Launch Websites from the Start Menu / Quick Launch Bar 8. Developers claim faster speed (Sunspider and v8 benchmarks), better stability and performance and high security.
. Architecture of chrome provides insight into its security features Chromium has two modules in separate protection domain: browser kernel and rendering engine. This architecture helps mitigate high severity attack without compromising the compatibility.
C.Opera
Opera has market share of 2.3%. But the features of this browser get it a place in our comparison chart. Claimed to be a fast and secured browser it, has the following new features in its latest version: Content blocking BitTorrent support Widgets Search engine editor Site preferences New installer. One package30 languag es Integrated source viewer opera:config for advanced settings configuration Tab use: Thumbnails when you hover the cursor over a tab Widgets in Opera are more like small standalone applications that can interact with the internet and live outside the browser, rather than interface elements that can change the basic behavior of the browser, as Firefox's extensions are.
100% CPU Usage is made available for each test. This is ensured by reboot after every test .
Weightage
5 7 5 5 7 5 5 8 8 10 10
7 REGEXP 296.0 565.8 508.8 STRING 1185.4 1850.2 813.8 TOTAL 4887.4 6775.6 2457.6 Points 9 8 10 425.2 30937.8 44399.6 0
B. ACID3 Acid3 is a test page from the Web Standards Project that checks how well a web browser follows certain web standards, especially relating to the Document Object Model and JavaScript.When successful, the Acid3 test displays a gradually increasing percentage counter with colored rectangles in the backg round. The percentage displayed is based on the number of sub-tests passed. It is not representing an actual percentage of conformance as the test does not keep track of how many of the tests were actually started (100 is assumed). In addition to these the browser also has to render the page exactly like the reference page is rendered in the same browser. Like the text of the Acid2 test, the text of the reference rendering is not a bitmap, in order to allow for certain differences in font rendering. Passing Condition A passing score is only considered valid if the browser's default settings were used. The following browser settings and user actions invalidate the test : Zooming in or out Disabling images Applying custom fonts, colors, styles, etc. Also User JavaScript or Greasemonkey scripts may invalidate the test.
8 2. Install the Windows SDK 6.1. Integrate the SDK with Visual Studio: Start > All Programs > Microsoft Windows SDK v6.1 > Visual Studio Registration > Windows SDK Configuration Tool. 3. Download the Chromium Source Code. The source code will be in .rXXXXX.tgz.format 4. Using 7-Zip, we have to extract(unzip) twice. 5. We will finally get the actual source code and this requires around 8GB of your hard disk. 6. To change the display of the web browser, the new_tab file which is html format was modified. This file was found in the resources folder. To identify this file took up much of time as it was kept in multiple folders. 7. After the new_tab.htm file was modified, we had to build the chromium source code. 8. Open the chrome/chrome.sln solution file in Visual St udio and build the solution. 9. Right-click chrome_exe and select Set as Startup Project. Right-click chrome_exe in the solution explorer and select Build. It took 1hr and 10mins to build for the first time. 10. This will make Chromium build and to run the code press F5. The details of the build are given in the appendix.
Following is the di
Xpi file> /install.js /install.rdf
9 >folders for different languages >skin >images used for the toolbar interface
10
NITK Online Music Toolbar originally Online Music Player / NITK Toolbar originally Wizz RSS News Reader
Tools required to develop this is an XUL editor like RJ Keller's MozCreato. For the First tweak we downloaded Wizz RSS News Reader addon from https://addons.mozilla.org/en-US/firefox/addon/4617. Figured out how to change details in the Add-ons Sections of Firefox - by changing install.rdf and how to change the details on the toolbar - by changing content/omusic.jar contents.rdf and the tweaking was done. For the second one we reffered to https://addons.mozilla.org/firefox/addon/424 and figured out how to change t he Details on the toolbar - by changing content/wizzrss.jar - contents.rdf. Then t he jar file needs to be directly changed.
Graphics rendering results Browser 1 (in s) 2 (in s) 3 (in s) Average (in s) Points
Firefox 7.197 7.201 7.201 7.1996 6 Opera 11.388 11.388 11.232 11.336 4 Chrome 2.876 2.877 2.877 2.8766 9 IE 11.215 11.219 11.212 11.2153 4
RSA javascript for encryption and decryption was tried in all the four browsers. Following results were obtained:
Key: 10001
10
11 Chrome 0.013 0.005 0.006 0.008 0.013 0.012 0.011 0.036 0.044s 9 Opera 0.032 0.016 0.015 0.021 0.062 0.047 0.062 0.057 0.078s 8
Prime Factorization Test was carried out to check the time taken by each browser to find prime factors of a number. Following were the results:
999999 999999 9
Total Points
Cold Start
This is the time it takes to do a cold load. Once logged out and once all background processes have been completed, browser is run as the first program. Default settings for the browser, are used The browsers are all set to show a single page on startup, and this page is a locally stored basic HTML page.
Warm Start
After completing a cold start, browser is closed ,and time taken to start again is measured . This is done two more times and average is taken .
11
12 blockers, certificate management, encryption, password management. The browsers were evaluated on the all these issues. For ex ample: a secure browser should have the option to disable javascript/active-X options. This is mainly for the convenience for the user. If the user feels insecure surfing a particular website, he/she can disable javascript so that the v ulnerable scripts wont execute at all in the browser. Similarly the browser should have efficient pop-up blockers and clever management and certificate management options. The browser should be able to differentiate between a secure pug-in and a spyware or a malicious plug-in that attaches itself to the browser by deceit or without the permission of the user. The browser should use the latest encryption standards. The browsers were evaluated on mainly the above security issues.
12
13
X. Evaluation Table
SL Parameter NO. 1 Web technologies Support 1.1 CSS 2.1 P Y Y Y 1.2 Frames Y Y Y Y 1.3 Nav LINKS N N N Y 1.4 XSLT Y Y Y Y 1.5 XHTML N Y Y Y 1.6 XForms N Y N N 1.7 Web Forms N N N Y 12.5 25 20 30 1.79 3.57 2.86 4.29 2 Cross-platform Support 7 2.1 Windows Y Y Y Y 2.2 Mac OS N Y N Y 2.3 Linux N Y N Y 2.4 Unix N Y N Y 7 28 7 28 1.75 4 1.75 4 3 Browser Features 5 3.1 Password managing Y Y Y Y 3.2 Download Manager N Y Y Y 3.3 Bookmarks Managing 3.4 Form Managing Y Y Y Y 3.5 Spell Checking N Y Y Y 3.6 Search toolbar Y Y Y Y 3.7 Image grabber N N N N 3.8 Auto Updater Y Y Y Y Y Y Y Y
13
14 SL NO. Parameter IE Firefox Chrome Opera Weightage 25 35 35 35 3.12 4.37 4.37 4.37 4 Accessibility Features 5 4.1 Tabbed Browsing Y Y Y Y 4.2 Pop-up blocking Y Y Y Y 4.3 Incremental Finding 4.4 Ad Filtering Partial N N Y 4.5 Page Zooming Y Y N Y 4.6 Full text History search N N Y Y 4.7 HTML access key Y Y Y Y 4.8 Tabbing navigation Y Y Y Y 4.9 Spatial navigation N Y N Y 4.10 Caret navigation N Y N N 4.11 Voice control P Y N Y 4.12 Text-to-Speech N Y N Y 30 50 30 55 2.50 4.17 2.50 4.58 5 Mobile Web technology support 7 5.1 C-HTML N P N N 5.2 HDML N N N N 5.3 I-mode N N N N 5.4 XHTML Mobile Profile N P N N 5.5 WML N N N Y 0 7 0 7 0 1.4 0 1.4 6 Plugin and Web Feed Support 5 N Y Y Y
14
15 SL NO. Parameter IE Firefox Chrome Opera Weightage Y N N N 6.2 NPAPI N Y N Y 6.3 Java N N N Y 6.4 Gears Y Y Y N 6.5 RSS Y Y N Y 6.6 Atom Y Y N Y 20 20 5 20 3.33 3.33 0.83 3.33 7 Protocol Support 5 7.1 HTTP P Y Y Y 7.2 E-mail N N N Y 7.3 FTP Y Y Y Y 7.4 SSL P Y Y Y 7.5 EV Y Y Y Y 7.6 IRC N N N Y 7.7 Gopher N Y N N 7.8 IDN Y Y Y Y 7.9 Data: URL 7.10 BitTorrent N N N N 7.11 IPv6 Y Y N Y 25 40 30 45 2.27 3.64 2.73 4.09 8 Security 8 8.1 Browser Security Settings 6 7 4 7 8.2 Architecture 4 6 8 4 8.3 Clickjacking 3 7 3 3 N Y Y Y
6.1 ActiveX
15
16 SL NO. Parameter IE Firefox Chrome Opera Weightage 13 20 15 14 4.33 6.67 5.00 4.67
9 Add-ons 5 8 2 4 8
10 Speed 10 10.1 Graphics Rendering 4 6 9 4 10.2 Cryptography 1 7 9 8 10.3 Prime Factorization 2 5 6 7 10.4 Cold Start 7 2 10 7 10.5 Warm Start 6 5 7 4 20 25 41 30 4 5 8.2 6
11 Benchmark tool testing 10 11.1 Sunspider Javascript Benchmark 0 9 10 8 11.2 ACID 3 Test 0 7.1 7.9 8.5 11.3 CSS Rendering Test 7 1 6 8 7 17.1 23.9 24.5 2.33 5.7 7.97 8.17
16
17
Benchmark Test Speed Add-ons Security Protocol Plugin - Web feed Mobile w eb tech Accessibility Brow ser Features Cross-platform Web Tech Support
17
18
XII. Conclusion:
As you saw in the evaluation table, all the paramet ers have been given appropriate points and the total has been calculated for each browser. The results are:
Category
Basic browser features (Web technologies Support, Crossplatform Support, Browser Features, Accessibility Features, Mobile Web technology support, Plugin and Web Feed Support, Protocol Support) Security features Add-Ons Speed Benchmark Tool Testing Opera tops with 8.17/10 OVERALL (all categories tog ether) MOZILLA FIREFOX TOPS with 49.84/75
Result
Firefox tops with 6.67/8 Firefox tops with 8/8 Chrome tops wit h 8.2/10
Mozilla Firefox has merged out to be the winner with 49.84 points but it is very closely followed by Opera with 48.90 points . XIII. References [1] Alan Grosskurth and Michael Godfrey. A case study in architectural analysis: The evolution of the modern web browser. EMSE, 2007. [2] Allan Grosskurth and Michael Godfrey. A reference architecture for web browsers. In Journal of Software Maintenence and Evolution: Research and Practice, pages 17, 2006. [3] Nigel McFarlane. Rapid Application Development with Mozilla, pages 1123. Prentice Hall, 2003. [4] mozilla.org. JavaScript Reference Implementation (JSRef) README. http://lxr.mozilla.org/mozilla/source/js/src/README.html. [5] mozilla.org. Module Owners. http://www.mozilla.org/owners.html . Referred 10th Jan 2009 [6] mozilla.org. Mozilla Layout Engine. http://www.mozilla.org/newlayout/. [7] mozilla.org. Necko Interfaces Primer. http://www.mozilla.org/projects/netlib/necko interface overview.html. [8] mozilla.org. Networking Library Documentation. http://www.mozilla.org/projects/netlib/. [9] mozilla.org. NGLayout architecture. http://www.mozilla.org/newlayout/overview.html. [10] mozilla.org. Overview of NSS. http://www.mozilla.org/projects/security/pki/nss/overview.html. [11] mozilla.org. Personal SecurityManager (PSM). http://www.mozilla.org/projects/security/pki/psm/. [12] mozilla.org. SpiderMonkey (JavaScript-C) Engine. http://www.mozilla.org/js/spidermonkey. [13] mozilla.org. Storage - MDC. http://developer.mozilla.org/en/docs/Storage. [14] mozilla.org. XPToolkit architecture. http://www.mozilla.org/xpfe/aom/AOM.html. [15] http://www.w3schools.com/JS/ - Javascript Tutorial [16] The Security Architecture of the Chromium Browser by Adam Barth ,Collin Jackson [17] http://www.labnol.org/software/browsers/best-google-chrome-features/4388/ - Google Chrome features we miss in other Web browsers [18] http://googleblog.blogspot.com/2008/12/google-chrome-beta.html - Official Google Chrome Blog 18
19
[19] http://www.extremetech.com/article2/0,2845,2326718,00.asp Browser Comparison [20] http://googlesystem.blogspot.com/2006/05/10-features-youll-find-only-in-opera.html - 10 Features youll find only in Opera [21] http://www.opera.com/docs/era/#intro Opera Documentation [22] Adam Barth and Collins Jackson . The Security Architecture of Chromium, Technical report 2008 [23] Daschuan Yu , Ajay Chander ,Nayeem Islam ,Igor Serikov , Javascript Instrumentation for Browser Security , DoCoMo Communications Laboratories USA.
19