在这篇详尽的教程中,您将学习如何高效地操作比特币钱包,包括:
核心内容概览:创建比特币钱包
查询钱包余额
实现零手续费、一秒到账的比特币支付
从Mixin Network提取比特币至冷钱包或第三方交易平台
额外福利:获取Python入门教程,请私信小编关键词“学习”
准备工作:首先确保拥有一个Mixin Network账户。如若没有,只需一行代码即可快速创建:
userInfo = mixinApiBotInstance.createUser(session_key.decode(), "Tom Bot")
这段代码会在本地生成RSA密钥对,并调用Mixin Network创建账户,随后输出账户信息。
账户创建成功后,务必妥善保管账户信息,以便后续读取比特币资产余额或执行其他操作时使用。
新建账户并未预设比特币钱包,但读取比特币余额即可为其创建一个比特币钱包。
def readAssetAddress(asset_id, isBTC=True):
...
btcInfo = mixinApiNewUserInstance.getAsset(asset_id)
print(btcInfo)
if isBTC:
print(f"Account {userid}'s Bitcoin wallet address is {btcInfo.get('data').get('public_key')}")
...
创建后的比特币钱包详情显示,其中`public_key`即为比特币接收地址。
比特币的私钥受到Mixin Network多重签名保护,因此对用户而言是不可见的。提现和转账操作需用户提供正确的RSA签名、PIN码及会话密钥。
该账户不仅支持比特币,还包括以太坊、EOS等多种加密货币以及所有ERC20和EOS代币。
创建其他币种钱包的过程与创建比特币钱包类似,仅需读取对应资产余额即可。
EOS存款地址与其他币种略有不同,由`account_name`和`account_tag`两部分构成。如存入EOS至Mixin Network,需分别填写`account_name`(例如:eoswithmixin)和`account_tag`(例如:0aa2b00fad2c69059ca1b50de2b45569)。
您可以向比特币钱包进行存取操作。通常比特币网络中的转账手续费高昂(约0.001 BTC),但在Mixin Network内部,如果您已持有比特币并通过Mixin Messenger转移,则可享受零手续费并实现一秒到账的优势。
btcInfo = mixinApiNewUserInstance.getAsset(asset_id)
print(f"Account {userid}'s balance is {btcInfo.get('data').get('balance')}")
在Mixin Network内部进行任意加密货币交易均无需手续费且实时到账。欲为新创建的账户设置PIN码,可通过以下代码实现:
pinInfo = mixinApiNewUserInstance.updatePin(PIN, "")
print(pinInfo)在Mixin Network内的比特币支付实践
通过Mixin Messenger,我们可以先把比特币转账给机器人,再由机器人转账给新用户。
mixinApiNewUserInstance = generateMixinAPI(private_key, pin_token, session_id, userid, pin, "")
btcInfo = mixinApiBotInstance.transferTo(MASTER_UUID, BTC_ASSET_ID, AMOUNT, "")
print(btcInfo)查询Bitcoin余额,验证比特币是否已成功转入新账户。
提现比特币至冷钱包或第三方交易所
注意事项:提现需要支付手续费,请提前准备好比特币收款地址!
想要获取项目源码与相关素材的小伙伴,请私信小编关键词“源码”索取。
添加提现目标地址至Mixin Network
调用`createAddress` API,将返回一个`address_id`,用于后续提现操作。
BTC_WALLET_ADDR = "14T129GTbXXPGXXvZzVaNLRFPeHXD1C25C"
btcInfo = mixinApiBotInstance.createAddress(BTC_ASSET_ID, BTC_WALLET_ADDR, "BTC", "", "")
print(btcInfo)这里,14T129GTbXXPGXXvZzVaNLRFPeHXD1C25C 是一个比特币钱包地址,提现手续费为0.0034802 BTC,对应的`address_id`为"345855b5-56a5-4f3b-ba9e-d99601ef86c1"。
提取比特币到外部地址并跟踪提现状态
创建提现地址成功后,可用`readAddress`读取最新提现费用:
addr_id = btcInfo.get("data").get("address_id")
addrInfo = mixinApiBotInstance.getAddress(addr_id)
print(addrInfo)提交提现请求至Mixin Network,使用`withdrawals`方法,并传入由`createAddress`创建的`address_id`:
mixinApiBotInstance.withdrawals(btcInfo.get("data").get("address_id"), AMOUNT, "")