Jul 18, 2024 · 2 min read

How do you handle security for Software applications?

Security in Software is similar to security in real-world.

I was having a conversation about this with a business owner looking to build their application, some months ago.

Security in Software is similar to security in real-world. No system is 100% fool proof, and so our best bet is to make the system so difficult to hack, that it will take a lot of time, energy and resources for someone to breach.

Understanding Security with a Real-World Analogy

Let us understand this with an analogy of real world security:

A shop with multiple levels of security:

  • Level 0: Without doors
  • Level 1: With doors, but no locks
  • Level 2: With doors and also locks
  • Level 3: With multiple doors/layers, and multiple locks
  • Level 4: Multiple doors + locks + watch guard
  • Level 5: Multiple doors + locks + watch guard + CCTV and Alarms

I hope you get the point.

As and when we increase the security, it becomes increasing difficult for someone to breach into a shop.

Applying This to Software

Similarly in tech too, with enough time, resources and brute-force, any system can be hacked. Our goal must be ensure that our systems should take a very very long time for someone to break.

This is the reason a lot of apps have criteria for passwords to have lowercase, uppercase, numbers, special characters, since then it will take a lot of time, energy and resources for attacker to hack into the system.

Moreover, since it will take a lot of time, while the attackers are in the process of breaking the systems, we will be alerted, so we can take even more measures to secure.

There are of-course a lot of other things to security as well, and this was only an introduction. More to cover in the upcoming posts.

How do you handle security for Software applications?

Need to untangle a problem?

Bring your architecture, infrastructure, systems, software questions/problems to a focused conversation.

Book a conversation