Upgrade to Pro — share decks privately, control downloads, hide ads and more …

暗号通貨の鍵を安全に管理するアーキテクチャを作ってみようとしている話

 暗号通貨の鍵を安全に管理するアーキテクチャを作ってみようとしている話

https://gitpitch.com/cryptofort-sh/cryptofort-presentations
2018/04/20 blockchain-es #1 で発表したスライドです。
GitPitchで作ってPDF化したら想定外にフォントがおかしくなったので、直せたら直してアップし直します。

Hideyuki Takeuchi

April 20, 2018
Tweet

More Decks by Hideyuki Takeuchi

Other Decks in Programming

Transcript

  1. CRYPTOFORT (整備中) (整備中) ステータス: コンセプト検証 言語: TypeScript その他: Terraform(?), Packer

    開発体制: 1人, 勉強会駆動開発 ライセンス: Apache License 2.0 https://cryptofort.sh/ https://github.com/cryptofort-sh/ [ GitPitch @ github/cryptofort-sh/cryptofort-presentations ]  10 / 29
  2. 署名 (ETHEREUM) const EthereumTx = require('ethereumjs-tx') const tx = new

    EthereumTx({ nonce: nonce, gasPrice: 5e+9, // 5gwei gasLimit: 31500, to: toAddress, value: value }) tx.sign(privateKey) const serializedTx = '0x' + tx.serialize().toString('hex') console.log(serializedTx) [ GitPitch @ github/cryptofort-sh/cryptofort-presentations ]  19 / 29
  3. ブロードキャスト (ETHEREUM) const Web3 = require('web3') const web3 = new

    Web3(new Web3.providers.HttpProvider(server)) web3.eth.sendRawTransaction(serializedTx, (err, hash) => { if (!err) { console.log(hash) } else { console.log(err) } }) [ GitPitch @ github/cryptofort-sh/cryptofort-presentations ]  20 / 29
  4. キューの中身 (仮) 送金キュー ブロードキャストキュー interface TransferRequest { currencyType: string; //

    通貨タイプ receiveAddress: string; // 受け取りアドレス amount: bigint; // 送金量 } interface BroadcastRequest { currencyType: string; // 通貨タイプ transaction: string; // トランザクション } [ GitPitch @ github/cryptofort-sh/cryptofort-presentations ]  22 / 29