devqp
Специалист
Описание: Bash-скрипт для автоматического шифрования файлов или папок с помощью 7z со случайным паролем и загрузки на сервис transfer.sh. Результат работы включает три элемента: ссылку для скачивания, пароль и готовую команду для распаковки.
Алгоритм работы:
1. Генерация 32-байтового случайного пароля в формате base64
2. Создание временной директории
3. Сжатие данных с шифрованием через 7z (алгоритм LZMA, максимальный уровень сжатия)
4. Загрузка архива на transfer.sh через curl
5. Форматированный вывод ссылки, пароля и команды для скачивания/распаковки
6. Автоматическая очистка временных данных
Использование:
Пример вывода:
Исходный код:
Алгоритм работы:
1. Генерация 32-байтового случайного пароля в формате base64
2. Создание временной директории
3. Сжатие данных с шифрованием через 7z (алгоритм LZMA, максимальный уровень сжатия)
4. Загрузка архива на transfer.sh через curl
5. Форматированный вывод ссылки, пароля и команды для скачивания/распаковки
6. Автоматическая очистка временных данных
Использование:
Код:
./upload.sh целевой_файл_или_папка
Пример вывода:
Код:
Link: https://transfer.sh/OtYnvnXy1X/files.7z
Pass: EmU9bVb12IJOtCsv7VLJOgwcQ5cGqAWeRZNOH2SWHIo=
Cmd : wget https://transfer.sh/OtYnvnXy1X/files.7z; 7z x -p"EmU9bVb12IJOtCsv7VLJOgwcQ5cGqAWeRZNOH2SWHIo=" files.7z; rm files.7z
Исходный код:
Код:
# Генерация пароля
PASS="$(dd if=/dev/random of=/dev/stdout bs=1 count=32 2>/dev/null| base64 -w0)"
# Создание временной директории
TMP_DIR="$(mktemp -d)"
# Сжатие с паролем
7z a -mhe=on -p"${PASS}" -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on "${TMP_DIR}/files.7z" $@ >/dev/null
# Загрузка
LINK=$(curl -s -T "${TMP_DIR}/files.7z" https://transfer.sh)
# Вывод информации
printf "\n\nLink: %s\nPass: %s\nCmd : wget ${LINK}; 7z x -p\"${PASS}\" files.7z; rm files.7z\n\n" ${LINK} ${PASS}
# Очистка
rm -rf ${TMP_DIR}