ProFTPD does not need to know what salt is.
In the MySQL documentation , ENCRYPT uses the Unix implementation of crypt() DES. As you indicated, if salt is not provided, a random salt is selected. According to the man pages:
The return value indicates an encrypted password, a series of 13 printed ASCII characters (the first two characters represent the salt itself).
You can verify this yourself by doing, for example:
SELECT ENCRYPT ('blowfish');
which returns:
201GDb8Aj8RGU
If you run
select ENCRYPT ('blowfish', '201GDb8Aj8RGU');
You will get the same result 201GDb8Aj8RGU . Only the first two characters are used as salt.
It will be a little clearer if you provide your salt, for example:
SELECT ENCRYPT ('blowfish', 'rb');
Return value:
rbMle0EHJVXcI ^^
The salt you got has become much more obvious.
source share