Inferenza di codepage basata sull'entità HTML

HEBCI è una tecnica che consente a un gestore del modulo Web di rilevare in modo trasparente il set di caratteri con il quale i suoi dati sono stati codificati.
Scarica ora

Inferenza di codepage basata sull'entità HTML Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • GPL
  • Prezzo:
  • FREE
  • Nome editore:
  • Josh Myer
  • Sito web dell'editore:
  • http://www.joshisanerd.com/ruby_index/

Inferenza di codepage basata sull'entità HTML Tag


Inferenza di codepage basata sull'entità HTML Descrizione

HEBCI è una tecnica che consente a un gestore del modulo Web di rilevare in modo trasparente il set di caratteri con il quale i suoi dati sono stati codificati. HEBCI è una tecnica che consente a un gestore del modulo Web di rilevare in modo trasparente il carattere impostato i suoi dati è stato codificato con. Utilizzando i riferimenti di caratteri scelti con cautela, la codifica del browser può essere dedotta. Solo, è possibile garantire che i dati siano in una codifica standard senza affidarsi a (spesso inaffidabili) interazioni di codifica di webserver / browser. La soluzione ideale sarà interamente il browser neutro e passivo. Sfortunatamente, la specifica HTML non definisce alcun meccanismo per questo. Dobbiamo trovare un altro, sneakier, il modo di estrarre la codifica del personaggio corrente dal browser. Sentiero per noi, c'è un trucco che possiamo usare per questo: Codici di entità. I codici di entità sono stringhe come, che erano (sono) utilizzati per codificare caratteri specifici senza utilizzare Unicode. Quando il browser visualizza una pagina, sostituisce questi con il carattere appropriato dalla codifica corrente .thus e diventa il carattere 0x26 nella maggior parte dei codepages. Di per sé, questo è semplicemente l'implementazione alle trivia. Tuttavia, questo processo di traduzione si verifica ogni volta che un utente invia un modulo. Cioè, il browser analizza eventuali entità nelle variabili del modulo e lo sostituiscono con la rappresentazione della codifica corrente di tali caratteri quando l'utente fa clic su Invia. Pertanto, tutti i codici di entità all'interno dei campi del modulo vengono passati come valori di caratteri nella codifica corrente del browser. Quindi, tutto ciò che dobbiamo fare è trovare un'entità che è codificata in modo diverso in due codepages diversi. Lo infiliamo in un campo di forma, quindi guardiamo il suo valore quando otteniamo dati. Questo ci consente di distinguere tra le due codifiche. Infatti, potremmo guardare tutte le entità in molte codepages e trovare quelli che ci hanno permesso di disambiguare tra molti codepages. Questo è quello che ho fatto. Aggiungiamo elementi di forma nascosti con valori contenenti vari codici di entità, come °, ÷, e -. Quindi, quando l'utente invia il modulo, prendiamo ciascuno di quelli e li confrontiamo contro un elenco di quale personaggio ha quale valore in quale codepage. Cioè, ogni codepage ha un'impronta digitale unica per i valori di °, ÷, -. Per Macroman, è A1, D6, D1; Per UTF-8, C2B0, C3B7, E28094. Pertanto, dobbiamo solo attraversare il nostro tavolo di mappature di codepage-to-fingerprint e vedere quali partite di impronte digitali.Nota che, una volta scoperta questa tabella, il costo della impronta delle impronte digitali è molto bassa. E, nel caso di Misses, puoi supporre qualunque sia il codepage predefinito della tua pagina. Questo caso di caduta è equivalente a ciò che il codice avrebbe fatto prima di aggiungere questo strato di rilevamento.


Inferenza di codepage basata sull'entità HTML Software correlato

Nuhe.

NUHE è e alcune correzioni di bug e modifiche. W Nuhe è una base di regole quando le regole sono abbinate all'attività di registro (s). ...

166

Scarica

Illdito

ild è un piccolo strumento che ho scritto per permettermi di registrare il throughput della mia strada Traverse Technologies NetJet ISDN Router sotto Linux. ...

268

Scarica