Feature of FOSS: Performance Security
Feature of FOSS: Performance Security
Performance Security
How is performance of Is the security of FOSS
FOSS products? product high or low?
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 237
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Performance
Innovative and fast development
FOSS is suited for innovative development
Developing speed of active FOSS project is amazingly
high
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 238
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Innovative and Rapid Development
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 241
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Myth of Low Cost
Presumed to be chief advantage of GNU/Linux
deployment
Nearly always true when replacing Unix
Tsutaya Online: 1/4 to 1/5 cost reduction
Amazon.com: Saved $17 million
TCO gap with Windows is small and debatable
Inadequate experience and lack of thorough discussion
for meaningful comparison of desktops costs
Focus ends up being on maintenance costs
Maintenance of middleware and applications
Cost of administrative engineers
Once technology is created to easily manage multiple
desktops
Desktop tug-of-war between Windows and GNU/Linux
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 242
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Evaluating Total Cost of Ownership
Upgrade costs
Usually very low
Frequently expensive for proprietary software
Hardware costs
Runs adequately on older hardware for certain
applications
Systems can be tuned to adequately run on low spec
PCs
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 244
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Cost Disadvantages of FOSS
Frequently identified cost disadvantages
Training costs
Users are generally conservative and resist migrating from
a familiar environment to a new environment
Lack of textbooks and reference material for mastering
FOSS
Support costs
High cost of support due to limited supply of FOSS
engineers
Costs are going to decrease as FOSS becomes more common
Systems modification costs
Servers may need to be modified
Some systems only designed to work with specific clients
FOSS clients may not work within such systems
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 245
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Vendor Lock-In
What is vendor lock-in
An environment or situation that locks in users to
products from a specific vendor
What are the problems with vendor lock-in?
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 247
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Examples of Lock-In Business
Strategies
Rewards programs Mobile phone carriers and ISPs
Leading examples Frequently introduce new
Credit card companies models and services
Frequent flier programs Users do not wish to change
Mail order companies and mobile numbers and e-mail
mass merchandisers addresses
Everyday examples Introduction of mobile number
portability may reduce lock-in
Frequent buyer cards
advantage
from retailers
MNP: Mobile Number Portability
Restaurant coupons
Worst case of vendor lock-in
Car dealers
“One yen bid”
Preferential trade-in
Bid on first year at low cost
programs for car brands
from same manufacturer Gain highly profitable private
contracts in after the second
Frequent model changes year
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 248
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Separation of Interface and
Implementation
Separate from implementation to achieve
competition
1. Derive necessary functions and separate into modules.
2. For each module, separate the interface and implementation.
3. Define the interface and establish it as a standard.
Separation of implementation ideally results in fair
competition
Naked implementation
The reason why FOSS is less secure
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 253
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
“Many Eyes” of Developers
Possible reasons for greater security of FOSS
Rapid response to defects
Continuous round-the-clock development by worldwide
developer base
Relatively fast response when critical vulnerabilities or
security holes are identified
Applies to actively developed FOSS projects
“Trojan horse” measures
Difficult to slip unauthorized code into source code
circulated as FOSS
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 254
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Naked Implementation
Reasons FOSS is thought to reduce security
Releasing source code provides crackers with enough
information to do harm
Easier to find errors or security holes in
implementation
Counter-argument: Release of source code enables
immediate response if security holes are discovered
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 255
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
FOSS Security Tools
GNU Privacy Guard (GPG)
PGP encryption tool from GNU
Many MUAs work with GPG
Snort, CodeSeeker
FOSS Intrusion Detection Systems (IDS)
OpenSSH
FOSS implementation of Secure Shell (SSH) protocol
Commonly used today in place of Telnet and remote
shell (rsh)
OpenSSL, GNU TLS
FOSS implementations of SSL (Secure Socket Layer)
protocol
Other tools: OpenVPN, Tripwire (system integrity
check tool), etc.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 256
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Educational Benefits
Source code as an example
Learn from the precedence of released source code
Leading source code is equivalent to an excellent text
book
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 257
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Source Code as an Example
Study concrete examples
Software design methodologies
Programming techniques
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 258
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Using a Debugger to Verify that
Source Code Runs
FOSS makes it possible to:
Obtain source code
Modify source code
Check source code
Source code that actually
runs
Important to verify using
debugger
Verify operating logic
Learn through practical
experience
Enables study using real
code
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 259
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Low Cost Development Environment
and Development Resources
Proprietary software involves tall barriers to
participation
Purchase of development tools
Purchase of development information
Fee-based training
Development resources comparatively lower
cost for FOSS
Distributions include development tools
Information available online
Training largely fee-based
Risks for software technology acquisition under
FOSS
Time and effort
Ability to control risks yourself is where FOSS excels in
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 260
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Educational Benefits of Communities
Rules of communities
Give-and-take of information
Observe netiquette
Prevent flame wars from occurring
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 262
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Necessity of Sustainable Software
Development
Sustainable software development is necessary as long
as users wish to use software
Defects in software discovered on daily basis
Security holes cause problems for others
OK to end development of tried-and-tested software*?
*Tried-and-tested software: Software in which almost all bugs
have been worked out
Are there any issues with suspending software
development?
→ Yes, there are
Reasons
Changes in surrounding environment including OS, dependent
libraries, etc.
Software must be adapted to support to these changes
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 264
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Scientific Progress and Advancement
of Software
Advancement of software and scientific progress
fundamentally similar
Compare the following points
Scientific progress
Knowledge shared and expanded through publication
of papers
Test theory through use of corroborative experiments
Pointless to conduct the same research afterwards
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 265
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
For the Advancement of Software
Freedom of FOSS
The freedom to run the program, for any purpose
The freedom to study how the program works, and adapt it
to your needs
The freedom to redistribute copies so you can help your
neighbor
The freedom to improve the program, and release your
improvements to the public, so that the whole community
benefits
Above four kinds of freedoms prescribed by FSF’s The Free
Software Definition
Copyleft is abstract expression of four kinds of freedom
GPL expresses four kinds of freedom as concrete license