key don, в целях дедупликации, чтобы если несколько юзеров загрузят один и тот же файл (они могут быть под разными именами) - все файлы указывали на один и тот же физический файл, а он не хранился в нескольких копиях.
Алгоритм хеширования любой пойдёт, тот же sha256 к примеру (или sha1, но он подвержен атаке генерации двух различных файлов с одинаковыми хэшами).
На расположение inline-flex действуют те же правила, что и на любой другой строчный элемент. То есть, вложите его в элемент с text-align: center. Ну или сделайте его блочным (обычный flex вместо inline-flex)
Руслан Хорошкевич, да, именно так. Хранить-то можно и IP, и X-Forwarded-For, но исходя из X-Forwarded-For не производить автоматизированных действий вроде блокировки.