RSA-PSS Support in compliance with RFC 7427 and RFC 8247
As part of Google summer of Code work in 2017 described in , RFC-7427 Digital Signature Authentication was implemented with support for RSA v1.5. But RFC-8247, in section 3.2 Digital Signature Recommendations, mandates the support for RSASSA-PSS with SHA-256.
To make Libreswan RFC 7427 and RFC 8247 compliant, the following items have been implemented :
1. Removing support of RSA v1.5 with SHA1 as Digital Signature Authentication method
2. Support for SHA2 and its variants. authby =rsa-sha2, rsa-sha2_256, rsa-sha2_384,rsa-sha2_512 authby = rsasig (old style RSA with SHA1 and without Digital Signature Authentication)
3. Signature generation and Verification for RSA-PSS through NSS APIs
4. Test Suite changes
The Test Suite was extended by adding test cases to verify feature functionality and perform interoperability tests with strongswan.
To make RSA with SHA2 as default and fall back to RSA with SHA1 (if configured)
Example : authby=rsa-sha2,rsasig - RSA with SHA1 and without Digital Signature Authentication
Code commit : Testing commit :
The implementation for this project is done by Sahana Prasad (firstname.lastname@example.org) under the tutelage of Paul Wouters.