webForumDet fria alternativet

Är det möjligt att identifiera en unik dator?

Webbutveckling

8 svar · 1 128 visningar · startad av Froggy

Medlem sedan juni 201027 inlägg
Frågan#1

Jag håller på att bygga ett system där det skall ingå en undersökningsfunktion där folk skall kunna svara på olika frågor. Man skall inte kunna manipulera resultatet genom att klicka en massa gånger på samma svar. Därför behöver jag identifiera den dator som skickar svaren.

För det första innan någon svarar.

1. Nej. det funkar inte att använda ip adressen då flera personer på ett LAN kan dela ip utåt men inte sitta vid samma dator och således inte är samma person. ip:t kan dessutom ändras.
2. Nej. Det funkar naturligtvis inte med cookies eftersom de går att stänga av och manipulera.
3. Nej. session-id funkar inte heller men jag orkar inte gå in på varför. Det är i alla fall inte tillräckligt säkert.

Min plan är att identifiera den enskilda datorn med javascript och skicka med den variabeln via ajax till ett php-skript som kollar om den variabeln har skickats ihop med ett svar tidigare.

Jag är medveten om att javascript då måste vara aktiverat hos användaren och det tycker jag är rimligt om det kan ge tillförlitligare resultat.

Frågan är kort. Går det att läsa av någon typ av maskinvaru-variabel med javascript som är unik för en dator, typ serienummer, mac-adress på närverkskortet eller dylikt?

Medlem sedan juni 20006 031 inlägg
Medlem sedan aug. 20039 340 inlägg
#3

Det du efterfrågar är nog omöjligt. Moderna webbläsare tillåter nog inte Javascript att komma åt information som kan identifiera en dator. Det du får göra är nog att avkräva en e-postadress av varje användare innan de får rösta. Sedan ser du självklart till att rösterna som tillhör den adressen enbart räknas en gång.

Att förbjuda folk från att rösta flera gånger från samma IP är nog helt oavsett det en sund policy, om du inte har anledning att tro att många som ska göra undersökningen sitter bakom delade IP, t ex om du ska låta hela skolklasser göra undersökningen.

Om inte e-postadresser är bra nog så blir du nog tvungen att avkräva folk namn och personnummer och kolla det mot folkbokföringen eller dylikt.

Medlem sedan juni 201027 inlägg
#4

Pedda skrev:

Har inte testat själv, men läs den här artikeln.
http://www.devarticles.com/c/a/JavaScript/Advanced-JavaScript-with-Internet-Explorer-Retrieving-Networking-Configuration-Information/1/

njae , intressant men det verkar vara IE only.

Medlem sedan juni 201027 inlägg
#5

nitro2k01 skrev:

Det du efterfrågar är nog omöjligt. Moderna webbläsare tillåter nog inte Javascript att komma åt information som kan identifiera en dator. Det du får göra är nog att avkräva en e-postadress av varje användare innan de får rösta. Sedan ser du självklart till att rösterna som tillhör den adressen enbart räknas en gång.

Att förbjuda folk från att rösta flera gånger från samma IP är nog helt oavsett det en sund policy, om du inte har anledning att tro att många som ska göra undersökningen sitter bakom delade IP, t ex om du ska hela skolklasser ska göra undersökningen.

Om inte e-postadresser är bra nog så blir du nog tvungen att avkräva folk namn och personnummer och kolla det mot folkbokföringen eller dylikt.

Det skall ju helst inte krävas registrering eller e-post adresser osv. Jag behöver ju inte ha något som identifierar datorn egentligen. Bara en anonym unik siffra som inte kan komma från någon annan dator.

Jag får väl ta den enkla lösningen att göra ett script som läser av användarens rörelsemönster med musen och på så sätt identifiera personen som röstar. Ett sånt slänger man ju ihop enkelt. :L Superenkelt!

Medlem sedan jan. 2007177 inlägg
#6

EFF (Electronic Frontier Foundation) har ju i år gjort en undersökning av hur pass unikt ett "fingeravtryck" från en browser är med utgångspunkt från integritetsproblematiken dvs hur unik är man när man besöker en sida utan att man aktivt lämnar några uppgifter på sidan.

"Web Browsers Leave 'Fingerprints' Behind as You Surf the Net"
http://www.eff.org/press/archives/2010/05/13

Medlem sedan maj 20011 826 inlägg
#7

Froggy skrev:

Det skall ju helst inte krävas registrering eller e-post adresser osv. Jag behöver ju inte ha något som identifierar datorn egentligen. Bara en anonym unik siffra som inte kan komma från någon annan dator.

Jag tror att du får tänka om lite. Jag förstår inte riktigt varför du vill identifiera en unik dator, det är väl ändå en unik användare du vill identifiera. I dagens läge är det inga som helst problem för en användare att göra undersökningen flera gånger men från flera olika datorer. Många har tillgång till minst en dator vid skolan/jobbet och minst en men oftast flera hemma och sen börjar många få bra tillgång till Internet från sin mobiltelefon.

Så om inte Session-ID/Cookie/IP-nummer är tillräckligt så tror jag du borde använda användarkonton med epostadress. Men du behöver inte implementera registreringen själv, gör det med t.ex. OpenID. Ett annat alternativ är kanske att göra den som en Facebook-applikation.

Medlem sedan jan. 2005713 inlägg
#8

Froggy skrev:

Min plan är att identifiera den enskilda datorn med javascript och skicka med den variabeln via ajax till ett php-skript som kollar om den variabeln har skickats ihop med ett svar tidigare.

Men det är väl rätt simpelt att manipulera javascript med.

Medlem sedan dec. 19996 592 inlägg
#9

Froggy skrev:

2. Nej. Det funkar naturligtvis inte med cookies eftersom de går att stänga av och manipulera.

"evercookie is a javascript API that produces extremely persistent cookies in a browser. Its goal is to identify a client even after they've removed standard cookies, Flash cookies (LSOs), and others. It currently stores cookies in standard HTTP cookies, Local Shared Objects (Flash Cookies), storing in RGB values of auto-generated, force-cached PNGs using HTML5 Canvas tag to read pixels (cookies) back out, storing in web history, HTML5 Session Storage, HTML5 Local Storage, HTML5 Global Storage, and HTML5 Database Storage via SQLite."

265 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)