#15603·cryptography

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

Author: sibsonCreated Sep 7, 2026Updated Sep 14, 2026

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.