Git Product home page Git Product logo

thorn's Introduction

Τһогɴ

Build Status

This is a direct port of the work of @vhf on https://github.com/vhf/confusable_homoglyphs to clojure .

a homoglyph is one of two or more graphemes, characters, or glyphs with shapes that appear identical or very similar wikipedia:Homoglyph

Unicode homoglyphs can be a nuisance on the web. Your most popular client, AlaskaJazz, might be upset to be impersonated by a trickster who deliberately chose the username ΑlaskaJazz.

  • AlaskaJazz is single script: only Latin characters.
  • ΑlaskaJazz is mixed-script: the first character is a greek letter.

You might also want to avoid people being tricked into entering their password on www.microsоft.com or www.faϲebook.com instead of www.microsoft.com or www.facebook.com. Here is a utility to play with these confusable homoglyphs.

Not all mixed-script strings have to be ruled out though, you could only exclude mixed-script strings containing characters that might be confused with a character from some unicode blocks of your choosing.

  • Allo and ρττ are fine: single script.
  • AlloΓ is fine when our preferred script alias is 'latin': mixed script, but Γ is not confusable.
  • Alloρ is dangerous: mixed script and ρ could be confused with p.

Documentation

codox generated documentation.

The tests might help you getting started.

Installation

thorn is available on Clojars.

Add this to your dependencies:

Clojars Project

License

Distributed under the Eclipse Public License, the same as Clojure.

Port of https://github.com/vhf/confusable_homoglyphs which is MIT-licensed

thorn's People

Contributors

mpenet avatar

Stargazers

Vic avatar Andrew Tropin avatar Daniel Jomphe avatar Dejan Josifović avatar Mike Rodriguez avatar Philipp Küng avatar Daniel Szmulewicz avatar Erik Bakstad avatar Julias Shaw avatar yāλu avatar Maciej Łotysz avatar Nicolas Berger avatar  avatar Łukasz Korecki avatar Vitaly Kornilov avatar Alex Podaras avatar Oleksandr Yakushev avatar Fabrizio Ferrai avatar Daniel Compton avatar Benjamin Albrecht avatar  avatar  avatar

Watchers

 avatar Daniel Compton avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.