pve8to9 - 256 >= 2048 ?

EvertM

Renowned Member
Aug 4, 2016
33
6
73
53
evert.meulie.net
Hi all,

Can someone explain the math here? This is part of the output of the pve8to9 script.

Code:
INFO: Check node certificate's RSA key size
PASS: Certificate 'pve-root-ca.pem' passed Debian Busters (and newer) security level for TLS connections (4096 >= 2048)
PASS: Certificate 'pve-ssl.pem' passed Debian Busters (and newer) security level for TLS connections (2048 >= 2048)
PASS: Certificate 'pveproxy-ssl.pem' passed Debian Busters (and newer) security level for TLS connections (256 >= 2048)

How's 256 >=2048? :oops:
Should this have been a fail instead, or is the description of the check inaccurate?
 
hi,

i guess this is an ECC key? in that case the minimum size we check against is 224 not 2048, but the log line has the 2048 bit hardcoded ;)

i'll send a patch as it's confusing
 
  • Like
Reactions: sterzy
I think this is just an oversight on our end. To be sure it'd be useful if you could run the follow command: openssl x509 -in /etc/pve/local/pve-ssl.pem -noout -text | grep "Algorithm" and post it's output here.

Context: The security level of a signature key depends on the amount of entropy it has. Usually this is the defined by the length of the key in bits plus the algorithm that is used. Elliptic curve cryptography (ECC), for examples, needs way fewer bits in a key to achieve similar entropy levels to RSA. So my suspicion here is that you are using some shape of ECC key and that the amount of bits (called security level in the log, somewhat misleadingly) is fine. However, to be sure, I'd need to know the actual algorithm that is used.
 
  • Like
Reactions: Onslow
I think this is just an oversight on our end. To be sure it'd be useful if you could run the follow command: openssl x509 -in /etc/pve/local/pve-ssl.pem -noout -text | grep "Algorithm" and post it's output here.

Context: The security level of a signature key depends on the amount of entropy it has. Usually this is the defined by the length of the key in bits plus the algorithm that is used. Elliptic curve cryptography (ECC), for examples, needs way fewer bits in a key to achieve similar entropy levels to RSA. So my suspicion here is that you are using some shape of ECC key and that the amount of bits (called security level in the log, somewhat misleadingly) is fine. However, to be sure, I'd need to know the actual algorithm that is used.
Here you go: (I assume you meant pveproxy-ssl.pem instead of pve-ssl.pem?)

Code:
 openssl x509 -in /etc/pve/local/pveproxy-ssl.pem -noout -text | grep "Algorithm"
        Signature Algorithm: sha256WithRSAEncryption
            Public Key Algorithm: id-ecPublicKey
    Signature Algorithm: sha256WithRSAEncryption
 
Here you go: (I assume you meant pveproxy-ssl.pem instead of pve-ssl.pem?)
Yes, sorry.

Public Key Algorithm: id-ecPublicKey
Yep, looks OK I'd say, the patch my colleague send will fix the issue in question, and you should be good to go :)