Référence Développeur
Similarité de Domaine Documentation de l'API
Similarité de Domaine Documentation de l'API: Comparez deux domaines pour leur similarité visuelle et textuelle en utilisant plusieurs algorithmes, notamment la distance de Levenshtein, la similarité de Jaro-Winkler et l'analyse visuelle des homoglyphes. Essentiel pour détecter le typosquattage, l'usurpation de marque et les domaines de phishing.
Similarité de Domaine
Comparez deux domaines pour leur similarité visuelle et textuelle en utilisant plusieurs algorithmes, notamment la distance de Levenshtein, la similarité de Jaro-Winkler et l'analyse visuelle des homoglyphes. Essentiel pour détecter le typosquattage, l'usurpation de marque et les domaines de phishing.
GET
/v1/similarity
Paramètres de Requête
| Paramètre | Type | Description |
|---|---|---|
| domain1 requis | string | Premier domaine (généralement le domaine légitime) |
| domain2 requis | string | Deuxième domaine (domaine potentiellement suspect) |
Algorithmes de Similarité
| Algorithme | Description |
|---|---|
levenshtein | Distance d'édition normalisée (0-1) |
jaro_winkler | Similarité de chaîne pondérée par préfixe |
visual | Détection de caractères homoglyphes/ressemblants |
Exemple de Requête
curl "https://domscan.net/v1/similarity?domain1=paypal.com&domain2=paypa1.com"
import requests
# Check multiple suspicious domains
legit = "paypal.com"
suspects = ["paypa1.com", "paypaI.com", "pаypal.com"] # Note: last one has Cyrillic 'а'
for suspect in suspects:
response = requests.get(
"https://domscan.net/v1/similarity",
params={"domain1": legit, "domain2": suspect}
)
data = response.json()
print(f"{suspect}: {data['typosquatting_risk']} risk (visual: {data['similarity']['visual']:.2f})")
Exemple de Réponse
{
"domain1": "paypal.com",
"domain2": "paypa1.com",
"similarity": {
"levenshtein": 0.86,
"jaro_winkler": 0.93,
"visual": 0.95
},
"is_similar": true,
"typosquatting_risk": "high",
"homoglyphs_detected": ["l → 1"],
"risk_factors": ["character_substitution", "high_visual_similarity"]
}
Champs de Réponse
| Champ | Type |
|---|---|
domain1 |
string |
domain2 |
string |
similarity_score |
number |
visual_similarity |
number |
textual_similarity |
number |
is_confusable |
boolean |
risk_level |
string |