The 42 Principles · Principle XXVII

Security Begins in Design

Security, privacy, identity, least privilege, layered defense, and protecting people as a design responsibility.

Foundational Truth

Security is not a feature.

It is not a product.

It is not a firewall.

It is not an antivirus application.

It is not something added after the system has already been built.

Security begins with design.

Every architectural decision either strengthens the system or creates another opportunity for it to fail.

Every exposed service.

Every shared credential.

Every unnecessary permission.

Every undocumented interface.

Every forgotten certificate.

Every unmanaged secret.

Every dependency.

Every assumption.

Each one contributes to the security posture of the entire system.

The strongest organizations do not build systems first and secure them later.

They build secure systems from the beginning.

Security is not added to a design. Security is part of the design.


Tomorrow Is Already Coming

Every generation believes its security standards are strong enough.

History repeatedly proves otherwise.

There was a time when 56-bit DES encryption was considered commercially sufficient.

Today it can be broken in practical time with modern hardware.

Keys that once required specialized equipment to attack can now be challenged by consumer-grade computing resources.

Processing power continues to improve.

GPUs perform massively parallel operations that were unimaginable only a generation ago.

Specialized hardware accelerates cryptographic workloads.

Artificial intelligence assists in discovering vulnerabilities, analyzing code, and identifying attack paths.

The world does not stand still.

Neither do attackers.

A security decision made today may still be protecting data twenty-five years from now.

Design accordingly.


Build for the Future You Cannot See

Today's strongest algorithms will eventually become tomorrow's legacy systems.

That does not mean today's protections are inadequate.

It means they should never be assumed permanent.

Strong engineering anticipates change.

Keys should be replaceable.

Certificates should be renewable.

Secrets should be rotatable.

Authentication methods should evolve.

Systems should support cryptographic agility instead of assuming one algorithm will remain sufficient forever.

Good security architecture expects improvement.

Great security architecture expects replacement.

Design so that your security can evolve without rebuilding your entire system.


Security Is Layers with Purpose

Effective security is not created by collecting products.

It is created by combining complementary controls.

Authentication confirms identity.

Authorization limits capability.

Least privilege reduces exposure.

Network segmentation limits movement.

Encryption protects confidentiality.

Logging creates visibility.

Monitoring creates awareness.

Backups preserve recovery.

Testing validates assumptions.

Each layer exists because it solves a different problem.

The objective is not to accumulate security tools.

The objective is to understand the threat each control addresses and ensure those controls work together.

Security is strongest when every layer has a clear purpose.


Convenience Is the Enemy of Secure Design

Many security failures begin as attempts to make life easier.

Shared administrator accounts.

Passwords stored in configuration files.

Long-lived credentials.

Disabled MFA.

Broad permissions.

Permanent exceptions.

Temporary workarounds that quietly become permanent architecture.

Every shortcut feels justified when viewed in isolation.

Together they become the attack surface.

Convenience should never become the default design principle.


The Cost of Waiting

Security postponed is rarely security completed.

Retrofitting authentication is harder than designing for it.

Retrofitting encryption is harder than designing for it.

Retrofitting logging is harder than designing for it.

Retrofitting least privilege is harder than designing for it.

Every delay increases cost.

Every assumption compounds risk.

The cheapest time to solve most security problems is before the first deployment.


Think Beyond Today's Threats

The computing landscape continues to evolve.

Quantum computing is progressing from research laboratories toward practical applications.

Artificial intelligence continues to accelerate software development, vulnerability research, and automation.

New technologies create new opportunities.

They also create new risks.

No one can predict exactly when these advances will change practical security requirements.

Engineers do not need to predict the exact timeline.

They need to design systems capable of adapting when that timeline arrives.

Security should not depend upon today's limitations remaining true forever.


Closing Thought

A secure system is not one that has never been attacked.

It is one that was designed with the expectation that attacks will continue to evolve.

Build for today's threats.

Prepare for tomorrow's capabilities.

Leave room for security to become stronger than it is today.

The strongest security is not the security that survives today. It is the security that can still adapt tomorrow.

Secure by Default

The strongest security controls are often the ones users never notice.

A secure system should require less effort to use correctly than incorrectly.

Authentication should be enabled.

Encryption should already be configured.

Certificates should already be trusted.

Secrets should never appear in source code.

Permissions should begin with the minimum necessary access.

Logging should already exist before the first incident occurs.

When security becomes optional, convenience usually wins.

Design the secure path to be the easiest path.

The safest system is the one that makes the secure choice the default choice.


Trust Must Be Earned

One of the oldest assumptions in computing was that anything inside the network could be trusted.

Modern systems have shown how dangerous that assumption can become.

