Skip to content

Consider FFDH for decrepit — Apple Screen Sharing/ARD has no alternative #15603

Description

@sibson

Apple's Screen Sharing / Remote Desktop (ARD) authentication, part of the RFB/VNC protocol family, mandates classic finite-field Diffie-Hellman for its key exchange — there is no alternative to negotiate into, and Apple controls the protocol, not us. A client that wants to authenticate against ARD has no path other than FFDH.

Our usage: vncdotool/rfb.py (_encryptArd) uses dh.DHParameterNumbers/dh.DHPublicNumbers for exactly this. We're tracking the deprecation on our end (sibson/vncdotool#388).

Following up on #15171, which deprecated FFDH in 50.0.0. @alex noted there:

We weren't planning to migrate to decrepit, just deprecate (for a long time) and then remove.

That thread had no concrete interoperability case on the table. decrepit exists precisely for this: CAST5/SEED/IDEA/Blowfish went there in #6809, and 3DES/ARC4 were kept out of deprecation entirely, "due to their prevalence in existing systems." decrepit's own docs: "algorithms that should not be used unless necessary for backwards compatibility or interoperability with legacy systems."

Given there's no migration target for a protocol that mandates FFDH by spec, please reconsider decrepit as FFDH's eventual home instead of outright removal.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions