x509/certificate: cache public_key getter result (#14443)

Store the public key object in a PyOnceLock so that repeated accesses
avoid re-parsing the SubjectPublicKeyInfo DER bytes.

Signed-off-by: Alexander Bokovoy <[email protected]>
Co-authored-by: Claude Sonnet 4.6 <[email protected]>
3 files changed