2009-04-08 35 views
5

Sì, mi rendo conto che questa domanda è stata posta e ha risposto, ma ho domande specifiche su questo argomento che ritengo non siano chiare su quel thread e preferirei non perdersi nello shuffle su un altro thread .Email obfuscation question

I thread precedenti dicevano che rendere l'indirizzo di posta elettronica a un'immagine come fa Facebook è un'esperienza eccessiva e poco professionale per i siti Web aziendali/professionali. E sembra che il consenso generale sia quello di utilizzare una soluzione JavaScript document.write usando entità html o qualche altro metodo che si rompe e/o rende la stringa illeggibile da un semplice bot. L'applicazione che sto costruendo non ha nemmeno bisogno della funzionalità "mailto:", ho solo bisogno di visualizzare l'indirizzo email. Inoltre, questa è un'applicazione web aziendale, quindi ha bisogno di guardare/comportarsi il più professionale possibile. Ecco le mie domande:

  1. Se vado via document.write e passo la versione html entità di ogni personaggio, non ci sono web crawler abbastanza sofisticati per eseguire il javascript e tirare il testo reso in ogni caso? O è considerata la migliore pratica e completamente (o quasi) la prova dello spammer?

  2. Cosa c'è di così poco professionale nella soluzione di immagine? Se Facebook è una delle applicazioni più trafficate al mondo e non è gestita da dilettanti, perché il loro metodo viene completamente respinto nell'altro thread su questo argomento?

  3. Se la tua risposta (come nell'altro thread) è di non preoccuparmi di questo problema e lasciare che i filtri antispam degli utenti eseguano tutto il lavoro, ti preghiamo di spiegare perché ti senti in questo modo. Stiamo visualizzando gli indirizzi email dei nostri utenti che ci hanno fornito e mi sento responsabile di proteggerli il più possibile. Se ritieni che ciò non sia necessario, ti preghiamo di spiegarne il motivo.

Grazie.

risposta

4
  1. non è la prova spammer. Se qualcuno guarda il codice per il sito e det ermina il pattern che stai usando per i tuoi indirizzi email, quindi puoi scrivere un codice specifico per provarlo e decifrarlo.

  2. Non so che direi che non è professionale, ma impedisce la funzionalità copia-incolla, che è un grosso problema. Con le immagini, semplicemente non ottieni questa funzionalità. Cosa succede se si desidera copiare un indirizzo di posta elettronica relativamente complesso nella rubrica in Outlook? Devi ricorrere a digitarlo che è soggetto a errori.

  3. Spostare la responsabilità verso i filtri antispam degli utenti è davvero una risposta scarsa. Sebbene ritenga che gli utenti debbano essere diligenti nel difendersi dallo spam, ciò non esime la persona che pubblica l'indirizzo dalla responsabilità.

A tal fine, provare a farlo in un modo assolutamente sicuro è quasi impossibile. L'unico modo per farlo è avere un segreto condiviso che il codice usa per decifrare l'indirizzo email codificato. Il problema con questo è che poiché il javascript è interpretato dal lato client, non c'è nulla che tu possa mantenere un segreto dagli scrapers.

Gli encoder per gli indirizzi e-mail oggi funzionano in genere perché la maggior parte dei raccoglitori di e-mail non si preoccupano della codifica specifica per ogni sito. Proveranno ad avere un algoritmo minimo che otterrà i massimi risultati (il guadagno non vale la pena altrimenti). Per questo motivo, i semplici encoder annulleranno la maggior parte dei robot. Ma se qualcuno vuole VERAMENTE ottenere le e-mail sul tuo sito, allora possono e probabilmente anche facilmente, dal momento che il codice che scrive gli indirizzi è pubblicamente disponibile.

Considerando tutto ciò, è logico che Facebook abbia percorso l'immagine. Poiché possono modificare l'immagine per rendere OCR praticamente impossibile, possono virtualmente garantire che gli indirizzi di posta elettronica non verranno raccolti. Dato che probabilmente sono uno dei più grandi repository di indirizzi e-mail al mondo, si potrebbe sostenere che essi hanno un peso maggiore rispetto a chiunque di noi e, mentre sono scomodi, sono costretti a seguire questa strada per garantire sicurezza e privacy alla loro vasta base di utenti .

+0

Punti notevoli. Questo sito non è come FB, quindi non ho bisogno di essere così sicuro. Sono d'accordo sull'OCR, probabilmente alterano leggermente l'immagine ogni volta che renderebbe quasi impossibile l'OCR. Probabilmente farò una soluzione JS che utilizza sia le entità che un codice autogenerato unico per ogni richiesta. – Rich

4

Un bel po 'di ragioni per cui Javascript è una buona soluzione per ora (che potrebbe cambiare con l'evolversi del paesaggio).

  • Javascript offuscamento è una trappola per topi migliore per ora
  • Hai solo bisogno di correre più veloce degli altri. Fintanto che ci sarà poca frutta sospesa, gli spammer andranno a prenderli. Quindi, a meno che tutti non inizino a spostarsi su javascript, per ora va bene almeno
  • la maggior parte degli spammer utilizza script basati su http che OTTENGONO e analizzano usando espressioni regolari. usare un motore javascript per analizzare è certamente possibile ma rallenterà le cose

Per quanto riguarda la soluzione di Facebook, non la considero poco professionale, ma posso vedere chiaramente perché i puristi potrebbero non essere d'accordo.

  • Si rompe gli standard di accessibilità (non può essere analizzato dai browser, lettori vocali o essere cliccato.
  • Si rompe costrutto semantico (si tratta di un un collegamento più mailto immagine, no)
  • Si rompe lo strato di presentazione. Se si aumenta il browser dimensione del carattere predefinito o utilizzare un elevato contrasto CSS personalizzato, non si applica alla posta elettronica.