Skip to content

SCRAM-SHA-***(-PLUS) supports #4

Open

Description

@Neustradamus

After:

  • SCRAM-SHA-1

Can you add supports of:

  • SCRAM-SHA-1-PLUS
  • SCRAM-SHA-256
  • SCRAM-SHA-256-PLUS
  • SCRAM-SHA-512
  • SCRAM-SHA-512-PLUS
  • SCRAM-SHA3-512
  • SCRAM-SHA3-512-PLUS

You can add too:

  • SCRAM-SHA-224
  • SCRAM-SHA-224-PLUS
  • SCRAM-SHA-384
  • SCRAM-SHA-384-PLUS

"When using the SASL SCRAM mechanism, the SCRAM-SHA-256-PLUS variant SHOULD be preferred over the SCRAM-SHA-256 variant, and SHA-256 variants [RFC7677] SHOULD be preferred over SHA-1 variants [RFC5802]".

https://xmpp.org/extensions/inbox/hash-recommendations.html

-PLUS variants:

IMAP:

LDAP:

  • RFC5803: Lightweight Directory Access Protocol (LDAP) Schema for Storing Salted: Challenge Response Authentication Mechanism (SCRAM) Secrets: https://tools.ietf.org/html/rfc5803

HTTP:

2FA:

IANA:

Linked to:

Activity

  1. changed the title [-]SCRAM-SHA-***-PLUS supports[/-] [+]SCRAM-SHA-***(-PLUS) supports[/+] on Nov 15, 2019
  2. fabiang commented on Dec 3, 2019

    @fabiang
    Owner

    Please feel free to implement those and add a pull request. Thank you!

  3. Neustradamus commented on Sep 22, 2021

    @Neustradamus
    Author

    @fabiang: Have you looked on it?

    Thanks in advance.

  4. fabiang commented on Apr 19, 2022

    @fabiang
    Owner

    If you need them, please create a PR and I'll be happy to add them. Thanks.

  5. fabiang commented on May 15, 2023

    @fabiang
    Owner

    Closing this due age. PR is still very welcome for this.

  6. Neustradamus commented on May 15, 2023

    @Neustradamus
    Author

    @fabiang: The problem is always here, it is not a solution to close it...

  7. fabiang commented on Nov 20, 2023

    @fabiang
    Owner

    I was able to add support for some of the algos.

    The following authentication methods were supported before and I've also updated the integration tests to test them:

    • SCRAM-SHA-256
    • SCRAM-SHA-512

    Those should have been working before, but I can't test them automatically

    • SCRAM-SHA-224
    • SCRAM-SHA-384

    This should be working now, but can't be tested either:

    • SCRAM-SHA3-512

    Also I'm unable to add support for all the *-PLUS algorithms since OpenSSL/PHP doesn't have an API for channel binding (same problem as in #11) .

  8. Neustradamus commented on Nov 20, 2023

    @Neustradamus
    Author

    @fabiang: Thanks a lot for your commit!

    Can you add topics in your repo?

    • scram-sha-1
    • scram-sha-256
    • scram-sha-512
    • scram-sha3-512

    ejabberd: SCRAM-SHA-1(-PLUS), SCRAM-SHA-256(-PLUS), SCRAM-SHA-512(-PLUS):

    Tigase XMPP Server: SCRAM-SHA-1(-PLUS), SCRAM-SHA-256(-PLUS), SCRAM-SHA-512(-PLUS):

    MongooseIM supports: SCRAM-SHA-1(-PLUS), SCRAM-SHA-224(-PLUS), SCRAM-SHA-256(-PLUS), SCRAM-SHA-384(-PLUS), SCRAM-SHA-512(-PLUS) | Without CB 1.3:

    Metronome IM supports: SCRAM-SHA-1(-PLUS), SCRAM-SHA-256(-PLUS), SCRAM-SHA-384(-PLUS), SCRAM-SHA-512(-PLUS) | Without CB 1.3:

    Jackal supports: SCRAM-SHA-1(-PLUS), SCRAM-SHA-256(-PLUS), SCRAM-SHA-512(-PLUS), SCRAM-SHA3-512(-PLUS) | Without CB 1.3:

    Prosody supports: SCRAM-SHA-1(-PLUS) and SCRAM-SHA-256(-PLUS):

  9. fabiang commented on Nov 20, 2023

    @fabiang
    Owner

    What topics you're talking about? Is there any server software available that supports SCRAM-SHA3-512?

  10. Neustradamus commented on Nov 20, 2023

    @Neustradamus
    Author

    At right here: https://github.com/fabiang/sasl (gear) ^^

    There are several lists, search SHA3 here:

  11. fabiang commented on Nov 20, 2023

    @fabiang
    Owner

    I don't see any server software that supports scram-sha3-*. I've added the other supported algos as topics.

  12. Neustradamus commented on Nov 20, 2023

    @Neustradamus
    Author
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions