marcel_reuter: Doppelaccount mit IP verhindern?

Hallo!

Ich bin gerade dabei eine Seite, bei denen Anmeldungen erforderlich sind zu programmieren. Wichtig dabei ist aber, dass nur eine Person einen Account haben darf. Ich meine gehört zu haben, dass das mit den IP's ganz gut geht ;)
Meine Fragen dazu:

1. IP's ändern sich doch ca. jede Stunde (oder war es jeden Tag?). Wie kann ich das handhaben, dass sich trotz anderer IP nur ein Nutzer von einem Internetanschluss anmeldet?

2. $ipadresse = $REMOTE_ADDR;
Das habe ich im Internet gefunden. Soll angeblich die IP-Adresse ausgeben. Funktioniert lokal aber nicht. Liegt das daran, dass ich es nur lokal getestet habe, geht das im Internet?

mfg
marcel

  1. Ich meine gehört zu haben, dass das mit den IP's ganz gut geht ;)

    Wer auch immer das sagt hat keine Ahnung, hör in Zukunft nicht mehr auf ihn :)

    Die Aussage ist in etwa Deckungsgleich mit "anhand einer Telefonnummer kann man eine Person eindeutig idenfizieren" oder "anhand Straße, Hausnummer und Wohnort kann man eine Person eindeutig identifzieren"

    Es gibt Firmentelefone und Mehrfamilienhäuser - genauso gibt es dynamische IP-Adressen, Firmen- und Schulnetzwerke oder gemeinsam genutze Heimcomputer mit statischer IP. Von Proxys oder vergleichbarem fange ich besser garnicht an ;)

    1. IP's ändern sich doch ca. jede Stunde (oder war es jeden Tag?).

    Eine IP ändert sie nie - die Zuteilung an die serviceanbieter könnte sich theoretisch ändern, tut sie aber praktisch nicht - da IPv4-Adressen knapp sind, gibt die keiner Freiwillig her.

    Lediglich die Zuteilung an die Endbenutzer ist manchmal dynamisch - der Zeitabstand ist aber nicht festgelegt.

    Wie kann ich das handhaben, dass sich trotz anderer IP nur ein Nutzer von einem Internetanschluss anmeldet?

    Überhaupt nicht.

    1. $ipadresse = $REMOTE_ADDR;
      Das habe ich im Internet gefunden. Soll angeblich die IP-Adresse ausgeben. Funktioniert lokal aber nicht. Liegt das daran, dass ich es nur lokal getestet habe, geht das im Internet?

    Lokal müsste das auch funktionieren, üblicherweise müsste REMOTE_ADDR (in PHP sinnvollerweise $_SERVER['REMOTE_ADDR'] eine IP-Adresse wie 127.0.0.1 oder 192.168.0.1 enthalten.

    1. Lediglich die Zuteilung an die Endbenutzer ist manchmal dynamisch - der Zeitabstand ist aber nicht festgelegt.

      btw: ich habe keine konkreten Zahlen zu dynamisch vs. statischer IP - "manchmal" ist daher als reines Füllwort zu sehen :)

    2. oh dann ist das wohl nicht so einfach.
      Aber wie kann ich das dann umsetzen? ;)
      Hat jemand ne Idee?

      1. oh dann ist das wohl nicht so einfach.
        Aber wie kann ich das dann umsetzen? ;)
        Hat jemand ne Idee?

        http://de.wikipedia.org/wiki/Postident

  2. Hi,

    Ich bin gerade dabei eine Seite, bei denen Anmeldungen erforderlich sind zu programmieren. Wichtig dabei ist aber, dass nur eine Person einen Account haben darf. Ich meine gehört zu haben, dass das mit den IP's ganz gut geht ;)

    Da hast du falsch gehört.

    Meine Fragen dazu:

    1. IP's ändern sich doch ca. jede Stunde (oder war es jeden Tag?).

    Nein. IPs ändern sich gar nicht.

    Wer sie aktuell *benutzt*, das ändert sich.

    Wie kann ich das handhaben, dass sich trotz anderer IP nur ein Nutzer von einem Internetanschluss anmeldet?

    Du willst Personen identifizieren, nicht IPs.

    Dafür gibt es Verfahren wie bspw. Post-Ident.

    1. $ipadresse = $REMOTE_ADDR;
      Das habe ich im Internet gefunden. Soll angeblich die IP-Adresse ausgeben. Funktioniert lokal aber nicht. Liegt das daran, dass ich es nur lokal getestet habe, geht das im Internet?

    Nein, das liegt daran, dass dieser Zugriff auf eine Umgebungsvariable in PHP seit Jahren veraltet ist.
    Dir fehlen offenbar noch Grundkenntnisse im zeitgemäßen Umgang mit PHP - also eigne dir diese bitte erst mal an.
    Vorher solltest du dich an ein Projekt mit diesen Anforderungen nicht heranwagen.

    MfG ChrisB

    --
    “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
  3. Ich bin gerade dabei eine Seite, bei denen Anmeldungen erforderlich sind zu programmieren. Wichtig dabei ist aber, dass nur eine Person einen Account haben darf. Ich meine gehört zu haben, dass das mit den IP's ganz gut geht ;)

    Ich erhalte bei jedem neuen Internetverbindungsaufbau eine neue IP. Und die meisten anderen tun das auch.

    Du kannst zwar mit Cookies bewirken, dass nur ein User-Agent genau einen Account gleichzeitig betreiben kann. Aber das hilft nicht gegen Doppelaccounts. Ich als Entwickler von Account-Software finde das auch gut. Denn ich teste in verschiedenen Accounts.

    Du kannst zwar versuchen, die Accountfreischaltung von einer Passwortbestätigung abhängig zu machen und die Adresse gegen vorhandene Accounts zu vergleichen. Aber das hindert niemanden daran, kurzfristig eine neue Mailadresse zu holen.

    1. $ipadresse = $REMOTE_ADDR;

    REMOTE_ADDR kann die Adresse eines Proxies sein.

    Das habe ich im Internet gefunden. Soll angeblich die IP-Adresse ausgeben. Funktioniert lokal aber nicht. Liegt das daran, dass ich es nur lokal getestet habe, geht das im Internet?

    Keine Ahnung, wie du testest.

    Bei mit localhost betriebenen Scripten ist unter REMOTE_ADDR die Addresse des Loopbackadapters vorhanden. Also in aller Regel 127.0.0.1

    mfg Beat

    --
    ><o(((°>           ><o(((°>
       <°)))o><                     ><o(((°>o
    Der Valigator leibt diese Fische
    1. Und die meisten anderen tun das auch.

      Hast du dafür Zahlen?

      In meinem bekanntenkreis kenne ich keinen, der mit seinem Heimrechner noch mit dynamischer IP arbeitet - in zeiten von Kabelmodems die permament online sind, hat man de facto eine statische IP.

      Sogar wenn ich mein Modem ausschalte und wieder einschalte, ist es sehr wahrscheinlich, dass ich wieder dieselbe IP bekomme - meine IP ist seit etwa 5 Jahren unverändert, obwohl sie ausdrücklich nicht statisch ist.

      1. Und die meisten anderen tun das auch.

        Hast du dafür Zahlen?

        Nein. Erfahrungen mit anderen Accountinhabern.

        In meinem bekanntenkreis kenne ich keinen, der mit seinem Heimrechner noch mit dynamischer IP arbeitet - in zeiten von Kabelmodems die permament online sind, hat man de facto eine statische IP.

        Also meine vom wichtigsten Schweizer Provider zugeteilte wechselt halbtäglich und nach längerem Trennen. Kurze Trennung ändert sie nicht. 30 Minuten aber reichen aus.

        Sogar wenn ich mein Modem ausschalte und wieder einschalte, ist es sehr wahrscheinlich, dass ich wieder dieselbe IP bekomme - meine IP ist seit etwa 5 Jahren unverändert, obwohl sie ausdrücklich nicht statisch ist.

        Das ist ungewöhnlich in meinen Augen.

        mfg Beat

        --
        ><o(((°>           ><o(((°>
           <°)))o><                     ><o(((°>o
        Der Valigator leibt diese Fische
      2. Hallo,

        Und die meisten anderen tun das auch.
        Hast du dafür Zahlen?
        In meinem bekanntenkreis kenne ich keinen, der mit seinem Heimrechner noch mit dynamischer IP arbeitet - in zeiten von Kabelmodems die permament online sind, hat man de facto eine statische IP.

        bei den Zugängen der Kabelnetzbetreiber ist das hier in DE ähnlich: Man *kann* gelegentlich mal eine andere IP bekommen, in der Regel hat man aber monatelang dieselbe.

        Bei den DSL-Zugängen ist das aber anders. Auch bei "always online" wird die Verbindung bei den meisten Anbietern nach 24h zwangsgetrennt. Verbindet sich der Router danach sofort wieder neu mit dem Internet, bekommt er in aller Regel eine andere IP aus dem Pool des Anbieters.

        Ciao,
         Martin

        --
        Husten kann böse Folgen haben.
        Besonders im Kleiderschrank.
      3. In meinem bekanntenkreis kenne ich keinen, der mit seinem Heimrechner noch mit dynamischer IP arbeitet - in zeiten von Kabelmodems die permament online sind, hat man de facto eine statische IP.

        Sogar wenn ich mein Modem ausschalte und wieder einschalte, ist es sehr wahrscheinlich, dass ich wieder dieselbe IP bekomme - meine IP ist seit etwa 5 Jahren unverändert, obwohl sie ausdrücklich nicht statisch ist.

        Auch wenns nicht so häufig ist, aber vergiss bitte die Dail-Up-Modem-Benutzer bitte nicht. Wenn man sich mit einem 56k-Modem einwählt, hat man meist eine andere IP-Adresse...

        Konnte man nicht mit PHP die physikalische Adresse rausbekommen? Wenn ja, dann kannst du wenigstens (zu einem Großteil) Doppelaccounts über den gleichen Computer unterbinden. Ansonsten kannst du nur Statistiken erstellen, diese analysieren und darauf schließen, ob 2 Accounts vielleicht vom gleichen Benutzer sind. Zum einen wann man sich in den Account einloggt, dann auch noch mit der IP-Adresse, Referrer, und und und ...

        Das ganze muss man natürlich abwägen, je nach dem was auf der Webseite angeboten werden soll.

        MfG
        thecreep

  4. Ich meine gehört zu haben, dass das mit den IP's ganz gut geht ;)

    Ich habe mal gehört, die Renten seien sicher...

    Gerade bei sozialen Netzen ist es üblich, dass sich der Reihe nach verschiedene (meistens junge) Leute am selben PC, oder zumindest mit der selben IP (über einen Router, z.B. zuhause) an ihrem Account anmelden. Du hast schon deshalb mit der IP keine Chance.
    Die MAC Adresse schlägt hier auch fehl, wobei du die gar nicht erst erhalten wirst.
    Soll heißen, es gibt ganz einfach keine Möglichkeit, um das alleine durch die Webseite zu erreichen.
    Ich habe mal eine Seite gesehen, die einen telefonisch angerufen hat und einen Registrierungscode gesagt hat. Aber auch da hat jemand dann Festnetz und Handy... Oder man will das erst gar nicht nutzen, weil man keine persönlichen Daten preisgeben will.

    Um was für eine Art an Webseite geht es denn?

  5. Grüße,

    Ich bin gerade dabei eine Seite, bei denen Anmeldungen erforderlich sind zu programmieren. Wichtig dabei ist aber, dass nur eine Person einen Account haben darf. .... geht das im Internet?

    "Im Internet" du kannst es Idiotensicher machen - ein motivierter Idiot kommen da aber schon durch. Außer du nimmst die Seite offline - das garantiert 99,9...% Sicherheit.
    MFG
    bleicher

    --
    __________________________-

    FirefoxMyth
  6. Hallo!

    Es ist nicht moeglich. Ganz einfach. Sicher kannst Du z.B. per Postindent Zugangsdaten verschicken. Die kann aber trotzdem eine Person benutzen. Ist also kein Hindernis und ander User schreckst Du damit eher ab.

    Warum glaubst Du, sind viele Onlinespiele quasi Spyware Schlachtschiffe? (Gut, das hat auch Gruende die im Botumfeld zu suchen sind, denn jeder Softwarehersteller weiss, dass man nicht verhindern kann, dass ein User mehrere Accounts gleichzeitig nutzt.) Nur wenn Du Software auf einem PC laufen hast, kannst Du (halbwegs) effektiv erkennen oder verhindern, dass mehrere Accounts gleichzeitig genutzt werden. Die 5 anderen PCs daneben interessiert das aber nicht.

    --
    "Die Diebesgilde beklagte sich darueber, dass Mumm in aller Oeffentlichkeit behauptet hatte, hinter den meisten Diebstaehlen steckten Diebe."
          - T. Pratchett
  7. Es gibt doch seit einiger Zeit diese Sozialversicherungsnummer oder wie die heißt. Mit der könnts gehen, in anderen Ländern müsstest du halt was entsprechendes haben.
    Andrerseits, ein Forum oder was auch immer, wo sich Leute anmelden die sowas preisgeben, macht nicht wirklich den Eindruck als müsste man da Mitglied sein.

    Sag uns doch mal worum es so etwa geht.

    1. Mahlzeit Encoder,

      Es gibt doch seit einiger Zeit diese Sozialversicherungsnummer oder wie die heißt.

      Die gibt's seit Ewigkeiten. Was relativ neu ist, ist die Steuer-Identifikationsnummer.

      Trotzdem ist mir schleierhaft ...

      Mit der könnts gehen,

      ... was damit "gehen" könnte. Nur weil irgendwer (oder irgendein Programm) irgendwo irgendeine (alphanumerische) Zeichenkombination (die beliebig fälschbar ist, solange Du sie nicht verifizieren kannst - und die Finanzbehörde möchte ich sehen, die das On-the-fly in Echtzeit, vielleicht gar per SOAP o.ä., ermöglicht) eintippt, heißt das noch lange nicht, dass damit in irgendeiner Form irgendeine Art von Zugriff eingeschränkt wäre.

      MfG,
      EKKi

      --
      sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
      1. ... was damit "gehen" könnte. Nur weil irgendwer (oder irgendein Programm) irgendwo irgendeine (alphanumerische) Zeichenkombination (die beliebig fälschbar ist, solange Du sie nicht verifizieren kannst - und die Finanzbehörde möchte ich sehen, die das On-the-fly in Echtzeit, vielleicht gar per SOAP o.ä., ermöglicht) eintippt, heißt das noch lange nicht, dass damit in irgendeiner Form irgendeine Art von Zugriff eingeschränkt wäre.

        In Österreich ist die Sozialversicherungsnummer z.B. eine dreistellige Nummer gefolgt von einer Prüfzimmer und vom Geburtsdatum (6-stellig, DDMMYY). Der Algorithmus ist offen - somit kann ich beliebig viele gültige Sozialversicherungsnummern erzeugen.

        1. Mahlzeit suit,

          In Österreich ist die Sozialversicherungsnummer z.B. eine dreistellige Nummer gefolgt von einer Prüfzimmer und vom Geburtsdatum (6-stellig, DDMMYY). Der Algorithmus ist offen - somit kann ich beliebig viele gültige Sozialversicherungsnummern erzeugen.

          In Deutschland ist auch der Algorithmus für die Erzeugung der Prüfziffer der Personalausweisnummer offen ... und genau aus diesem Grund taugt diese auch nicht als "Verifizierung", zur Altersüberprüfung o.ä.

          MfG,
          EKKi

          --
          sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
          1. In Deutschland ist auch der Algorithmus für die Erzeugung der Prüfziffer der Personalausweisnummer offen ... und genau aus diesem Grund taugt diese auch nicht als "Verifizierung", zur Altersüberprüfung o.ä.

            Schon alleine, weil man sich innerhalb eines Haushalts bequem den Ausweis eines Familienmitglieds beschaffen kann.

            z.B. wenn der kleine hormongesteuerte Fritzi den Personalausweis und die Kreditkarte seines Vaters zum Besuch diverser nicht jugendfreier Seiten verwendet.

  8. Ich bin gerade dabei eine Seite, bei denen Anmeldungen erforderlich sind zu programmieren. Wichtig dabei ist aber, dass nur eine Person einen Account haben darf.

    Dann laß keine Accounts mehr zu, wenn schon einer besteht.

  9. Hallo Marcel,

    Ich bin gerade dabei eine Seite, bei denen Anmeldungen erforderlich sind zu programmieren. Wichtig dabei ist aber, dass nur eine Person einen Account haben darf. Ich meine gehört zu haben, dass das mit den IP's ganz gut geht ;)

    Du hast ja nun schon gehört, dass es nicht gut geht. Falls du ein Spiel machen willst, wäre es eventuell sinnvoll, es so zu programmieren, dass es die Accountkontrolle nicht nötig hat (hießt man kann sich durch 2 Accounts keinen Vorteil verschaffen) In den Onlinespielen, die ich kenne, wird zudem durch Auswertungen geprüft, wer potientiell mehrere Accounts hat und diese Personen müssen sich dann dazu äußern. Die IP_Adresse für diese Auswertungszwecke mit zu speichern, ist sicher sinnvoll, aber du musst dann alle Daten im Kontext betrachten.

    Wenn du etwas anderes machen willst, dass wäre sinnvoll zu wissen was, dann gibt es dafür bestimmt auch Optionen.

    ciao
    romy

    1. Hi Marcel

      Ich bin gerade dabei eine Seite, bei denen Anmeldungen erforderlich sind zu programmieren. Wichtig dabei ist aber, dass nur eine Person einen Account haben darf. Ich meine gehört zu haben, dass das mit den IP's ganz gut geht ;)
      ... Die IP_Adresse für diese Auswertungszwecke mit zu speichern, ist sicher sinnvoll, aber du musst dann alle Daten im Kontext betrachten.

      Habe zwar keine Ahnung von PGP, die Frage ist aber sowieso nicht PHP spezifisch. Ich würde sagen, anhand der IP-Adresse geht es heute nicht mehr, die Zeiten sind vorbei.

      @ Romy: Der Kontext der IP Adressen reicht da kaum mehr aus. Meine Freundin hat z.B. ein Netbook mit einem Surfstick. Ich habe hier an meinem Webserver verfolgen können, dass Clients mit einem solchen Surfstick grundsätzlich über einen Proxy beim Anbieter des Surfsticks mit ein und derselben IP-Adresse für viele Surfstick-Benutzer am Webserver reinkommen.

      Gruss
      Gina

      --
      X-Self-Code: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:° ss:| de:] js:| ch:| sh:) mo:| zu:)
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      1. EDIT: ich meine natürlich PHP, nicht PGP :-)

        --
        X-Self-Code: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:° ss:| de:] js:| ch:| sh:) mo:| zu:)
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      2. Hallo Gina,

        @ Romy: Der Kontext der IP Adressen reicht da kaum mehr aus. Meine Freundin hat z.B. ein Netbook mit einem Surfstick. Ich habe hier an meinem Webserver verfolgen können, dass Clients mit einem solchen Surfstick grundsätzlich über einen Proxy beim Anbieter des Surfsticks mit ein und derselben IP-Adresse für viele Surfstick-Benutzer am Webserver reinkommen.

        Ja, darauf wollte ich schon hinaus. ;) Ich war nur nicht deutlich genug.
        Ich spezifiziere nochmal. Eine gleiche IP-Adresse kann allenfalls ein Indiz sein, welches zusammen mit anderen Indizen, wie z.B. Browserheader (heißt das so?), Verhalten im Spiel, Anmeldeverhalten (immer gleichzeitig oder nacheinander) etc...zu betrachten ist, die Liste ist unendlich lang. Nur die Betrachtung aller Komponenten machen es möglich. Aber das muss dann händisch geprüft werden und ist aufwendig.

        ciao
        romy