Blog

網站程式構思-「投票」如何防止被灌票

 

在舉辦網路投票活動時,系統開發人員總是希望投票人能夠很誠實的填上該寫的資訊;但偏偏遇上一些比較”高知名度”的活動,那投票人群會更加的多…
若遇到想從中獲利的人,那網路投票系統的規則,就要多多思量,想出適合活動並且不會讓投票人感到困擾的規則!

以下就來介紹目前辦網路活動投票,被防止灌票的方式:

1. IP限制:
取得使用者IP,在投票完成後進行記錄,下來同樣IP進入投票時,會被禁止;算是比較普遍被使用的方式,稱得上是第一名。
缺點:
A.上網IP若不是用固定式,是用浮動式,就無法確保公平性了。
B.若是使用內網路共用一個IP向外連線的公司行號們,在一個人投完票,其他人就無法投票了。

2. Cookies 验证:
算是排名第二吧,需要使用者進行登錄Cookies,Cookies是用自於用戶端的資訊,在你投票完成時,寫入一個Cookies留在你的電腦裡。
缺點:
Cookies可以清除、可防寫入,熟知此道的人,根本這招是無用的!

3. Session 验证:
Session是當用戶進入網站時,網站會自動發配一個session id,以作為身分辨識。
缺點:
A.網頁關閉,session id就會發配新的。
B.承第2點,若禁止寫入Cookies,網站系統也無法發配session id給使用者。

4.驗證碼:
在投票、註冊、驗證、回覆時,都會用得到的動作,由網站產生圖片、文字,要求使用者填寫驗證碼的動作。
缺點:
A.一般純文字:比較強的網頁資訊人員,就寫個小灌票系統,先去獲取你的網頁資訊(因為驗證碼會存入在網頁原始碼),得知驗證碼內容,然後在必要輸入框隨意填上有的沒的文字,通過驗證後,就可以不斷一直灌票。
B.圖片:可靠度較前者高,因為圖片除了加上驗證碼文字(它本身還是圖片),還能在圖片內容裡加上無意義的不規則線條,影響不正當的系統辯識;不過有些網站真的是非常嚴謹,怎麼說?圖片的內容不但是一堆不規則線條摻加在其中,將驗證碼的文字變形,還把文字任意變大、變小,歪曲傾斜,使用者看到不嚇跑才怪…。
C.無論是純文字、圖片,都是由server產生,所以使用者在無法辨識時,在耐心還沒到達極限前,往往都會重整頁面產生新的資訊,這麼一來就會加重伺服器的負擔。

5. MAC網路卡卡號:
MAC泛指你電腦網路卡辨別碼,不過目前網頁系統還沒能夠取得(安全第一?將來也許?),c、java…之類的語言可以取得辨識。
缺點:
如同之前幾個選項所述的,有的東西是可以改的,沒錯,MAC也可以改,當然不是改硬體啦(那個燒在網路卡裡了…),
是直接更改自已系統的資訊,以騙取外來系統取的辨識。

6. 會員模式:
算是設計一套有組織的方式,要求使用者加入會員,然後網站辦投票時,限制會員才能參加。會員資訊都拿在手上了,當然可以定義一些規則才能參加。(例如:上站時間、發文數、回文數…等)
缺點:
註冊填寫資訊,讓部份使用者覺得麻煩,往往也會因此減低投票的意願性。也有人為了獎品而註冊,活動過了就不再進網站,也因此為網站增加了幽靈會員。

7. 行動模式記錄:
記錄使用者進入的每一個頁面位址,從中判斷使用者的動向,若不正常,就不讓他投票。
缺點:
A.要記錄使用者每一動作,會讓server有相當大的負擔。
B.若記錄與規則不夠多,不夠複雜時,也容易被有心人士在多次測試下構思規則,產生灌票系統去灌票。

8.有意義問與答:
顯示問題要求使用者看完後,回覆問題作判斷。
缺點:
若是沒有足夠多的題庫與答案,一樣會被收集,寫成灌票系統進行灌票。

9.隨機投票:
讓每一個用戶在進入頁面之前,先由系統產生一組隨機並且唯一辨識的文字當作key碼,讓使用者進入投票,投完票就廢除,不投也能再被人使用。
缺點:
沒有辦法辨別同一用戶重複進入的方式。也就是說投票完當下,再重新進入網站,key碼也重新產生了,然後用戶又可以繼續投票了…

10. 個人身分證字號
以國內來說,很多網站在沒有會員又想辦活動吸收會員人氣的狀況下,就會使用「個人身分證字號」進行辨識。
缺點:
網路上一大堆身分證字號產生器,隨便在裡面找一個網站產生id,反正能投票參加活動就好了…無所謂真實性了。

作者的話-「沒有最好,只有比較好」:
以上防止灌票方式是目前國內比較常用的,每一個都有缺點的,所以開發人員應該先構思好系統流程與內容(想到新的那更好),然後聲明優缺點,
最後才進行開發;聯合運用,取長補短,務求在不讓人失去耐心之前,可以完成投票動作。

Incoming search terms:

  • fb灌票程式
  • fb 灌票程式
  • 灌票程式

One Response

發表迴響

你的電子郵件位址並不會被公開。