Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
homoglyphs — Homoglyphs: obtenha letras semelhantes, converta para ASCII, detecte possíveis idiomas e grupo UTF-8. | Kitploit
Ferramentas/GitHubGitHub/life4/homoglyphs
OSINT (Inteligência de Fontes Abertas)Ferramentas de PhishingColeta de InformaçõesEngenharia SocialArchived
GitHublife4/homoglyphs

homoglyphs

Homoglyphs: obtenha letras semelhantes, converta para ASCII, detecte possíveis idiomas e grupo UTF-8.

Ver Repositório
84239há 5 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

O PROJETO ESTÁ ARQUIVADO

Forks: https://github.com/orsinium/forks


Homoglyphs

Logotipo do Homoglyphs Build Status PyPI version Status Code size License

Homoglyphs -- biblioteca Python para obter homóglifos e converter para ASCII.

Funcionalidades

É uma versão mais inteligente do confusable_homoglyphs:

  • Autodect ou escolha manual de categoria (alias do ISO 15924).
  • Carregamento automático ou manual apenas dos alfabetos necessários na memória.
  • Conversão para ASCII.
  • Mais configurável.
  • Mais estável.

Instalação

root@kitploit:~
sudo pip install homoglyphs

Uso

A melhor forma de explicar algo é mostrar como funciona. Então, vamos dar uma olhada no uso real.

Importando:

root@kitploit:~
import homoglyphs as hg

Idiomas

root@kitploit:~
#detectar
hg.Languages.detect('w')
# {'pl', 'da', 'nl', 'fi', 'cz', 'sr', 'pt', 'it', 'en', 'es', 'sk', 'de', 'fr', 'ro'}
hg.Languages.detect('т')
# {'mk', 'ru', 'be', 'bg', 'sr'}
hg.Languages.detect('.')
# set()

# obter alfabeto para idiomas
hg.Languages.get_alphabet(['ru'])
# {'в', 'Ё', 'К', 'Т', ..., 'Р', 'З', 'Э'}

# obter todos os idiomas
hg.Languages.get_all()
# {'nl', 'lt', ..., 'de', 'mk'}

Categorias

Categorias -- (alias do ISO 15924).

root@kitploit:~
#detectar
hg.Categories.detect('w')
# 'LATIN'
hg.Categories.detect('т')
# 'CYRILLIC'
hg.Categories.detect('.')
# 'COMMON'

# obter alfabeto para categorias
hg.Categories.get_alphabet(['CYRILLIC'])
# {'ӗ', 'Ԍ', 'Ґ', 'Я', ..., 'Э', 'ԕ', 'ӻ'}

# obter todas as categorias
hg.Categories.get_all()
# {'RUNIC', 'DESERET', ..., 'SOGDIAN', 'TAI_LE'}

Homóglifos

Obter homóglifos:

root@kitploit:~
# get homoglyphs (latin alphabet initialized by default)
hg.Homoglyphs().get_combinations('q')
# ['q', '𝐪', '𝑞', '𝒒', '𝓆', '𝓺', '𝔮', '𝕢', '𝖖', '𝗊', '𝗾', '𝘲', '𝙦', '𝚚']

Carregamento de alfabeto:

root@kitploit:~
# load alphabet on init by categories
homoglyphs = hg.Homoglyphs(categories=('LATIN', 'COMMON', 'CYRILLIC'))  # alphabet loaded here
homoglyphs.get_combinations('гы')
# ['rы', 'гы', 'ꭇы', 'ꭈы', '𝐫ы', '𝑟ы', '𝒓ы', '𝓇ы', '𝓻ы', '𝔯ы', '𝕣ы', '𝖗ы', '𝗋ы', '𝗿ы', '𝘳ы', '𝙧ы', '𝚛ы']

# load alphabet on init by languages
homoglyphs = hg.Homoglyphs(languages={'ru', 'en'})  # alphabet will be loaded here
homoglyphs.get_combinations('гы')
# ['rы', 'гы']

# manual set alphabet on init      # eng rus
homoglyphs = hg.Homoglyphs(alphabet='abc абс')
homoglyphs.get_combinations('с')
# ['c', 'с']

# load alphabet on demand
homoglyphs = hg.Homoglyphs(languages={'en'}, strategy=hg.STRATEGY_LOAD)
# ^ alphabet will be loaded here for "en" language
homoglyphs.get_combinations('гы')
# ^ alphabet will be loaded here for "ru" language
# ['rы', 'гы']

Você pode combinar categories, languages, alphabet e quaisquer estratégias como desejar. As estratégias especificam como lidar com caracteres ainda não carregados:

  • STRATEGY_LOAD: carregar categoria para este caractere
  • STRATEGY_IGNORE: adicionar caractere ao resultado
  • STRATEGY_REMOVE: remover caractere do resultado

Convertendo glifos para caracteres ASCII

root@kitploit:~
homoglyphs = hg.Homoglyphs(languages={'en'}, strategy=hg.STRATEGY_LOAD)

# convert
homoglyphs.to_ascii('ТЕСТ')
# ['TECT']
homoglyphs.to_ascii('ХР123.')  # isto é cirílico "х" e "р"
# ['XP123.', 'XPI23.', 'XPl23.']

# string com caracteres que não podem ser convertidos por padrão será ignorada
homoglyphs.to_ascii('лол')
# []

# você pode definir estratégia para remover caracteres não ASCII não convertidos do resultado
homoglyphs = hg.Homoglyphs(
    languages={'en'},
    strategy=hg.STRATEGY_LOAD,
    ascii_strategy=hg.STRATEGY_REMOVE,
)
homoglyphs.to_ascii('лол')
# ['o']

# também pode definir um intervalo de códigos de caracteres permitidos para ascii (0-128 por padrão):
homoglyphs = hg.Homoglyphs(
    languages={'en'},
    strategy=hg.STRATEGY_LOAD,
    ascii_strategy=hg.STRATEGY_REMOVE,
    ascii_range=range(ord('a'), ord('z')),
)
homoglyphs.to_ascii('ХР123.')
# ['l']
homoglyphs.to_ascii('хр123.')
# ['xpl']
Baixar ferramenta