Писане в PHP Гласуване, защита от измама

Е, вече отегчен без мен?

Така или иначе. Трябва да поздравим дамите с вчерашния празник, който, както обикновено у нас, дойде съвсем очаквано и, което също не е изненадващо, с черния дроб.

Поздравявам прекрасните дами за последния празник, желая ви всичко най-добро: любов, здраве, деца и съпруг, който не е програмист.

А за онези дами, които искат сами да бъдат програмисти, продължавам скучната си история за методите за създаване на php сайтове.

Във форума има тема „Къде нататък?“, Която ми предлага различни теми за предстоящи въпроси. Хареса ми идеята за "гласуване". Ще говорим за това в два (?) Предстоящи броя.

Какво е това - гласуване в сайта.

Като цяло най-често срещаме два вида гласуване в мрежата.

Първото е гласуване на въпросници: когато неочаквано ни попитат за нещо и ни помолят незабавно да изберем най-атрактивната опция и кликнете върху бутона.

Второто е, когато от нас се иска да оценим нещо. Обикновено според предложената рейтингова скала понякога се иска да обосноват позицията си с думи.

И двата варианта са много сходни „отвън“; за потребителя. Но се различават много за собственика на сайта.

Факт е, че при онлайн гласуването има много проблеми, свързани с така наречените „измамни“ резултати.

Какво е измамата? О, Боже, Киса, толкова е лесно.

По този начин вие завършвате рейтинга на любимата си работа, като я бутате все по-нагоре и по-нагоре.

След като достигнете определена граница (обикновено, когато сте изправени пред други измамници), определено ще промените тактиката си и ще предприемете всички описани методи за заобикаляне на защитата срещу измама, но вече, за да дадете отрицателни оценки на конкурентите.

В общи линии, повишаване на рейтинга - страхотно и интересно занимание.

Но още по-интересно занимание е да ловите мами.

Да си разузнавач е интересно. Но да си офицер от контраразузнаването е още по-интересно. С определено мислене, разбира се.

Честно казано, вече съм погълнал цял развъдник в анкети и всякакви рейтинги. Може би мога да направя система за гласуване без особени проблеми, която би била почти 100% защитена от измама.

Например, можете да вмъкнете бутон в края на този епизод и да помолите всеки от вас да кликне върху него по най-умния начин, но да го добавите към гласа си само при първото щракване върху него. О, бих се засмял, гледайки вашите трикове в опитите да заблудите този бутон.

Тук стигаме до първия и най-важен принцип на „контра измама“: никога не показвайте измамника, че сте го забелязали. Нека си помисли, че е надхитрил системата. Това няма да му даде причина да измисли нещо по-хитро и можете лесно да почистите основата от боклука му по всяко удобно за вас време. Например, преди обявяването на окончателните резултати от проучването, когато няма да е възможно да се коригира нищо (ликвидация отново).

Второто правило е малко по-трудно за формулиране. Ще се опитам да не го формулирам, а да го опиша.

И така, какво трябва да направим, как да се предпазим?

Но вторият ми принцип за борба с измамниците се изразява не в технически прелести (които, разбира се, има и много), а в анализа на обкръжаващата ситуация, така да се каже.

С други думи, трябва да анализирате поведението на обикновен потребител на вашия сайт, който е влязъл за първи път, и да анализирате поведението на човек (вероятно измамник), който е влязъл на тази страница не за първи път. Намерете фундаментална разлика между тях.

Не винаги е лесно. Но ако можете да намерите такава разлика, то почти винаги дава възможност да се изгради повече или по-малко точен анализ на надценките. Разбира се, в допълнение към други видове анализи.

Показвам с прост пример.


    Искам веднага да ви предупредя, че не говоря с никой друг освен с търговски клиенти по темата за защита срещу измама. всеки метод струва пари; изключително трудно е да се намерят оригинални и нестандартни начини за защита срещу измами.

Да предположим, че все пак съм публикувал гласуване в края на страницата и съм решил да се предпазя от измама, тъй като мисълта ми ще продължи?

Нещо подобно на това: "Обикновеният потребител се различава от повтарящия се потребител преди всичко по това, че чете съдържанието на страницата. Тоест прекарва време върху нея. Така че, ако посетителят е прекарал малко време на страницата, тогава той не се интересува от съдържанието и няма нужда да гласува. измамник, който по своя инициатива или по нечие искане е отишъл на сайта, за да оцени ".

И въз основа на тази мисъл изграждам защита:

3. Пиша скрипт за попълване на първата таблица и го поставям в началото на страницата. Този скрипт се изпълнява винаги, когато се иска страницата.

4. Пиша скрипт за попълване на втората база и го поставям в нов файл, който се извиква, когато щракнете върху бутона за гласуване.

5. Пиша анализатор, който стартирам, когато искам и както искам.

Всичко е ясно с първите четири точки. Как работи петият?

Анализаторът работи по различни начини: от анализ на технически данни до моите „уникални“ формули за анализ.

Скриптът от параграф 3 трябва да създаде нов запис в база данни 1, да вземе уникалния си идентификатор и да го запише в браузъра на клиента в бисквитката.

И скрипт номер четири трябва да поиска стойност на бисквитка от клиента и да я постави в база 2.

По този начин, ако в база данни 2 има номер на бисквитка, той трябва да присъства в база данни 1. Ако случаят не е такъв, тогава номерът е фиктивен и гласът може лесно да се счита за измамен.

Ако в база данни 2 полето за бисквитки е празно, това означава, че или гласът е измамен, или клиентът трябва да деактивира бисквитките. Да броим такъв глас или не? Това е твоят бизнес. Бих го означил като подозрителен и бих го обработил отделно.

След това можете да търсите оценки от една IP подмрежа и да видите кой притежава тази подмрежа. Ако това е модемният пул на доставчика, това е еднозначна измама. И ако това е подмрежа на някаква неизвестна организация, тогава този набор от гласове трябва да бъде маркиран като подозрителен и обработен от други анализатори.

В заключение можем да приведем в действие нашия специален алгоритъм, измислен за този конкретен сайт и за работата на който никой освен вас не подозира. Този алгоритъм трябва да обработва всичко, което сме маркирали като „подозрителни гласове“.

Това е само скелет на мисълта. Необходимо е да се предвидят много от всички видове опции, например: да стигнете до сайта на човек, който има техника за бързо четене. За да направите това, можете да анализирате времето, прекарано на други страници на сайта, можете да разгледате другите му оценки и за пореден път да оцените техническите данни на браузъра и хоста. Има и други необичайни случаи, които трябва да бъдат разгледани.

Възможно е да се съставят пътищата на движение на потребителя около сайта, за да се гарантира, че поведението на потребителя е адекватно. И използвайте други методи.

Съществува и фундаментално различен начин за защита срещу гамаши и измамници - регистриране на потребител с различна степен на трудност или изискване за "обосноваване на рейтинга", което дава по-точен анализ на рейтингите, но значително намалява общия брой на гласувалите, така че засега ще пропусна тази тема.

Това е мястото, където може би ще завърша теоретичната история за залавянето на измамници и в следващия урок ще разгледаме прилагането на просто гласуване на сайт с извеждане на резултати в текстови и графични форми.