On Fri, 2020-01-17 at 16:31 +1000, Dr Paul Dale wrote: > In the deprecation efforts for 3.0, I’ve hit something in the DES > code that I’d appreciate input on. > > There are two functions (DES_crypt and DES_fcrypt) which implement > the old crypt(3) password algorithm. Once these are deprecated, they > will no longer be reachable via EVP. The confounding point is that > they aren’t quite DES — close but not identical. I would be > surprised if they aren’t still in use for /etc/passwd files on old > and/or embedded systems. > > I’ve got several choices: > Leave them public and unchanged — that is, don’t deprecate these two > functions yet. > Deprecate them and add KDFs to replace them. > Deprecate them, leave them alone and hope they go away painlessly at > some point.
As deprecation is NOT a removal and the removal is at least 5 years in future I think the third option is clearly OK. We could argue about any other functionality that we deprecate the same way and we would not be able to deprecate anything. When we get in time to the point of removal of the functionality deprecated in 3.0 we might even decide to selectively postpone the removal of this particular thing although I do not think that would be necessary. Use of these calls should be really abandoned anyway as the old crypt() algorithm is totally weak anyway. -- Tomáš Mráz No matter how far down the wrong road you've gone, turn back. Turkish proverb [You'll know whether the road is wrong if you carefully listen to your conscience.]