IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   Как поставить пароль на фаил (https://www.imho.ws/showthread.php?t=68171)

stasok 11.09.2004 12:24

Как поставить пароль на фаил
 
у меня есть не большой файловый Архив. хочу поставить на особый фаил пароль, так что когда его хотели скачать выплывало окно и просило пароль, как я могу это зделать, вот архив http://stasok.nm.ru

Hubbitus 11.09.2004 21:00

Помоему на данном хостинге - никак, хотя может я и ошибаюсь, я не очень подробно изучал его возможности :)

stasok 11.09.2004 21:31

Цитата:

Сообщение от Hubbitus
Помоему на данном хостинге - никак, хотя может я и ошибаюсь, я не очень подробно изучал его возможности :)

если на этом не как, то на каком бесплатном можно???

CEO 11.09.2004 22:58

Hubbitus: А почему никак? Нет поддержки PHP? Можно обойтись и JS или Flash, хоть это и слабая защита, но хоть что-то...
stasok:Посмотри здесь:
http://imho.ws/showthread.php?t=3657...ED%E8%F7%EA%F3
Самый простой способ на JS, который будет работать на любом хостинге:
файл pwd.php
Цитата:

function mwd(s)
{
var pass = prompt("Enter password:", "");
if (pass == null)
window.location = "badpassw.htm";
else if (pass.toLowerCase() == "qwerty")
window.location = "file"+s+".zip"
else
window.location = "#";
}
Страница со ссылками:
Цитата:

<html>
<script language="JavaScript" src="pwd.php">
</script>
<a href="#" onclick='javascript: mwd(1);'>Файл 1</a>
<a href="#" onclick='javascript: mwd(2);'>Файл 2</a>
<a href="#" onclick='javascript: mwd(3);'>Файл 3</a>
<a href="#" onclick='javascript: mwd(4);'>Файл 4</a>
<a href="#" onclick='javascript: mwd(5);'>Файл 5</a>
</html>
А бесплатный хостинг с поддержкой PHP -- w6.ru, например. Можешь найти хороший php скрипт чтобы запускать на этом хостинге, а все остальное оставить на старом сайте.

rockin 11.09.2004 23:20

На nm.ru нет ПХП.
Через яву-скрипт делать - как-то несерьёзно.
Мне кажется самым хорошим вариантом в даннном случае навесить пароль на архив. Только архив сделать РАР и пароль символов на 20.
Скачать-то его все, конечно, смогут. А вот просмотреть, что там...

Hubbitus 12.09.2004 15:05

Цитата:

CEO:
Самый простой способ на JS, который будет работать на любом хостинге:
файл pwd.php....
Ну о способе хранить пароль в той же странице в открытом виде я совсем не подумал :ржать: :ржать: :ржать:
Тогда еще нужно выводить сообщение пользователю: "Вы не можете скачать этот файл пока не введете пароль "qwerty"!"
Хотя на JS тоже можно построить парольную защиту с более серьезным качеством, но в любом случае, это будет не защита, и основываться только на "не догадаются"...
Соответственно на этом принципе тоже иногда можно сделть что-то достаточно серьезное, если потрудиться и подключить фантазию...

denver 12.09.2004 16:01

А на самом деле CEO предложил нормальную защиту, только зачем-то еще включил туда явную проверку :) Достаточно положить файл в каталог с именем типа "ewj383j3" и запросить пароль, после его введения брать отдавать файл который лежит по адресу "введенный_пароль/file.zip". Никакой проверки на пароль не надо, просто юзеру не знающему правильного пароля будет всегда 404.

Правда минус все-же есть. Человек который знает такой пароль может впоследствие давать прямую ссылку на файл (но ведь он может и пароль дать всегда ;))

Есть еще способ, можно тоже взять пример от CEO, но вместо примитивной строки if (pass.toLowerCase() == "qwerty") написать что-то типа if (MD5(pass) == "4J4NR9DJD893LS929SD"), последнее является не самим паролем а его хэшем. На основе хэша разгадать пароль практически невозможно. Взять файл с функцией можно тут например.

Однако, опять же пароль всегда можно распространить.

Hubbitus 12.09.2004 19:43

Цитата:

denver:
Достаточно положить файл в каталог с именем типа "ewj383j3" и запросить пароль, после его введения брать отдавать файл который лежит по адресу "введенный_пароль/file.zip".
Тоесть он не защищен паролем, а спрятан, и его легко можно скачать, например найдя из поисковика (только не нужно про теги запрета индексирования и т.д.). Про подобные реализайции я и говорил упоминая про фантазию.
Цитата:

