Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: configurable encryption algorithm types #924

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

xpavlic
Copy link

@xpavlic xpavlic commented Aug 6, 2023

Description

The feature or problem addressed by this PR

Encrypt assertion session key and transport key algorithms were hardcoded.

closes: #821

What your changes do and why you chose this solution

Added encrypt_assertion_session_key_algs and encrypt_assertion_cert_key_algs configuration options to specify algorithms which can be used for encrypting assertions. Both of them are lists and index represents algorithm priority (first one has highest priority).

When there is not cert prvided in parameters program will try to find one in metadata. Keys in metadata are prioritized in following order.

  • with use=encryption and specified EncryptionMethods
  • with use=encryption
  • without use=encryption

If key has EncryptionMethods program will make intersect with configuration options and will take algorithms by its priority. If intersect is empty or there is not EncryptionMethod program will use first ones from config options.

Added paramters and their propagation to Server.create_authn_response specifying session key and transport key algorithms for encrypt_cert_advice and encrypt_cert_assertion. If they are not provided program will use first ones from new config options.

For support http://www.w3.org/2009/xmlenc11#rsa-oaep transport key alg with MGF1 xmlsec version>=1.3.0 is required.

Checklist

  • Checked that no other issues or pull requests exist for the same issue/change
  • Added tests covering the new functionality
  • Updated documentation OR the change is too minor to be documented
  • Updated CHANGELOG.md OR changes are insignificant

@c00kiemon5ter c00kiemon5ter self-assigned this Sep 26, 2023
@c00kiemon5ter c00kiemon5ter added the next-release should become part of the next release label Nov 7, 2023
@melanger
Copy link

melanger commented Feb 5, 2024

@c00kiemon5ter Hi, there already was a "next-release", would you consider merging this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
next-release should become part of the next release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Using AES instead of DES-192 for Encryption
3 participants