初链钱包下载:初链钱包都有哪些特点?最新进展是什么?

  • 时间:
  • 浏览:119

  初链钱包下载:初链钱包都有哪些特点?提到初链,相信很多数字货币的投资者都很清楚,对于想要投资初链,创建初链钱包的投资者来说,操作过程是什么样的呢?最近初365体育链钱包的最新进展是什么?这些问题相信都是想要了解初链的投资者们想了解的东西,小编整理了相关资讯以供参考:

  

  一、初链简介及相关特点

  初链(TrueChain)是全球最早的PBFT-POW混合共识公链之一。初链的创始团队创建初链的初衷就是为了解决公有链去中心化和性能之间的矛盾。

  初链轻钱包是初链和区块链技术相结合的生态应用服务之一,初链轻钱包的主要特点有:初链轻钱包除了支持自己的TRUE代币外还支持各种其他符合ERC2.0规范的代币;由于钱包代码是开源的,相比于其他钱包,具有更高的安全性;初链轻钱包作为初链中应用的入口,成为生态中的数字资产应用;在交易中,轻钱包的作用类似于支付宝或微信,可以作为产品间交易的接口。

  二、初链钱包如何下载

  1. 创建钱包

  核心代码

  let randomSeed=lightwallet.keystore.generateRandomSeed();

  lightwallet.keystore.createVault(

  { password: this.state.pwd, seedPhrase: randomSeed, hdPathString: "m/44'/60'/0'/0"

  },

  (err, ks)=> {

  ks.keyFromPassword(this.state.pwd, (err, pwDerivedKey)=> {

  ks.generateNewAddress(pwDerivedKey, 365官网1); var address=ks.getAddresses(); let keystoreV3=web3.eth.accounts

  .privateKeyToAccount('0x' + ks.exportPrivateKey(address[0], pwDerivedKey))

  .encrypt(this.state.pwd);

  storage.save({ key: 'walletInfo', data: { walletAddress: address[0], keystoreV3: keystoreV3, ks: ks

  }, expires: null

  });

  storage.save({ key: 'walletName', data: { walletName: this.state.walletName

  }, expires: null

  });

  });

  }

  );

  主要方法

  a.

  let randomSeed=lightwallet.keystore.generateRandomSeed();

  b.

  lightwallet.keystore.createVault(

  {

  password: this.state.pwd,

  seedPhrase: randomSeed,

  hdPathString: "m/44'/60'/0'/0"

  },

  (err, ks)=> { });

  c.

  ks.keyFromPassword(this.state.pwd, (err, pwDerivedKey)=> { })

  d.

  ks.generateNewAddress(pwDerivedKey, 1);

  e.

  var address=ks.getAddresses();

  f.

  ks.exportPrivateKey(address[0], pwDerivedKey)

  g.

  web3.eth.accounts.privateKeyToAccount('0x' + ks.exportPrivateKey(address[0], pwDerivedKey))

  h.

  let keystoreV3=web3.eth.accounts

  .privateKeyToAccount('0x' + ks.exportPrivateKey(address[0],pwDerivedKey))

  .encrypt(this.state.pwd);

  至此,钱包的创建已完成。客户端保存的钱包信息如下:

  storage.save({ key: 'walletInfo',

  data: {

  walletAddress: address[0],

  keystoreV3: keystoreV3,

  ks: ks

  }, expires: null});

  2. 导入钱包

  i. 助记词导入

  核心代码

  lightWallet.keystore.createVault(

  { password: option.password, seedPhrase: option.mnemonic, hdPathString: option.hdPathString

  },

  (err, ks)=> {

  ks.keyFromPassword(option.password, (err, pwDerivedKey)=> {

  ks.generateNewAddress(pwDerivedKey, 1); var address=ks.getAddresses(); let keystoreV3=web3.eth.accounts

  .privateKeyToAccount('0x' + ks.exportPrivateKey(address[0], pwDerivedKey))

  .encrypt(option.password);

  storage.save({ key: 'walletInfo', data: { walletAddress: address[0], keystoreV3: keystoreV3, ks: ks

  }, expires: null

  });

  storage.save({ key: 'walletName', data: { walletName: '新钱包'

  }, expires: null

  });

  setTimeout(()=> {

  option._this.refs.loading.close();

  option._this.props.navigation.navigate('Home');

  }, 100);

  });

  }

  );

  助记词导入和创建钱包流程大致相同,这里将不再赘述。

  ii. 私钥导入

  核心代码

  try { let keystoreV3=web3.eth.accounts.encrypt(this.state.privateFile, this.state.privatePwd);

  storage.save({ key: 'walletInfo', data: { walletAddress: '0x' + keystoreV3.address, keystoreV3: keystoreV3

  }, expires: null

  });

  storage.save({ key: 'walletName', data: { walletName: '新钱包'

  }, expires: null

  });

  setTimeout(()=> { this.refs.loading.close(); this.props.navigation.navigate('Home');

  }, 100);

  } catch (err) { this.refs.loading.close();

  setTimeout(()=> {

  Alert.alert(null, I18n.t('wallet.privateKeyIsWrong')); // '提示', '私钥无效,请重新输入!'

  }, 100);

  }

  私钥导入调用方法上文均已详解,此处将不再赘述。

  iii. keystore导入

  核心代码

  try { let account=web3.eth.accounts.decrypt(this.state.keystoreFile, this.state.keystorePwd);

  storage.save({ key: 'walletInfo', data: { walletAddress: account.address, keystoreV3: JSON.parse(this.state.keystoreFile)

  }, expires: null

  });

  storage.save({ key: 'walletName', data: { walletName: '新钱包'

  }, expires: null

  });

  setTimeout(()=> { this.refs.loading.close(); this.props.navigation.navigate('Home');

  }, 100);

  } catch (e) { this.refs.loading.close();

  setTimeout(()=> {

  Alert.alert(null, I18n.t('wallet.wrongByKeystoreOrPwd')); // '提示', '导入钱包失败, 请检查keystore或者密码是否正确');

  }, 100);

  }

  主要方法

  a.

  let account=web3.eth.accounts.decrypt(this.state.keystoreFile, this.state.keystorePwd);

  3. 备份钱包

  i. 导出助记词

  核心代码

  storage.load({ key: 'walletInfo'365体育 }).then((res)=> { let mneKeystore=lightwallet.keystore.deserialize(JSON.stringify(res.ks));

  mneKeystore.keyFromPassword(params.walletPassword, (err, pwDerivedKey)=> { let Mnemonic=mneKeystore.getSeed(pwDerivedKey); this.setState({ Mnemonic: Mnemonic

  });

  });

  });

  主要方法

  a.

  let mneKeystore=lightwallet.keystore.deserialize(JSON.stringify(res.ks));

  b.

  let Mnemonic=mneKeystore.getSeed(pwDerivedKey);

  三、初链TrueChain公布技术和产品新进展

  1、底层公链基础设施准备完成,已经在内部测试运营。

  2、初链钱包0.8版本准备就绪,完成了钱包生成、备份、用户注册和TRUE基于初链区块链的转账功能。

  3、初链公链理论设计取得突破性进展,初步设计了PBFT公链节点激励问题和多验证节点代理算法的架构。

  4、清华大学美术学院设计团队加入初链进行初链钱包UI的新版设计。

  5、RedHat工程师Archit加入初链核心技术团队,负责区块链底层技术和共识的开发。


365体育 365官网 365体育

猜你喜欢