chinaid

package
v0.0.0-...-e8daaa7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 11, 2024 License: MIT Imports: 6 Imported by: 3

README

chinaid

fork from China ID

chinaid 是一个用于生成中国各种信息的测试库,比如姓名、身份证号、地址、邮箱、银行卡号等。

本项目生成的测试数据尽量付合真实数据以模拟用户真实行为:

  • 姓名: 使用常用的姓氏外加常见的名字,尽量使数据 "正常"
  • 身份证号: 采用标准身份证规则生成(校验码有效)
  • 手机号: 常用的手机号头部外加随机数字
  • 银行卡号: 银行卡号采用正确的卡 bin 生成(LUHN 算法有效)
  • 邮箱: 随机的前缀外加常用的域名后缀
  • 地址: 省/城市信息使用真实数据,具体地址随机生成
fmt.Println("姓名:", chinaid.Name())
fmt.Println("性别:", chinaid.Sex())
fmt.Println("地址:", chinaid.Address())
fmt.Println("手机:", chinaid.Mobile())
fmt.Println("身份证:", chinaid.ChinaID())
fmt.Println("有效期:", chinaid.ValidPeriod())
fmt.Println("发证机关:", chinaid.IssueOrg())
fmt.Println("邮箱:", chinaid.Email())
fmt.Println("银行卡:", chinaid.BankNo())
fmt.Println("日期:", chinaid.RandDate())
姓名: 武锴脹
性别: 男
地址: 四川省攀枝花市嫯航路3755号婘螐小区3单元1216室
手机: 18507708621
身份证: 156315197605103397
有效期: 20020716-20220716
发证机关: 平凉市公安局某某分局
邮箱: wvcykkyh@kjsth.co
银行卡: 6230959897028597497
日期: 1977-06-16 23:41:28 +0800 CST

