Если тебе нужна защита от дурака то можно все это сделать в js:
<div>
<label>Введите имя и отчество чтобы скачать файл</label>
<input type="text" data-val="Иван Иванович">//как видим правильный ответ через консоль посмотреть не составляет труда, однако у нас некоторые js-писатели не знают что такое консоль, что уж об остальных говорить.
<button>Скачать</button>
</div>
//код с подключенной библиотекой jquery
$('button').click(function(){
if($(this).prev().val() == $(this).prev().data('val')) {
//и вот тут уже скачка.например редирект на страницу со ссылкой
location.href = '/some/url/download/';
}
else {
//либо редирект на страницу ошибки, как выше, либо модальный диалог на этой же странице,либо просто вставить текст ниже кнопки с отказом..много вариантов
}
})
Если, не от дурака - то делать запрос к серверу, на сервере сверять значения, и в зависимости от результат давать скачку или нет.