Friday, November 29, 2013

Cryptography and Computer Security


Did you buy anything online recently? Use an ATM machine? If so, whether you know it or not, you used cryptography. Cryptography (in the guise of the SSL protocol) protects your credit card information as it whizzes across the Internet, and ensures that others can't withdraw money from your account.

Our computers help us stay connected to the modern world. We use them for banking and bill paying, shopping, connecting with our friends and family through email and social networking sites, surfing the internet, and so much more. We rely so heavily on our computers to provide these services that we sometimes overlook their security. Because our computers have such critical roles in our lives and we trust them with so much personal information, it’s important to improve their security so we can continue to rely on them and keep our information safe.

Attackers can infect your computer with malicious software, or malware, in many different ways. They can take advantage of unsafe user practices and flaws in your computer’s programs (flaws including vulnerabilities and unsecured services and features) and use social engineering (in which an attacker convinces someone to perform an action such as opening a malicious email attachment or following a malicious link). Once your computer is infected, intruders can use the malware to access your computer without your knowledge to perform unwanted actions. They can steal your personal information, change computer configurations, cause your computer to perform unreliably, and install even more malware they can use to leverage attacks or spread malware to others.

Cryptography refers to encryption, where the ordinary message is process based on some algorithm into unintelligible text called as cipher text. The main purpose of encryption here is to provide confidentiality, integrity, non-repudiation and authentication.

Following practice will make you to keep your computer secure
·         Connect to secure network
·         Enable and configure firewall
·         Install Antivirus
·         Remove unnecessary software
·         Operate under the least privilege
·         Apply software update

Ref:-

Sunday, November 24, 2013

Artificial Intelligence


Before we get into What Artificial intelligence, let’s first understand what is intelligence? Intelligence is usually said to involve mental capabilities such as the ability to reason, plan, solve problem, think abstractly, comprehend ideas and language and learn.

Now what is Artificial Intelligence? , Intelligence exhibited by an artificial entity. [Wikipedia]
AI can also be defined as the area of computer science that deals with the ways in which computers can be made to perform cognitive functions ascribed to humans. But this definition does not say what functions are performed, to what degree they are performed, or how these functions are carried out.

Computer cannot easily deal with abstract idea like we human do, we must define the concrete rule in the form of algorithm for computer to follow.

AI draws heavily on following domains of study.
·         Computer Science
·         Cognitive Science
·         Engineering
·         Ethics
·         Linguistics
·         Logic
·         Mathematics
·         Natural Sciences
·         Philosophy
·         Physiology
·         Psychology
·         Statistics
Where can AI applied?
·         Robotics
·         Internet search
·         Scheduling
·         Planning
·         Logistics
·         HCI
·         Games
·         Auction design
·         Diagnosis
·         General reasoning
It is true that AI does not yet achieve its ultimate goal. Still AI systems could not defeat even a three year old child on many counts: ability to recognize and remember different objects, adapt to new situations, understand and generate human languages, and so on. The main problem is that we, still could not understand how human mind works, how we learn new things, especially how we learn languages and reproduce them properly.

AI: will it attain human-level or above human-level intelligence or not.

Example : Personal Assistant SIRI  http://en.wikipedia.org/wiki/Siri



Ref: 
http://intelligence.worldofcomputing.net/tag/introduction
http://en.wikipedia.org/wiki/Artificial_intelligence

Friday, November 15, 2013

About Computer Science?

Computer Science is concerned with "the study of symbol-manipulating machines, with communication between man and machine and with the application of these machines".

Who invented the computer? Answer to this question would not be simple enough, the real answer is that many inventors contributed to the history of computers and defining computer as a complex piece of machinery made up of many parts used to solve complex problems.

Thirty year ago the most common interaction with computer was via punch card and type writer-styled terminals. The most dramatic developments have been the integration of technologies , such as low-cost, high-capacity storage media, high-definition video and audio processors, touch sensitive displays, motion sensors, compression algorithms, to name just a few of the majors.



Evolution:- Computer science is a branch of Mathematics which generally consists of theoretical foundation of information and computation. Focus on practical implementation and teach us how to implement and apply this information in real world like theoretical aspects of algorithms to practical aspect of implementing these algorithms. Computer Science can be viewed as the science of problem solving, designing, analyzing and verifying the solutions.

Computer Science has connection to other disciplines or other industry domains like Consumer goods, health care, insurance and banking domain, for which finding a solution requires both computer science expertise and knowledge of particular domain. This result in wide range of specialties like computer architect, System Engineer, Software engineer, graphics expert and so on, where each specific area focuses on particular challenges. 

For more Info:-
1) History of computer science link
2) What is Computer Science? link
3) Evolution of Computer Science link

Friday, November 8, 2013

File Sharing

Digital reading will completely take over. It's lightweight and it's fantastic for sharing. Over time it will take over.
 – Bill Gates

File sharing is the practice of making files available for other individual to download. The most common method of file sharing, is the use of peer- to –peer software. This includes software such as Limewire, Morpheus, DropBox and BitTorrent. P2P Software package are installed as a standalone application on computer and appear somewhat innocuous in their behavior; you install them and then use these programs to download “Free” music, video etc. In addition, your computer becomes part of this network as well, enabling other individuals on the Internet to begin downloading music/files/e-books from your computer.

Other ways of file sharing over the internet such as:
  •           HTTP File hosting sites (RapidShare, Fileserve, ADrive, etc.)
  •          FTP servers
  •          Email storage space (sharing files -- Hotmail, Gmail, etc.)


The probable security concern in file sharing
  • Installation of malicious code
  • Exposure of sensitive or personal information
  • Susceptibility to attack
  • Denial of service
  • Prosecution
  • Provide covert channel 
 Its you are being held responsible for downloading and distributing copyrighted material illegally.

How to minimize these risks
  •   Use of anti-virus software
  •   Install or enable a firewall
  •  Use Authorize access control list.
 list of most popular file sharing website http://www.ebizmba.com/articles/file-sharing-websites
File sharing http://www.business.ftc.gov/documents/bus46-peer-peer-file-sharing-guide-business#risks


Friday, November 1, 2013

Data Structure


Data structure is important since it dictate the type of operation we can perform on the data and how efficiently they can be carried out. It also dictate how dynamic we can be in dealing with our data; for example it dictates if we can add additional data on the fly or if we need to know about all of the data up front. We determine which data structure to use to store our data only after we have carefully analyzed the problem as know at least what it is we hope to do with data; for example if we will require random access or sequential access or the ability to move both forward and backward through the data.

Purpose of data structure
·        To store and retrieve information
·        Efficient processing
·        Study of data structure and algorithm

Why Data structure – Complex design require careful and efficient program design. Analysis on correct algorithms are performed in order to estimate how much resource (computer memory, Processing time etc) are consumed by the algorithm. This will help us to look into different better ways to design the algorithm which would reduce the resource consumption, thus making the algorithm efficient.Data Structure require, space to store data item, Time  to perform each operation and programming effort.

Therefore one should need to know about data structures and algorithms. They are the fundamental building blocks of programs. Anyone can learn the syntax of a programming language, but to actually write meaningful programs, you have to understand how to use data structures and algorithms