Apache Mnemonic

ImToken 钱包的研究

懵懂的女人 提交于 2020-10-09 05:25:53
这文章是要研究 ImWallet 钱包library的实际代码,在 https://github.com/consenlabs/token-core-android. The library code was previously updated two years ago. It should be superseded by TokenCoreX. The library supports Bitcoin, Ethereum blockchain. This library is written in Java for Android app. The library implements key management and signing of transaction. There are two parts in this library, wallet and foundation.The wallet part contains address, keystore, transaction signing, user identity, wallet management code. When wallet object is generated, it is passed a keystore . The keystore contains the metadata

以太坊 助记词提取 账户 公钥 私钥 最新实现可用。

≯℡__Kan透↙ 提交于 2020-08-13 17:23:35
step 1 装依赖的包(npm/yarn 自己选一个): yarn add bip39 ethereumjs-wallet ethereumjs- util npm install bip39 ethereumjs-wallet ethereumjs-util step 2 演示代码: const bip39 = require('bip39' ) const {hdkey} = require('ethereumjs-wallet' ) const util = require('ethereumjs-util' ) // 1 生成助记词 ;1.1 和 1.2 自己按需。 // 1.1 生成助记词 ;这里用生成的. // let mnemonic = bip39.generateMnemonic() // 1.2 生成助记词 ;这里用写死的. let mnemonic = "hold scale hybrid tank dilemma bullet ship language attitude rug tennis host" console.log(mnemonic) // 2.将助记词转成seed getSeed = async ()=> { let seed = await bip39.mnemonicToSeed(mnemonic) console.log( "seed

以太坊 助记词提取 账户 公钥 私钥 最新实现可用。

瘦欲@ 提交于 2020-08-11 20:51:47
step 1 装依赖的包(npm/yarn 自己选一个): yarn add bip39 ethereumjs-wallet ethereumjs- util npm install bip39 ethereumjs-wallet ethereumjs-util step 2 演示代码: const bip39 = require('bip39' ) const {hdkey} = require('ethereumjs-wallet' ) const util = require('ethereumjs-util' ) // 1 生成助记词 ;1.1 和 1.2 自己按需。 // 1.1 生成助记词 ;这里用生成的. // let mnemonic = bip39.generateMnemonic() // 1.2 生成助记词 ;这里用写死的. let mnemonic = "hold scale hybrid tank dilemma bullet ship language attitude rug tennis host" console.log(mnemonic) // 2.将助记词转成seed getSeed = async ()=> { let seed = await bip39.mnemonicToSeed(mnemonic) console.log( "seed

如何用私钥签名合约调用裸交易?【Web3.js】

戏子无情 提交于 2020-08-10 12:09:48
交易签名是你向区块链证明自己身份的唯一途径,这也是使用以太坊的Web3开发库时需要理清的一个基本概念。在这个教程中,我们讲学习如何使用Web3.js来完成以太坊智能合约调用交易的签名与提交,适用于包括ERC20代币合约在内的所有以太坊合约的调用。 用自己熟悉的语言学习以太坊DApp开发: Java | Php | Python | .Net / C# | Golang | Node.JS | Flutter / Dart 1、以太坊交易签名概述 有两种方法可以对交易进行签名:使用解锁账号或使用私钥。 如果你在用testRPC或Ganache开发,那么应该已经了解其创建的测试账号。这些账号默认都是解锁的,因此你可以直接用它们来签名交易。你也可以使用特殊的Web3提供器例如truffle-hdwallet-provider来生成解锁账号。 更常见的则是以用发起交易的地址对应的私钥来签名交易。考虑到安全性,当你用到私钥时需要格外小心。 2、创建以太坊智能合约调用交易 首先你需要构建一个调用合约方法的交易对象: // 12 word mnemonic for HD Wallet Provider // You can use any provider such as the HttpProvider if you are // signing with private key const

直播技术iOS 端实时音频采集与播放

爱⌒轻易说出口 提交于 2020-04-27 10:29:32
今天图玩智能为大家介绍在视频直播iOS中可以进行音视频采集的方法。我们为企业提供专业的直播平台二次开发服务,欢迎随时咨询www.toivan.com. 如 AVCaptureDevice, AudioQueue以及Audio Unit。其中 Audio Unit是最底层的接口,它的优点是功能强大,延迟低; 而缺点是学习成本高,难度大。对于一般的iOS应用程序,AVCaptureDevice和AudioQueue完全够用了。但对于音视频直播,最好还是使用 Audio Unit 进行处理,这样可以达到最佳的效果,著名的 WebRTC 就使用的 Audio Unit 做的音频采集与播放。今天我们就重点介绍一下Audio Unit的基本知识和使用。 下图是 Audio Unit在 iOS架构中所处的位置: 基本概念 在介绍 Audio Unit 如何使用之前,先要介绍一下Audio Unit的基本概念,这样更有利于我们理解对它的使用。 Audio Unit 的种类 -Audio Units 共可分为四大类,並可细分为七种,可参考下表: Audo Unit 的内部结构 - 参考下图,Audio Unit 内部结构分为两大部分,Scope 与Element。其中 scope 又分三种,分別是 input scope, output scope, global scope。而 element

