Secure Coding

What Does Secure Coding Mean?

Secure coding is the practice of writing a source code or a code base that is compatible with the best security principles for a given system and interface.


Techopedia Explains Secure Coding

IT professionals understand that each type of device technology and operating system has its own vulnerabilities to a range of security issues, including cyber-attacks and hacking. With that in mind, the principle of secure coding helps software engineers and other developers anticipate these challenges and prepare for these issues in design.

The principle of secure coding is supported by various particular categorical strategies. For example, one strategy is to "validate input" to make sure that input comes from trusted sources. Another strategy is to check for buffer overflow vulnerability. In a general sense, developers look to design a secure user interface that limits the number of backdoors, loopholes and vulnerabilities that can invite cyber-attacks.

As the security community becomes more cognizant of common hacking and cyber-attack strategies, it builds appropriate security measures into newer platforms and devices. As a result, many of the traditional vulnerabilities in PC operating system environments have been engineered out of newer mobile or smartphone interfaces. However, as hackers, cyber-attackers and other "black hat" parties are also directing more attention toward mobile, this has become the new playground for secure coding and security work.


Related Terms

Margaret Rouse

Margaret is an award-winning technical writer and teacher known for her ability to explain complex technical subjects to a non-technical business audience. Over the past twenty years, her IT definitions have been published by Que in an encyclopedia of technology terms and cited in articles by the New York Times, Time Magazine, USA Today, ZDNet, PC Magazine, and Discovery Magazine. She joined Techopedia in 2011. Margaret's idea of a fun day is helping IT and business professionals learn to speak each other’s highly specialized languages.