Merge pull request #1852 from MetaMask/blacklist-refactor2
blacklist - use module eth-phishing-detectfeature/default_network_editable
commit
b1311b48c9
@ -1,23 +0,0 @@ |
||||
const levenshtein = require('fast-levenshtein') |
||||
const LEVENSHTEIN_TOLERANCE = 4 |
||||
|
||||
// credit to @sogoiii and @409H for their help!
|
||||
// Return a boolean on whether or not a phish is detected.
|
||||
function isPhish({ hostname, blacklist, whitelist, fuzzylist }) { |
||||
|
||||
// check if the domain is part of the whitelist.
|
||||
if (whitelist && whitelist.includes(hostname)) return false |
||||
|
||||
// check if the domain is part of the blacklist.
|
||||
if (blacklist && blacklist.includes(hostname)) return true |
||||
|
||||
// check for similar values.
|
||||
const levenshteinForm = hostname.replace(/\./g, '') |
||||
const levenshteinMatched = fuzzylist.some((element) => { |
||||
return levenshtein.get(element, levenshteinForm) <= LEVENSHTEIN_TOLERANCE |
||||
}) |
||||
|
||||
return levenshteinMatched |
||||
} |
||||
|
||||
module.exports = isPhish |
Loading…
Reference in new issue