
通过椭圆曲线算法生成钥匙对(公钥和私钥),以太坊采用的是secp256k1曲线。公钥采用uncompressed模式,生成的私钥为长度32的16进制字串,公钥为长度64的公钥字串。公钥04开头。
把公钥去掉04,剩下的进行keccak-256的哈希,得到长度64的16进制字串,丢掉前面24个,拿后40个,再加上"0x",即为以太坊地址。
所以ETH address就是0x开头,后面40位是十六进制的字符串
Jquery Validate可以添加一个自定义方法,来验证eth address:
jQuery.validator.addMethod("eth", function(value, element) {
var tel = /^0[x|X]{1}[0-9|a-f|A-F]{40}$/
return this.optional(element) || (tel.test(value))
}, "Invalid ETH Address")
参考规则: https://www.jianshu.com/p/3291d0e4b994
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<title></title>
<script src="js/jquery-1.8.3.min.js" type="text/javascript"></script><!--换成你自己的js引用!-->
<script type="text/javascript">
$(document).ready(function () {
var str = ""
for (var i = 0i <10i++) {
//动态生成input
str += i + ":<input type=\"text\" id=\"input_" + i + "\" value=\"\" onblur=\"InputBlur(" + i + ")\"/>"
//动态生成input后面的提示
str += "<span id=\"spTip_" + i + "\"></span><br/><br/>"
}
$("#divContent").html(str)
})
//光标移开事件
function InputBlur(id) {
var vId = $("#input_" + id).val().trim()
if (vId.length <= 0) {
$("#spTip_" + id).html("请输入数据!")
} else {
$("#spTip_" + id).html("输入正确!")
}
}
</script>
</head>
<body>
<div id="divContent">
</div>
</body>
</html>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)