Networks grow.

Organizations merge.

Employees work remotely.

Cloud providers connect environments across continents.

Partners require temporary access.

Applications communicate through APIs.

The perimeter becomes increasingly difficult to define.

Trust should therefore never be granted simply because something exists inside a particular network.

Every request should prove who it is.

Every action should prove it is authorized.

Every privilege should be intentional.

Trust is no longer a location.

Trust is a continuously evaluated decision.


Design for Least Privilege

Every permission granted creates opportunity.

Every unnecessary permission creates unnecessary risk.

A user should possess only the access required to perform today's responsibilities.

Nothing more.

Applications should receive only the permissions they actually use.

Services should communicate only with systems they genuinely require.

Administrators should elevate privileges only when necessary.

Least privilege is not about limiting productivity.

It is about limiting consequences.

When compromise eventually occurs, the damage should remain as small as possible.

Good security assumes compromise is possible. Great security limits what compromise can become.


Secrets Are Temporary

Passwords.

API keys.

Certificates.

Access tokens.

Encryption keys.

Connection strings.

These are all secrets.

Every secret should be treated as temporary.

Secrets should never be hard-coded.

Never emailed.

Never stored inside documentation.

Never committed into source control.

Every secret should have:

  • A clear owner.
  • A defined purpose.
  • A secure storage location.
  • A rotation strategy.
  • A replacement procedure.
  • An expiration plan.

The goal is not merely protecting secrets.

It is ensuring they can safely change.


Observe Before You Need To

Many organizations begin improving logging after experiencing a security incident.

By then, the opportunity to collect useful evidence may already be gone.

Observability should begin during design.

Successful authentication.

Failed authentication.

Privilege changes.

Configuration modifications.

Administrative actions.

Certificate renewals.

Unexpected network connections.

These events should already be visible before anyone needs them.

Security without visibility is largely based upon hope.

Hope is not a security strategy.


Recovery Is Part of Security

Security is often associated with prevention.

Prevention matters.

Recovery matters just as much.

Can you restore encrypted data?

Can you recover deleted secrets?

Can you revoke compromised credentials?

Can you rotate certificates quickly?

Can you rebuild infrastructure from trusted code?

Can you recover within your required recovery objectives?

If the answer is no, then security planning is incomplete.

The ability to recover from compromise is one of the strongest security controls an organization can possess.


Security Is an Ongoing Design Decision

Security is never finished.

Every software update changes the environment.

Every new dependency changes the attack surface.

Every employee changes organizational knowledge.

Every new technology changes what attackers can accomplish.

Secure systems evolve because the people responsible for them continue evaluating assumptions.

Yesterday's best practice eventually becomes tomorrow's legacy design.

The architecture should make improvement expected rather than disruptive.


Closing Thought

Secure design is not about building walls that never fall.

It is about building systems that continue protecting people even as the world around them changes.

Security should not depend upon yesterday's assumptions remaining true.

It should expect tomorrow to be different.

The strongest security architecture is not the one that never changes. It is the one that was designed to keep changing.

Security Is the Preservation of Trust

When most people hear the word security, they immediately think about hackers.

Firewalls.

Encryption.

Passwords.

Viruses.

Those are certainly part of security.

They are not its purpose.

The true purpose of security is preserving trust.

Customers trust that their personal information remains private.

Employees trust that company data is protected.

Patients trust that their medical history remains confidential.

Citizens trust that critical infrastructure continues operating.

Families trust that their home remains safe.

Every security control ultimately protects a relationship built upon trust.

Without trust, systems stop being used.

Without trust, businesses lose customers.

Without trust, organizations lose their reputation.

Technology protects information.

Security protects confidence.

Security exists to preserve trust.


Reputation Is a Security Asset

Many organizations think of security as an expense.

It is better understood as an investment.

A company may spend years building a trusted reputation.

One preventable breach can damage that reputation overnight.

Customers rarely remember the encryption algorithm that protected their information.

They remember whether their information was exposed.

Reputation is one of the few assets that becomes more valuable over time.

It is also one of the easiest to lose.

That is why security decisions are rarely just technical decisions.

They are business decisions.

Leadership decisions.

Ethical decisions.

Every safeguard protects more than data.

It protects confidence.


Security Is Stewardship

Engineers often protect information they do not own.

Medical records.

Financial information.

Customer identities.

Trade secrets.

Government records.

Research.

Personal conversations.

That information belongs to someone else.

We are merely its caretakers.

Stewardship carries responsibility.

The question is not:

"Can I access this information?"

The question is:

"Should I?"

The strongest security cultures are built upon responsibility rather than permission.

Technology enforces rules.

Character determines how those rules are used.


Design for the Person Who Comes After You

Every secure system eventually changes hands.

Someone inherits your architecture.

Someone rotates your certificates.

Someone renews your secrets.

Someone investigates the next security incident.

Someone patches the next vulnerability.

Your responsibility extends beyond today's deployment.

Document the reasoning behind security decisions.

Explain why permissions exist.

Record key rotation procedures.

Describe recovery processes.

Teach the next engineer.

A secure system that nobody understands eventually becomes an insecure system.

Knowledge is one of the most important security controls an organization possesses.


Security Is a Living Discipline

Threats evolve.

Technology evolves.

Organizations evolve.

Attackers evolve.

Security must evolve with them.

Yesterday's strongest password policy becomes today's baseline.

Today's encryption eventually becomes tomorrow's legacy algorithm.

Today's best practices become tomorrow's historical lessons.

That is not failure.

That is progress.

The purpose of security is not to remain unchanged.

The purpose is to remain effective.


Security Extends Beyond Technology

The same Principle appears everywhere.

Parents secure their homes before leaving.

Banks secure financial transactions before approving them.

Pilots verify aircraft before departure.

Hospitals verify patient identity before treatment.

Nations secure critical infrastructure before crisis occurs.

The details change.

The philosophy remains.

Protect what matters before someone reminds you why it mattered.


Questions to Ask Yourself

  • What trust am I protecting?
  • What assumptions does this design depend upon?
  • If today's strongest control weakens tomorrow, can the system adapt?
  • Would I trust my own family with this design?
  • What information has been entrusted to me?
  • Have I made the secure path the easiest path?
  • Will the next engineer understand why these decisions were made?

Closing Thought

Security is not about fearing the future.

It is about preparing for it.

Every thoughtful design decision today becomes confidence tomorrow.

The strongest systems are not those that never change.

They are those that continue earning trust as the world changes around them.

Protect the trust, and the technology will have something worth defending.

Founder's Commentary

We Were Never Protecting Servers

When I first entered IT, I thought security was about computers.

Firewalls.

Antivirus.

Passwords.

Encryption.

Certificates.

The longer I worked in this industry, the more I realized those things were never the real objective.

They were simply the tools.

The real responsibility was protecting people.

Every server I managed contained someone's information.

Every database represented years of work.

Every backup protected someone's livelihood.

Every authentication system represented a person's identity.

Every firewall ultimately existed because someone trusted us to protect what mattered to them.

That realization changes the way you approach engineering.

You stop asking whether a control is technically impressive.

You begin asking whether it genuinely reduces risk.

You stop collecting security products because they look good in architecture diagrams.

You begin building systems people can actually operate, understand, and maintain.

Good security is rarely glamorous.

Most of the time it looks like discipline.

Applying patches before anyone notices they are missing.

Rotating certificates before they expire.

Removing permissions nobody should have retained.

Replacing outdated encryption before it becomes tomorrow's headline.

Documenting recovery procedures before they are desperately needed.

Testing backups before someone depends upon them.

None of those tasks make exciting conference presentations.

Yet those are the decisions that quietly prevent disasters.

One lesson has stayed with me throughout my career.

Attackers only have to succeed once.

Defenders must succeed every day.

That reality can feel overwhelming.

Until you remember something equally important.

Most successful attacks do not begin because attackers were brilliant.

They begin because defenders assumed they had more time.

One postponed patch.

One forgotten certificate.

One shared administrator account.

One API key committed into source control.

One exception that quietly became permanent.

Security failures are often the accumulation of small compromises rather than one catastrophic mistake.

That is why I believe security is fundamentally a design problem.

Well-designed systems make the secure decision the natural decision.

Poorly designed systems rely upon people remembering every detail forever.

Eventually, people forget.

Systems should not depend upon perfect memory.

They should support imperfect humans.

The strongest security culture I have ever experienced was never built upon fear.

It was built upon ownership.

Every engineer understood that they were protecting something that belonged to someone else.

A patient's medical history.

A family's financial information.

A company's intellectual property.

A child's personal identity.

The technology changed.

The responsibility never did.

Looking back, I don't measure successful security by the number of attacks we stopped.

Most of those stories are invisible.

I measure it by the trust that was never broken.

By the customers who never had to wonder whether their information was safe.

By the organizations that continued operating because someone took security seriously long before there was an emergency.

That's the paradox of good security.

When you do it well, nobody notices.

Nothing happens.

And that is exactly the outcome you were hoping for.

The greatest success in security is often the disaster that never happened because someone cared enough to design the system correctly from the beginning.


Related Principles

Continue the idea.

These Principles share themes with Principle XXVII.