MailChecker:一款功能强大的跨语言临时电子邮件安全检测库

MailChecker:一款功能强大的跨语言临时电子邮件安全检测库_第1张图片

关于MailChecker

MailChecker是一款功能强大的跨语言临时电子邮件安全检测工具,该工具可以帮助广大研究人员快速对目标电子邮件进行安全检测和内容验证。该工具后端由一个包含了超过55000个的虚假电子邮件提供商的数据库驱动,当你需要使用电子邮件与你的用户进行联系时,该工具可以有效地防止邮件被丢到“垃圾收件箱”中。

功能介绍

当前版本的MailChecker支持以下功能:

1、验证电子邮件的格式:底层使用validator.js电子邮件正则式验证工具和FILTER_VALIDATE_EMAIL(PHP);

2、验证电子邮件是否是一份临时邮件(类似yopmail);

MailChecker支持的语言

当前版本的MailChecker支持检测以下语言:

NodeJS

JavaScript

PHP

Python

Ruby

Rust

Elixir

Clojure

Go

工具下载

Go

go get https://github.com/FGRibreau/mailchecker

NodeJS/JavaScript

npm install mailchecker

Ruby

gem install ruby-mailchecker

PHP

composer require fgribreau/mailchecker

工具使用

NodeJS

var MailChecker = require('mailchecker');

 

if(!MailChecker.isValid('[email protected]')){

  console.error('O RLY !');

  process.exit(1);

}

 

if(!MailChecker.isValid('myemail.com')){

  console.error('O RLY !');

  process.exit(1);

}

JavaScript



PHP

use Fgribreau\MailChecker;

 

require __DIR__ . '/vendor/autoload.php';

 

if(!MailChecker::isValid('[email protected]')){

  die('O RLY !');

}

 

if(!MailChecker::isValid('myemail.com')){

  die('O RLY !');

}

Python

我们需要使用pip工具直接安装MailChecker:

pip install mailchecker

然后在你的代码中引入MailChecker.py文件即可:

from MailChecker import MailChecker

 

if not MailChecker.is_valid('[email protected]'):

    print "O RLY !"

Django验证器:【传送门】

Ruby

require 'mail_checker'

 

unless MailChecker.valid?('[email protected]')

  fail('O RLY!')

end

Rust

extern crate mailchecker;

 

assert_eq!(true, mailchecker::is_valid("[email protected]"));

assert_eq!(false, mailchecker::is_valid("\[email protected]\n"));

assert_eq!(false, mailchecker::is_valid("[email protected]"));

Elixir

Code.require_file("mail_checker.ex", "mailchecker/platform/elixir/")

 

unless MailChecker.valid?("[email protected]") do

  raise "O RLY !"

end

 

unless MailChecker.valid?("myemail.com") do

  raise "O RLY !"

end

Clojure

; no package yet; just drop in mailchecker.clj where you want to use it.

(load-file "platform/clojure/mailchecker.clj")

 

(if (not (mailchecker/valid? "[email protected]"))

  (throw (Throwable. "O RLY!")))

 

(if (not (mailchecker/valid? "myemail.com"))

  (throw (Throwable. "O RLY!")))

Go

package main

 

import (

  "log"

  

  "github.com/FGRibreau/mailchecker/platform/go"

)

 

if !mail_checker.IsValid('[email protected]') {

  log.Fatal('O RLY !');

}

 

if !mail_checker.IsValid('myemail.com') {

  log.Fatal("O RLY !")

}

开发环境

如需为该工具部署开发环境,请先在本地设备上安装并配置好Docker。

使用下列命令将该项目源码克隆至本地:

git clone https://github.com/FGRibreau/mailchecker.git

然后在Docker中安装并配置对应语言的依赖组件:

npm install

执行环境安装:

npm run setup

运行测试:

npm test

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

MailChecker:【GitHub传送门】

参考资料

https://github.com/chriso/validator.js/blob/master/validator.js#L38

Hook0 — Open-Source Webhooks-as-a-service (WaaS)

Image Charts | Instantly create beautiful charts

https://github.com/jonashaag/django-indisposable

你可能感兴趣的:(安全)