Resources

  1. Chinese Id Card Number (Resident Identity Card) and name Generator
  2. China ID

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AreaCode = [...]string{
	"11", "12", "13", "14", "15", "21", "22", "23", "31", "32", "33", "34", "35", "36", "37", "41", "42", "43", "44",
	"45", "46", "50", "51", "52", "53", "54", "61", "62", "63", "64", "65", "71", "81", "82", "91",
}
View Source
var AreaCodeMap = map[string]string{
	"11": "北京", "12": "天津", "13": "河北", "14": "山西", "15": "内蒙古", "21": "辽宁", "22": "吉林", "23": "黑龙江",
	"31": "上海", "32": "江苏", "33": "浙江", "34": "安徽", "35": "福建", "36": "江西", "37": "山东", "41": "河南", "42": "湖北",
	"43": "湖南", "44": "广东", "45": "广西", "46": "海南", "50": "重庆", "51": "四川", "52": "贵州", "53": "云南", "54": "西藏",
	"61": "陕西", "62": "甘肃", "63": "青海", "64": "宁夏", "65": "新疆", "71": "台湾", "81": "香港", "82": "澳门", "91": "国外",
}
View Source
var CardBins = [...]CardBin{
	{
		"工商银行",
		19,
		"借记卡",
		[]int{
			620058, 621225, 621226, 621227, 621281, 621288, 621558, 621559, 621670, 621721, 621722, 621723, 622200, 622202, 622203, 622208, 622307, 622902, 623062,
		},
	},
	{
		"农业银行",
		19,
		"借记卡",
		[]int{
			621282, 621336, 621671, 622821, 622822, 622823, 622825, 622827, 622828, 622841, 622843, 622845, 622846, 622848, 622849,
		},
	},
	{
		"中国银行",
		19,
		"借记卡",
		[]int{
			456351, 601382, 620061, 621283, 621330, 621332, 621568, 621569, 621660, 621661, 621663, 621666, 621668, 621669, 621672, 621725, 621756, 621758, 621785, 621786, 621787, 621788, 621790, 623208, 623569, 623571, 623572, 623573, 623575, 623586,
		},
	},
	{
		"建设银行",
		16,
		"借记卡",
		[]int{
			421349, 434061, 434062, 436742, 524094, 526410, 552245, 620060, 621080, 621081, 621082, 621284, 621466, 621467, 621488, 621499, 621598, 621673, 621700, 622280, 622700, 622966, 622988, 623094, 623211, 623668,
		},
	},
	{
		"兴业银行",
		18,
		"借记卡",
		[]int{
			622908, 622909, 966666,
		},
	},
	{
		"光大银行",
		16,
		"借记卡",
		[]int{
			620518, 621489, 621491, 621492, 622661, 622662, 622663, 622664, 622665, 622666, 622667, 622668, 622669, 622670, 622673, 623156,
		},
	},
	{
		"中信银行",
		16,
		"借记卡",
		[]int{
			442729, 442730, 621768, 621771, 621773, 622690, 622691, 622696, 622698, 622998, 968807,
		},
	},
	{
		"平安银行",
		16,
		"借记卡",
		[]int{
			602907, 621626, 622298, 622538, 622986, 622989, 623058, 627066,
		},
	},
	{
		"民生银行",
		16,
		"借记卡",
		[]int{
			415599, 421393, 421865, 427570, 472067, 472068, 621691, 622616, 622617, 622618, 622619, 622620, 622622, 623683,
		},
	},
	{
		"广发银行股份有限公司",
		19,
		"借记卡",
		[]int{
			621462, 622568,
		},
	},
	{
		"浦东发展银行",
		16,
		"借记卡",
		[]int{
			621351, 621792, 621793, 621795, 622516, 622518, 622521, 622522, 622523,
		},
	},
	{
		"交通银行",
		17,
		"借记卡",
		[]int{
			405512, 601428, 622258, 622260, 622262,
		},
	},
	{
		"邮储银行",
		19,
		"借记卡",
		[]int{
			620062, 621095, 621098, 621285, 621599, 621797, 621798, 621799, 622150, 622151, 622188, 623218, 623698, 955100,
		},
	},
	{
		"招商银行",
		16,
		"借记卡",
		[]int{
			410062, 468203, 512425, 524011, 621286, 621483, 621485, 621486, 622580, 622588, 622609,
		},
	},
	{
		"北京农村商业银行",
		19,
		"借记卡",
		[]int{
			621067,
		},
	},
	{
		"渤海银行",
		16,
		"借记卡",
		[]int{
			621453, 622884,
		},
	},
	{
		"常熟农村商业银行",
		19,
		"借记卡",
		[]int{
			622323,
		},
	},
	{
		"长安银行",
		19,
		"借记卡",
		[]int{
			621448,
		},
	},
	{
		"德阳银行",
		19,
		"借记卡",
		[]int{
			622561,
		},
	},
	{
		"福建海峡银行股份有限公司",
		18,
		"借记卡",
		[]int{
			621267,
		},
	},
	{
		"福建省农村信用社联合社",
		19,
		"借记卡",
		[]int{
			622184, 623036,
		},
	},
	{
		"广东省农村信用社联合社",
		19,
		"借记卡",
		[]int{
			621518, 621728,
		},
	},
	{
		"广东顺德农村商业银行",
		16,
		"借记卡",
		[]int{
			622322,
		},
	},
	{
		"广州农村商业银行股份有限公司",
		18,
		"借记卡",
		[]int{
			622439,
		},
	},
	{
		"广州银行股份有限公司",
		19,
		"借记卡",
		[]int{
			622467,
		},
	},
	{
		"桂林市商业银行",
		17,
		"借记卡",
		[]int{
			622856,
		},
	},
	{
		"哈尔滨银行",
		17,
		"借记卡",
		[]int{
			622425,
		},
	},
	{
		"邯郸银行",
		18,
		"借记卡",
		[]int{
			622960,
		},
	},
	{
		"河北银行股份有限公司",
		19,
		"借记卡",
		[]int{
			623000,
		},
	},
	{
		"湖北农信社",
		16,
		"借记卡",
		[]int{
			621013, 622412,
		},
	},
	{
		"湖南省农村信用社联合社",
		19,
		"借记卡",
		[]int{
			622169, 623090,
		},
	},
	{
		"黄河农村商业银行",
		19,
		"借记卡",
		[]int{
			622947, 623095,
		},
	},
	{
		"吉林农信联合社",
		19,
		"借记卡",
		[]int{
			622935,
		},
	},
	{
		"江苏农信社",
		19,
		"借记卡",
		[]int{
			622324,
		},
	},
	{
		"江苏省农村信用社联合社",
		19,
		"借记卡",
		[]int{
			623066,
		},
	},
	{
		"江苏银行",
		19,
		"借记卡",
		[]int{
			622173, 622873, 622876,
		},
	},
	{
		"江西农信联合社",
		19,
		"借记卡",
		[]int{
			622682,
		},
	},
	{
		"江西银行",
		16,
		"借记卡",
		[]int{
			621269, 621359, 622275,
		},
	},
	{
		"九江银行股份有限公司",
		19,
		"借记卡",
		[]int{
			622162, 623146,
		},
	},
	{
		"昆明农联社",
		16,
		"借记卡",
		[]int{
			622369, 623190,
		},
	},
	{
		"龙江银行",
		16,
		"借记卡",
		[]int{
			622860,
		},
	},
	{
		"南充市商业银行",
		19,
		"借记卡",
		[]int{
			623072,
		},
	},
	{
		"南京银行",
		16,
		"借记卡",
		[]int{
			621777,
		},
	},
	{
		"内蒙古自治区农村信用联合社",
		19,
		"借记卡",
		[]int{
			621737, 622976,
		},
	},
	{
		"宁波银行",
		19,
		"借记卡",
		[]int{
			621418, 622281, 622316,
		},
	},
	{
		"齐鲁银行股份有限公司",
		19,
		"借记卡",
		[]int{
			622379,
		},
	},
	{
		"秦皇岛银行股份有限公司",
		19,
		"借记卡",
		[]int{
			621237,
		},
	},
	{
		"青岛银行",
		19,
		"借记卡",
		[]int{
			623170,
		},
	},
	{
		"青海省农村信用社联合社",
		16,
		"借记卡",
		[]int{
			621517,
		},
	},
	{
		"山东省农村信用社联合社",
		16,
		"借记卡",
		[]int{
			621521, 622319, 622320,
		},
	},
	{
		"上海农商银行",
		19,
		"借记卡",
		[]int{
			623162,
		},
	},
	{
		"上海银行",
		18,
		"借记卡",
		[]int{
			620522, 622267, 622279, 622468, 622892,
		},
	},
	{
		"深圳农村商业银行",
		16,
		"借记卡",
		[]int{
			623035,
		},
	},
	{
		"台州银行",
		19,
		"借记卡",
		[]int{
			623039,
		},
	},
	{
		"泰安银行",
		19,
		"借记卡",
		[]int{
			623196,
		},
	},
	{
		"温州银行",
		16,
		"借记卡",
		[]int{
			621977,
		},
	},
	{
		"浙江稠州商业银行",
		16,
		"借记卡",
		[]int{
			621028,
		},
	},
	{
		"浙江民泰商业银行",
		19,
		"借记卡",
		[]int{
			621088, 621726,
		},
	},
}
View Source
var CityName = [...]string{}/* 339 elements not displayed */
View Source
var DomainSuffix = [...]string{
	".biz", ".cloud", ".club", ".cn", ".co", ".com", ".com.cn", ".info", ".me", ".net", ".org", ".space", ".store",
	".us", ".vip", ".xyz",
}
View Source
var MobilePrefix = [...]string{
	"130", "131", "132", "133", "134", "135", "136", "137", "138", "139", "145", "147", "150", "151", "152",
	"153", "155", "156", "157", "158", "159", "170", "176", "177", "178", "180", "181", "182", "183", "184",
	"185", "186", "187", "188", "189",
}
View Source
var ProvinceCity = [...]string{}/* 345 elements not displayed */
View Source
var Surnames = []string{}/* 292 elements not displayed */
View Source
var ValCodeArr = [...]string{
	"1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2",
}
View Source
var Wi = [...]int{
	7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2,
}

