Tuesday, March 11, 2014

Cyber Security



Cyber security, otherwise known as computer or IT security, is a system of security measures implemented to safeguard computers, computer networks, and computer-based equipment from unauthorized access (malicious attacks) as well as natural disasters. According to the Department of Homeland Security, “Our daily life, economic vitality, and national security depend on a stable, safe, and resilient cyberspace” (n.d.). Cyber security is comprised of three main fields: secure operating systems, security by design, and secure coding. The foundation of a secure operating systems comes from the implementation of a kernel, a special program that serves as a gateway between a computer’s software and hardware (The Linux Information Project, para. 2). A piece of software can be considered “secure by design” if it was designed with security as the main feature. Software and applications, if not coded properly, can create detrimental vulnerabilities which in turn can be exploited by hackers. Issues such as buffer overflows and dangling pointers can be exploited by a hacker to inject and execute custom code. By combining the practices of secure operating systems, security by design, and secure coding, cyber security becomes a formidable opponent to the world of hackers and security threats.



SOURCES:
[Cyber Security]. Retrieved March 11, 2014 from
http://www.devry.edu/know-how/wp-content/uploads/2012/09/Top-5-Cyber-Security-Threats.jpg
Department of Homeland Security. (n.d.). Cybersecurity Overview. Retrieved March 11, 2014, from http://www.dhs.gov/cybersecurity-overview
The Linux Information Project. (2004). Kernel Definition. Retrieved March 11, 2014, from
http://www.linfo.org/kernel.html

Monday, March 3, 2014

Open Source Software


Open source software is computer software whose source code is made publicly available so that it may be studied, changed, and distributed to anyone and for any purpose (St. Laurent, 2008, p. 4). Open source software software can be very beneficial to beginning and seasoned developers alike. One of the best ways to learn a new programming language is to reverse engineer a program written in that specific language. Not only that but when faced with the challenge of not knowing how to do something programmatically, reverse engineering similar source code can help a developer understand what to implement within their own code. Furthermore, for a developer looking to implement a specific technology in his program, such as OCR (Optical Character Recognition), having an open source algorithm can be a great benefit to the developer as he can simply use the open source code in his program without having to spend a considerable amount of time learning how to code the underlying technology. Open source software can be especially useful when journeying into less-than-familiar territory. The world of iOS jailbreaking, for example, is a bustling scene for the end user but, on the development side, is mostly dominated by a few well known developers. As a result, there are very few guides and resources for newcomers to learn the art of iOS jailbreak development. There are, however, many open source jailbreak apps that allow developers to examine and reverse engineer their source code in order to learn and get a better understanding of how to create their own jailbreak apps. Open source software is a remarkable resource and a huge asset to both developers and the world of software development as a whole.



SOURCES:

[May The Source Be With You Tux Cartoon]. Retrieved March 3, 2014, from http://blog.hathix.com

Saint Laurent, A. M. (2008). Understanding Open Source and Free Software Licensing. Sebastopol: O'Reilly Media, Inc..