Understanding Computer Security: Challenges and Solutions
The Challenges of Computer Security
Computer security is both fascinating and complex. Some of the reasons follow:
- Complexity: Computer security is not as simple as it might first appear. The requirements seem straightforward; indeed, most of the major requirements for security services can be given self-explanatory one-word labels: confidentiality, authentication, non-repudiation, integrity. But the mechanisms used to meet those requirements can be quite complex, and understanding them may involve rather subtle reasoning.
- Potential Attacks: In developing a particular security mechanism or algorithm, one must always consider potential attacks on those security features. Successful attacks are often designed by looking at the problem in a completely different way, therefore exploiting an unexpected weakness in the mechanism.
- Counterintuitive Procedures: The procedures used to provide particular services are often counterintuitive. Typically, a security mechanism is complex, and it is not obvious from the statement of a particular requirement that such elaborate measures are needed. It is only when the various aspects of the threat are considered that elaborate security mechanisms make sense.
- Placement of Mechanisms: Having designed various security mechanisms, it is necessary to decide where to use them. This is true both in terms of physical placement (e.g., at what points in a network are certain security mechanisms needed) and in a logical sense (e.g., at what layer or layers of an architecture such as TCP/IP (Transmission Control Protocol/Internet Protocol) should mechanisms be placed).
- Secret Information: Security mechanisms typically involve more than a particular algorithm or protocol. They also require that participants be in possession of some secret information (e.g., an encryption key), which raises questions about the creation, distribution, and protection of that secret information. There may also be a reliance on communications protocols whose behavior may complicate the task of developing the security mechanism. For example, if the proper functioning of the security mechanism requires setting time limits on the transit time of a message from sender to receiver, then any protocol or network that introduces variable, unpredictable delays may render such time limits meaningless.
- Battle of Wits: Computer security is essentially a battle of wits between a perpetrator who tries to find holes and the designer or administrator who tries to close them. The great advantage that the attacker has is that he or she need only find a single weakness while the designer must find and eliminate all weaknesses to achieve perfect security.
- Perception of Benefit: There is a natural tendency on the part of users and system managers to perceive little benefit from security investment until a security failure occurs.
- Constant Monitoring: Security requires regular, even constant, monitoring, and this is difficult in today’s short-term, overloaded environment.
- Afterthought: Security is still too often an afterthought to be incorporated into a system after the design is complete rather than being an integral part of the design process.
- Impediment to Efficiency: Many users and even security administrators view strong security as an impediment to efficient and user-friendly operation of an information system or use of information.