Лучший способ - имя = номер версии, т.е. буквально каждое изменение файла увеличивает номер на единицу (если к имени файла не добавлять его строковое, то нумерация на весь проект будет общая), для этого на этапе сборки файлов придется хранить и подменять настоящие имена их номерами (в этом файле храни не только имя и номер но и хеш, уже длинный, по нему проверяй изменение файла и инициируй выдачу следующего номера).
Так же номер можно паковать в другую систему счисления с основанием больше 10 (добавив большие маленькие буквы, как это делают в base64)
В этом случае имя файла не превысит 4-5 символов плюс расширение (от него тоже можно избавиться, если сборка будет подготавливать конфиг для вебсервера, чтобы статика возвращала правильные заголовки content-type, но это кстати часто и не требуется)