My use case was that I had an older version of IPython on a cluster so to connect to it I'd want to use what was previously the default. If my new 1.0 Client defaulted to sha256 I imagine I wouldn't be able to talk to a controller running a pre-1.0 IPython hence the default of md5 iff it detected an older configuration file.