123

项目概况

编写一个以比特币地址为参数的程序,并检查该地址是否有效。比特币地址使用base58编码,该Base58是用于比特币中使用的一种独特的编码方式,主要用于产生比特币的钱包地址。相比Base64,Base58不使用数字"0",字母大写"O",字母大写"I",和字母小写"l",以及"+"和"/"符号。

通过这种编码,比特币地址可编码25个字节:

  1. 第一个字节是版本号,此任务的版本号为零;

  2. 接下来的20个字节是一个ripemd-160摘要,但是对于这个任务,您不必知道:您可以将它们视为纯粹的任意数据;

  3. 最后四个字节是校验和检查。它们是前21个字节的双sha-256摘要的前四个字节。

要检查比特币地址,必须读取前21个字节,计算校验和,并检查它是否与最后4个字节对应。

程序可以返回布尔值,也可以在无效时引发异常。

最终效果如下图:

结果截图

全部评论

相关推荐

Aaso:挺好的,早挂早超生
点赞 评论 收藏
分享
03-26 22:27
已编辑
中南大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务