钱包开发经验分享:BTC篇

泪湿孤枕 提交于 2020-02-25 21:27:17
钱包开发经验分享:BTC篇 BTC节点搭建 关于BTC的第一步,自然是搭建节点。由于BTC流行最久最广,网络上关于BTC的节点搭建,或者在同步节点时出现问题的相关文章很多,我这里就不赘述了(主要是没有环境用来搭建节点)。这里推荐一篇文章: 区块链-Linux下Bitcoin测试节点搭建 。没有搭建节点的可以考虑一下两个网站: blockcypher 、 blockchain 。 BTC的账户模型——UTXO 关于UTXO的含义阐述可以参考 理解比特币的 UTXO、地址和交易 ,这篇文章对UTXO的阐述我觉得挺全面的。在里面提到: 在比特币种,一笔交易的每一条输入和输出实际上都是 UTXO,输入 UTXO 就是以前交易剩下的, 更准确的说是以前交易的输出 UTXO 。这句阐述得从JSON数据去理解。 每一笔交易包含了大于等于一个输出,如下图: 输出列表包含了输出数量(value)、输入脚本(script)、地址(addresses)和脚本类型(script_type),我们主要关注输入数量。 每一笔交易的JSON都包含了大于等于零个输入(挖矿收益没有输入),如下图: 输入列表包含这笔输入对应的上一笔交易的哈希(prev_hash)、这笔输入对应的上一笔交易输出的下标(output_index),输入脚本(script)、脚本类型(scrip_type)等字段

钱包开发经验分享:ETH篇

*爱你&永不变心* 提交于 2020-01-07 15:53:44
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 钱包开发经验分享:ETH篇 [TOC] 开发前的准备 工欲善其事,必先利其器 一路开发过来,积累了一些钱包的开发利器和网站,与大家分享一下。这些东西在这行开发过的人都知道,只是给行外打算入行的人做个参考。 最好用的ETH钱包--MetaMask 下载: MetaMask(谷歌插件) 简介:这是一款以太坊浏览器插件,他可以很方便的查看或操作以太坊、erc20代币余额,也方便配合remix之类的合约IDE来部署合约,支持自定义代币,支持多种测试网络和正式网络以及自定义网络节点。总而言之,这是一款十分便利好用的钱包。 最官方的区块链浏览器--etherscan 网址: 以太坊官方区块链浏览器 简介:这是以太坊最最最官方的区块链浏览器了,对于开发者而言,它不仅仅只是查询区块交易那么简单,他还有更多有利于程序员开发的功能。它提供了众多api和小工具,它是所有测试网络的父域名,可以轻松地切换查看到所有测试网络的区块和交易,在部署合约时,它又协助你发布合约,因此对于开发者而言,这是一个不可缺少的网站。 获取测试币的网站--rinkeby、ropsten 网址: rinkeby 、 ropsten 简介:以太坊有很多共享的测试网络, 这篇博文 介绍了各个网络的区别和其区块链浏览器

Bytomd 助记词恢复密钥体验指南

陌路散爱 提交于 2019-12-06 13:58:39
比原项目仓库: Github地址: https://github.com/Bytom/bytom Gitee地址: https://gitee.com/BytomBlockchain/bytom 背景知识 Bytom 使用的 密钥类型为基于 ed25519 的 chainkd.XPub 代码见 bytom/crypto/ed25519/chainkd 文档见 https://chain.com/docs/1.2/protocol/specifications/chainkd ` 预备 代码修改 首先适当修改代码,添加一些打印输出,使得我们更好的进行验证。 如果只是想看 xpub ,而不关心 xprv(对于验证导入导出助记词功能来说已经够了)的话可以跳过这一步,不必修改源码 。 在 bytom/blockchain/pseudohsm/pseudohsm.go 中的 func (h *HSM) createKeyFromMnemonic(alias string, auth string, mnemonic string) (*XPub, error) 添加输出打印 root XPub 对应的 私钥 和 公钥 func (h *HSM) createKeyFromMnemonic(alias string, auth string, mnemonic string) (*XPub,