RSA-PSS Support in compliance with RFC 7427 and RFC 8247

From Libreswan
Revision as of 01:35, 14 August 2018 by Sahana Prasad (talk | contribs)
Jump to navigation Jump to search


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.

Issues encountered

Future work

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

Source code

Code commit : Testing commit :

The implementation for this project is done by Sahana Prasad ( under the tutelage of Paul Wouters.