Functions

func Address

func Address() string

Address 返回随机地址

func BankNo

func BankNo() string

BankNo 返回随机银行卡号,银行卡号符合LUHN 算法并且有正确的卡 bin 前缀

func ChinaID

func ChinaID() string

ChinaID 返回中国大陆地区身份证号.

func Email

func Email() string

Email 返回随机邮箱,邮箱目前只支持常见的域名后缀

func IssueOrg

func IssueOrg() string

IssueOrg 返回身份证签发机关(eg: XXX公安局/XX区分局)

func LUHNProcess

func LUHNProcess(preCardNo string) string

LUHNProcess 通过 LUHN 合成卡号处理给定的银行卡号

func Mobile

func Mobile() string

Mobile 返回中国大陆地区手机号

func Name

func Name() string

Name 返回中国姓名,姓名已经尽量返回常用姓氏和名字

func ProvinceAndCity

func ProvinceAndCity() string

ProvinceAndCity 返回随机省/城市

func RandChinese

func RandChinese(minLen, maxLen int) string

RandChinese 指定范围随机中文字符.

func RandChineseN

func RandChineseN(n int) string

RandChineseN 指定长度随机中文字符(包含复杂字符)。

func RandDate

func RandDate() time.Time

RandDate 返回随机时间,时间区间从 1970 年 ~ 2020 年

func RandDateRange

func RandDateRange(from, to time.Time) time.Time

RandDateRange 返回随机时间,时间区间从 1970 年 ~ 2020 年

func RandInt

func RandInt(min, max int) int

RandInt 指定范围随机 int

func RandInt64

func RandInt64(min, max int64) int64

RandInt64 指定范围随机 int64

func RandSmallLetters

func RandSmallLetters(len int) string

RandSmallLetters 随机英文小写字母.

func Sex

func Sex() string

Sex 返回性别

func ValidPeriod

func ValidPeriod() string

ValidPeriod 返回身份证有效期限(eg: 20150906-20350906),有效期限固定为 20 年

Types

type CardBin

type CardBin struct {
	Name     string
	Length   int
	CardType string
	Prefixes []int
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL