Skip to Content
OpenVAPTAlpha
Pre-release. Academic, non-commercial, source-available code built by AI Cybersecurity Engineers. Free for your own use, 100% at your own risk. This website collects no data. Read MoreRead Less
Pre-release. OpenVAPT has no Stable release yet. Every build is an Alpha, Beta or Release Candidate: it may be incomplete or wrong, so use it only on test machines, 100% at your own risk. See Release Channels
Academic, non-commercial, source-available code built by AI Cybersecurity Engineers. These are AI systems, not people or registered engineers. Free for your own personal or business use, on your own machines, 100% at your own risk. Not for sale. Not for providing services. This website collects no data. Read the Acknowledgements
Pre-release. OpenVAPT has no Stable release yet. Every build is an Alpha, Beta or Release Candidate: it may be incomplete or wrong, so use it only on test machines, 100% at your own risk. See Release Channels
Academic, non-commercial, source-available code built by AI Cybersecurity Engineers. These are AI systems, not people or registered engineers. Free for your own personal or business use, on your own machines, 100% at your own risk. Not for sale. Not for providing services. This website collects no data. Read the Acknowledgements
P4PractitionerAbout 20 minutes

TLS, Certificates and HTTPS

How encryption in transit works in practice, which TLS versions are acceptable, and how certificates and HSTS keep users safe.

Read First: P3

You Will Be Able To

  • Explain why TLS 1.0 and 1.1 are deprecated.
  • Recognise expired, self-signed and mismatched certificates.
  • Explain what HSTS and HTTP-to-HTTPS redirects protect against.

Protocol Versions

TLS 1.0 and 1.1 were formally deprecated by RFC 8996 in 2021. Servers should offer TLS 1.2 and TLS 1.3 only. OpenVAPT tests this by attempting handshakes limited to the old versions against 127.0.0.1.

Certificates

A certificate proves a server's identity for the names it lists. Expired, self-signed or mismatched certificates cause browser warnings, which train users to click through the very warning that protects them from interception.

HTTPS Everywhere

Serving pages over plain HTTP lets anyone on the path read or change them. Redirecting HTTP to HTTPS, and sending Strict-Transport-Security so browsers refuse to downgrade, closes that gap.

In Summary

Offer TLS 1.2 and 1.3 only. A certificate must match the name, be valid and be renewed in time. HSTS stops a downgrade to plain HTTP.

Apply It

These OpenVAPT checks put this module into practice. Open one to see its detection logic and source code.

Printable Worksheet · Teacher Answer Key · For Teachers · Print this page with your browser's Print command for a handout.

Also available as plain Markdown for notes, scripts and AI tools. Same facts, same source, no styling.

Lab

  1. Run: openvapt demo --only NET-TLS-,WEB-TLS-001,WEB-HDR-001
  2. On your own server: openssl s_client -connect 127.0.0.1:443 -tls1_1 </dev/null and explain the result.

Check Yourself

Answers are checked in your browser and never stored or sent.

Question 1

1. Which TLS versions should a server offer today?

Question 2

2. What does HSTS do?

Question 3

3. Why are self-signed certificates a problem on public sites?

Question 4

4. Which RFC deprecated TLS 1.0 and TLS 1.1?

Question 5

5. A valid certificate lists only www.example.com. A user visits shop.example.com on the same server. What happens?

Question 6

6. How does OpenVAPT test for old TLS versions?

References

Cite This Page

If this page helped your work, please cite it. The version and web address are filled in; the access date is today's date in your browser. Every other style, and when credit is required, is on How to Cite OpenVAPT.

APA 7
OpenVAPT. (2026). P4: TLS, Certificates and HTTPS (Version 0.1.0-alpha.6). OpenVAPT Academy. Retrieved October 16, 2026, from https://openvapt.com/academy/p4.html

In text: (OpenVAPT, 2026). Accessed: the date shown is today's date from your own browser (the site's build date without JavaScript); change it to the day you read the page.

BibTeX
@misc{openvapt_p4,
  author       = {{OpenVAPT}},
  title        = {{P4: TLS, Certificates and HTTPS}},
  year         = {2026},
  howpublished = {\url{https://openvapt.com/academy/p4.html}},
  note         = {OpenVAPT Academy, version 0.1.0-alpha.6. Accessed 16 October 2026}
}

Accessed: the date shown is today's date from your own browser (the site's build date without JavaScript); change it to the day you read the page.

Citing OpenVAPT does not mean OpenVAPT endorses, approves or has reviewed your work.