TLS

Open-source projects categorized as TLS

Transport Layer Security (TLS), the successor of the now-deprecated Secure Sockets Layer (SSL), is a cryptographic protocol designed to provide communications security over a computer network.

Top 23 TLS Open-Source Projects

  • Caddy

    Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS

  • Project mention: Caddy 2.8 | news.ycombinator.com | 2024-05-29
  • mkcert

    A simple zero-config tool to make locally trusted development certificates with any names you'd like.

  • Project mention: Ubuntu上默认证书库是怎么回事 | dev.to | 2024-06-01
  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • mitmproxy

    An interactive TLS-capable intercepting HTTP proxy for penetration testers and software developers.

  • Project mention: Apple's M4 Has Reportedly Adopted the ARMv9 Architecture | news.ycombinator.com | 2024-05-24

    Mainly this was just myself getting irritated at MS Teams and trying to figure out what it was doing. It was a couple years ago and my current company doesn't use teams, thankfully, so I can't really see if its still valid.

    From what I remember..

    There are files on the disk that get updated/overwritten with pulls from the server every time it launches. Somewhere in AppData I think. A few of these are config files (with lots of interesting looking settings, including beta features).

    One of the config entries specifies a telemetry endpoint (which, you _could_ figure out with a network tracing tool but there are a ton of MS telemetry endpoints your machine is probably talking to. Best to just grab the one explicitly being used from the config like this). I forget the full name of the setting but the name pretty clearly indicates its for telemetry, and the file is clearly a config file. If you can't find it just by browsing the structure, try a multi-file search tool and look for 'telemetry' or URL/hostnames.

    You can't really change the value on disk and make it just take effect from there, since it gets downloaded from the server and overwritten before Teams loads. There might be some tricks you can do locally to persist the change but nothing seemed to work for me. You could override response from server via mitmproxy but that requires finding where it comes across the wire at launch time and then building a script/config to replace it.

    Anyway, you can block that telemetry endpoint from a firewall and see your memory bloat. Or you can intercept that endpoint in any mitm proxy. I went with this [mitmproxy](https://mitmproxy.org/). From there you can capture the content it sends to the endpoint, or even change the response the server sends (Teams just seems to expect a 200 code back).

    The telemetry data itself is some kind of streaming event format. I think I even found documentation on the structure on some microsoft website, so its likely a reused format.

    It's pretty straightforward.

    I couldn't spend too much time on it and now it's not something I even use, but some cool things you might want to try if you dive deeper into this:

    - Overwrite the config file as it returns from the server, to turn on EU data protection, change various functionality you're not supposed to, or flip some feature flags.

    - Figure out if there's a feature flag or even other overwrite to fully disable the metrics so they aren't even collected, from anywhere in the app.

    - Intercept telemetry, return an 'OK' response and drop the data from telemetry, or maybe document what they collect more definitively if you think there's interest somewhere. This keeps your privacy but doesn't really do anything for performance.

    - Interfere with the data before actually returning it, maybe try playing with event contents and channel/user indicators. Microsoft probably won't like this if they notice, but it's unlikely they'll even notice.

  • OpenSSL

    TLS/SSL and crypto library

  • Project mention: Local Reverse Proxy | dev.to | 2024-05-30

    If you're going to use a custom local domain name, you might as well use a self-signed SSL certificate. I'll use OpenSSL for this:

  • Xray-core

    Xray, Penetrates Everything. Also the best v2ray-core, with XTLS support. Fully compatible configuration.

  • Project mention: WireGuard client that exposes itself as a HTTP/SOCKS5 proxy | news.ycombinator.com | 2024-04-01

    - [xray](https://github.com/xtls/xray-core)

  • goproxy

    🔥 Proxy is a high performance HTTP(S) proxies, SOCKS5 proxies,WEBSOCKET, TCP, UDP proxy server implemented by golang. Now, it supports chain-style proxies,nat forwarding in different lan,TCP/UDP port forwarding, SSH forwarding.Proxy是golang实现的高性能http,https,websocket,tcp,socks5代理服务器,支持内网穿透,链式代理,通讯加密,智能HTTP,SOCKS5代理,黑白名单,限速,限流量,限连接数,跨平台,KCP支持,认证API。

  • gost

    GO Simple Tunnel - a simple tunnel written in golang

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • brook

    A cross-platform programmable network tool

  • cert-manager

    Automatically provision and manage TLS certificates in Kubernetes

  • Project mention: Clusters Are Cattle Until You Deploy Ingress | dev.to | 2024-05-30

    Bart: Our numerous podcast discussions with seasoned professionals show that GitOps has been a recurring theme in about 90% of our conversations. Almost every guest we've interviewed has emphasized its importance, often mentioning it as their primary tool alongside other essentials like cert manager, Kyverno, or OPA, depending on their preferences.

  • SoftEther

    Cross-platform multi-protocol VPN software. Pull requests are welcome. The stable version is available at https://github.com/SoftEtherVPN/SoftEtherVPN_Stable.

  • fq

    jq for binary formats - tool, language and decoders for working with binary and text formats

  • Project mention: How to Use JSON Path | news.ycombinator.com | 2024-05-03

    I see, thanks for replying and no worries! yeap some of the "self-describing" formats like msgpack, cbor etc will because of how fq works have to be decoded into something more of a meta-msgpack etc.

    About blobs, if you want to change how (possibly large) binaries are represented as JSON you can use the bits_format options, see https://github.com/wader/fq/blob/master/doc/usage.md#options, so fq -o bits_format=md5 torepr ...

    I can highly recommend to learn jq, it's what makes fq really useful, and as a bonus you will learn jq in general! :)

  • Xray_onekey

    Xray 基于 Nginx 的 VLESS + XTLS 一键安装脚本

  • ecapture

    Capturing SSL/TLS plaintext without a CA certificate using eBPF. Supported on Linux/Android kernels for amd64/arm64.

  • testssl.sh

    Testing TLS/SSL encryption anywhere on any port

  • Project mention: Badssl.com | news.ycombinator.com | 2024-03-02

    You’re in luck because such a tool exists :) https://testssl.sh/

  • trojan-go

    Go实现的Trojan代理,支持多路复用/路由功能/CDN中转/Shadowsocks混淆插件,多平台,无依赖。A Trojan proxy written in Go. An unidentifiable mechanism that helps you bypass GFW. https://p4gefau1t.github.io/trojan-go/

  • lego

    Let's Encrypt/ACME client and library written in Go

  • Project mention: Take a look at traefik, even if you don't use containers | news.ycombinator.com | 2024-05-05

    This is one area where I've found nixos to be really helpful. I can set this up with just adding some lines to the configuration.nix (which uses [lego](https://github.com/go-acme/lego) and letsencrypt in the backend):

    ```nix

  • certificates

    🛡️ A private certificate authority (X.509 & SSH) & ACME server for secure automated certificate management, so you can use TLS everywhere & SSO for SSH.

  • Project mention: You shouldn't run NSA-grade Wi-Fi at home | news.ycombinator.com | 2024-01-04

    You can roll your own with https://github.com/smallstep/certificates. We maintain major open source projects and contribute a lot to other projects. I don’t think that means everything we do has to be open source. Sorry this one wasn’t. Doing this in pure open source would be a book, not a blog post.

    Love Let’s Encrypt — we’re sponsors — but using them for WiFi is a terrible idea. You need internal PKI for WiFi.

  • Ponzu

    Headless CMS with automatic JSON API. Featuring auto-HTTPS from Let's Encrypt, HTTP/2 Server Push, and flexible server framework written in Go.

  • rustls

    A modern TLS library in Rust

  • Project mention: Pingora: HTTP Server and Proxy Library, in Rust, by Cloudflare, Released | news.ycombinator.com | 2024-02-28
  • Twisted

    Event-driven networking engine written in Python.

  • boulder

    An ACME-based certificate authority, written in Go.

  • Project mention: Trying to do something a bit crazy | /r/homelab | 2023-06-04

    There's no reason you couldn't run your own ACME server (the Let's Encrypt folk publish an open source one, boulder, but there's plenty of others). Then you can just use certbot in your VMs to manage certificates, configured to point to your CA server instead of the Let's Encrypt one.

  • forge

    A native implementation of TLS in Javascript and tools to write crypto-based and network-heavy webapps (by digitalbazaar)

  • Project mention: Forge: Native implementation of TLS in JavaScript for web apps | news.ycombinator.com | 2024-03-24
  • mbedTLS

    An open source, portable, easy to use, readable and flexible TLS library, and reference implementation of the PSA Cryptography API. Releases are on a varying cadence, typically around 3 - 6 months between releases.

  • Project mention: OpenWrt 23.05 | news.ycombinator.com | 2023-10-13

    It's work in progress: https://github.com/Mbed-TLS/mbedtls/blob/development/docs/ar...

    Newer version have okay-ish support, I'd guess the next OpenWRT release will have it again.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

TLS related posts

  • Ubuntu上默认证书库是怎么回事

    1 project | dev.to | 1 Jun 2024
  • A minimal TLS 1.2 implementation in a pure Bash script

    1 project | news.ycombinator.com | 30 May 2024
  • How to Resolve Node.js ERR_OSSL_EVP_UNSUPPORTED Error

    1 project | dev.to | 28 May 2024
  • A minimal TLS 1.2 client implementation in a pure Bash script

    1 project | news.ycombinator.com | 9 May 2024
  • HTTPS on Localhost with Next.js

    3 projects | dev.to | 29 Apr 2024
  • Mkcert: Simple zero-config tool to make locally trusted development certificates

    1 project | news.ycombinator.com | 26 Apr 2024
  • Heartbleed and XZ Backdoor Learnings: Open Source Infrastructure Can Be Improved Efficiently With Moderate Funding

    2 projects | dev.to | 7 Apr 2024
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 2 Jun 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Index

What are some of the best open-source TLS projects? This list will help you:

Project Stars
1 Caddy 54,706
2 mkcert 46,330
3 mitmproxy 34,737
4 OpenSSL 24,449
5 Xray-core 22,300
6 goproxy 15,317
7 gost 15,301
8 brook 14,313
9 cert-manager 11,592
10 SoftEther 11,161
11 fq 9,441
12 Xray_onekey 9,206
13 ecapture 8,302
14 testssl.sh 7,693
15 trojan-go 7,477
16 lego 7,362
17 certificates 6,246
18 Ponzu 5,648
19 rustls 5,593
20 Twisted 5,455
21 boulder 5,017
22 forge 4,982
23 mbedTLS 4,983

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com