Mercurial > prosody-modules
view mod_s2s_keysize_policy/README.markdown @ 5285:8e1f1eb00b58
mod_sasl2_fast: Fix harmless off-by-one error (invalidates existing tokens!)
Problem:
This was causing the key to become "<token>--cur" instead of the expected
"<token>-cur". As the same key was used by the code to both set and get, it
still worked.
Rationale for change:
Although it worked, it's unintended, inconsistent and messy. It increases the
chances of future bugs due to the unexpected format.
Side-effects of change:
Existing '--cur' entries will not be checked after this change, and therefore
existing FAST clients will fail to authenticate until they attempt password
auth and obtain a new FAST token.
Existing '--cur' entries in storage will not be cleaned up by this commit, but
this is considered a minor issue, and okay for the relatively few FAST
deployments.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Wed, 29 Mar 2023 16:12:15 +0100 |
parents | 101078d9cc27 |
children |
line wrap: on
line source
--- summary: Distrust servers with too small keys ... Introduction ============ This module sets the security status of s2s connections to invalid if their key is too small and their certificate was issued after 2014, per CA/B Forum guidelines. Details ======= Certificate Authorities were no longer allowed to issue certificates with public keys smaller than 2048 bits (for RSA) after December 31 2013. This module was written to enforce this, as there were some CAs that were slow to comply. As of 2015, it might not be very relevant anymore, but still useful for anyone who wants to increase their security levels. When a server is determined to have a "too small" key, this module sets its chain and identity status to "invalid", so Prosody will treat it as a self-signed certificate istead. "Too small" ----------- The definition of "too small" is based on the key type and is taken from [RFC 4492]. Type bits ------ ------ RSA 2048 DSA 2048 DH 2048 EC 233 Compatibility ============= Works with Prosody 0.9 and later. Requires LuaSec with [support for inspecting public keys](https://github.com/brunoos/luasec/pull/19).