denver:
Есть еще способ, можно тоже взять пример от CEO, но вместо примитивной строки if (pass.toLowerCase() == "qwerty") написать что-то типа if (MD5(pass) == "4J4NR9DJD893LS929SD"), последнее является не самим паролем а его хэшем. На основе хэша разгадать пароль практически невозможно.
Берем функцию CEO, подсттавляем:
Код:

function mwd(s)
{
var pass = prompt("Enter password:", "");
if (pass == null)
window.location = "badpassw.htm";
else if (MD5(pass) == "4J4NR9DJD893LS929SD")
window.location = "file"+s+".zip"
else
window.location = "#";
}

Так, да? А теперь главный вопрос: ну и зачем этот выпендреж с этим MD5 в данном случае? Ведь этот скрипт всего лишь защищает клик на ссылку. Какой бред подбирать, разгадывать... пароль, если в самом скрипте написан путь к файлу и набрав его я спокойно возьму то что нужно при этом он оказывается никак не защищен!?

denver 12.09.2004 20:20

Hubbitus
Во-первых, window.location = "file"+pass+".zip", а во-вторых ничего большего с помощью ява-скриптов не добьешься :biggrin:

Hubbitus
И кстати, из поисковика его не найдешь. Т.к. явной ссылки на файл нет. Разве что поисковый робот начнет подбирать пароли...

Hubbitus 12.09.2004 20:34

Цитата:

denver:
Hubbitus
Во-первых, window.location = "file"+pass+".zip", а во-вторых ничего большего с помощью ява-скриптов не добьешься
Вопервых, там не pass, а s, переменная передаваемая в явном виде в функцию из сылки, поэтому легко читаем нормальный полный адрес!!!

А насчет пароля в адресе - я же писал, защита основанная на оригинальности и фантазии автора, она имеет место быть конечно, но она не защита в привычном смысле, да и стойкость ее весьма сомнительна в большинстве случаев...
Цитата:

denver:
Hubbitus
И кстати, из поисковика его не найдешь. Т.к. явной ссылки на файл нет. Разве что поисковый робот начнет подбирать пароли...
Ну это да конечно, но поверь мне, если там будет что-то важное и нужное лежать под такой "защитой" то очень скоро о ссылке узнают очень многие и в т.ч. уже и поисковики... :p

denver 12.09.2004 21:21

Послушай, Hubbitus, во-1, я тебе ничем не обязан, во-2, я имел в виду то что имел в виду (если там передавалась переменная s, то теперь передается пароль!), а в-3 перечитай "во-вторых" из моего предыдущего поста, и если ты таки поднатужишься и придумаешь что получше я тебе пну +, если нет так минус в карму, как минимум за то что ты не очень-то благодаришь тех кто хочет тебе помочь, договорились? :yees:

Тьфу. походу ты вообще тут ни при чем :) тем лучше... Ну как, защиту будем думать? Сколько времени тебе дать на подкючение фантазии? :biggrin:

CEO 12.09.2004 23:21

Вложений: 1
Hubbitus, я же сразу оговорился, что использование JS --
Цитата:

слабая защита
. Файл pwd.php -- отдельный файл, он подключается к нужной странице со ссылками строчкой
Цитата:

<script language="JavaScript" src="pwd.php">
В том скрипте в качестве параметра функции передается не имя файла а номер.
А то, что предложил denver -- это лучшее, помоему, что можно придумать используя только Java Script.

Чтобы нам было еще над чем посмеяться, я нашел небольшой Java апплетик, если кому-то нужно могу декомпильнуть.

stasok 13.09.2004 13:03

Цитата:

Сообщение от CEO
Hubbitus: А почему никак? Нет поддержки PHP? Можно обойтись и JS или Flash, хоть это и слабая защита, но хоть что-то...
stasok:Посмотри здесь:
http://imho.ws/showthread.php?t=3657...ED%E8%F7%EA%F3
Самый простой способ на JS, который будет работать на любом хостинге:
файл pwd.php
Страница со ссылками:А бесплатный хостинг с поддержкой PHP -- w6.ru, например. Можешь найти хороший php скрипт чтобы запускать на этом хостинге, а все остальное оставить на старом сайте.

ты можешь уделить мне 10 минут и в icq 1209722 , а то я чо то не чего не понял из этого


Часовой пояс GMT +4, время: 23:12.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.