くま公(kuma)

かそつーゲームやNFTに色々チャレンジ中。 今はもっぱらNFT集め🐻 本業エンジニア。

くま公(kuma)

かそつーゲームやNFTに色々チャレンジ中。 今はもっぱらNFT集め🐻 本業エンジニア。

最近の記事

Squidでプロキシサーバー構築

はじめに 給付金活動で複垢している場合に、fausetなどでのIP制限を回避したり、シビル判定の回避に利用できればと思い、自作プロキシサーバを作ってみます。 前提 使用しているVPSはWebARENA Indigoの4GB, Ubuntu 20.04です。 ノード建てて運用しているVPSに空きがあるのでこれを使ってみました。 事前準備 ファイアウォール設定 ポートを開けているとポートスキャンを受けてしまうので、VPS側のファイアウォールを設定します。 Indigo

    • イーサリアムのL2ソリューションって?その② どんなソリューションがあるの?

      はじめに前回はL2ソリューションって何?ということだったので、今回は具体的にどんなソリューションがあるのかとその特徴を調べてみた。 前回の記事はこちら👇👇 OptimismOptimistic Rollupというロールアップを採用しており、Fraud Proofを使用するためセキュリティは高いがL2→L1の反映に時間がかかる。 EVM(Ethereum Virtual Machine)互換性を備えており、既存のDAppを移植することが可能。 2021年7月にメインネットにリ

      • イーサリアムのL2ソリューションって?

        はじめにArbitrumやzkSyncなどのイーサリアムのL2ソリューションが給付金として騒がれているので、そもそもこれらって何しているのっていうのを自分なりにまとめてみる。 決して$ARBが1つももらえなかったからすねているわけではない。 L1とは?L2の前にL1とは?ということで、イーサリアムのL1とはメインチェーンで、ブロックチェーンそのもの。 そのため、セキュリティと分散性が高い反面、トランザクション処理が遅くガス代が高い。 そのため大量のトランザクション処理が難し

        • Metamaskのアカウントアドレス生成の仕組み

          アカウントアドレス生成の仕組みについて学んだのでメモ。 シークレットリカバリフレーズが漏れたら、全アカウントのウォレットを抜かれちゃうの?という問いに対する答え。 シークレットリカバリフレーズ ↓(BIP39) シードキーを導出 ↓(SHA256 hash) 秘密鍵 ↓(ECDSA) 公開鍵 ↓(keccak256 hash) アカウントアドレス シードキーから複数のアカウントを生成する際は 秘密鍵1 ↓(hash) 秘密鍵2 のように生成される。そのため、シークレットリ

        Squidでプロキシサーバー構築

          トランザクションを発行するBot作成の道のり その⑤~プログラムからのコントラクト実行~

          はじめに前回からの続き。 前回はイーサリアムチェーンのローカル環境である「Ganache」を導入しローカル環境でGanacheをつかってコントラクト・コードをデプロイして実行しました。 今回はいよいよPythonのプログラムからデプロイしたコントラクト・コードを実行してみます。 事前準備プログラミングをする前に、必要なものを整理します。 トランザクションを送信する際に必要なものがいくつかあります。 それぞれ準備していきます。 HTTPProviderにJSON-RPCを実

          トランザクションを発行するBot作成の道のり その⑤~プログラムからのコントラクト実行~

          トランザクションを発行するBot作成の道のり その④~コントラクト・コードをデプロイして実行まで~

          はじめに前回からの続き。 前回はコントラクト・コードをプログラミングし、Remixでコンパイル→Remixのサンドボックスでデプロイして実行まで実施しました。 今回はサンドボックスではない実行環境を作成して、実行環境上にデプロイして動作させるまでを実施します。 イーサリアムチェーンのローカル環境「Ganache」イーサリアムチェーンをローカル環境に構築するためのツールである「Ganache」を利用します。 Ganacheを利用すると、ローカルPC上にイーサリアムチェーンを構

          トランザクションを発行するBot作成の道のり その④~コントラクト・コードをデプロイして実行まで~

          トランザクションを発行するBot作成の道のり その③~コントラクト・コードのプログラミングから実行まで~

          はじめに前回からの続き。 前回はすでにイーサリアムチェーンにデプロイ済みのコントラクトに対してRead系のコントラクトを実行しました。 次はWrite系のコントラクトを実行、といきたいところですがWrite系のコントラクトはNFTだとミントなど、トークンだと実際にトークン売買を行う必要があり、リアルに取引が発生します。 開発中に間違って実行したトランザクションで大損、なんてことがないようにテストをしたうえで本番のトランザクションを実行する必要があります。 今回は、テストのため

          トランザクションを発行するBot作成の道のり その③~コントラクト・コードのプログラミングから実行まで~

          トランザクションを発行するBot作成の道のり その②~スマートコントラクトの実行~

          はじめに前回からの続き。 前回はウォレット残高を確認するのみでしたが、今回は特定のスマートコントラクトを実行するまでやってみます。 イーサリアムとスマートコントラクトって?スマートコントラクトが生成されるまでの流れは以下の通りで、コンパイルされたコードがブロックチェーンに登録されると実行可能となり、その際には「Contract」アカウントが発行されます。 https://book.ethereum-jp.net/first_use/contract コンパイル済みのコー

          トランザクションを発行するBot作成の道のり その②~スマートコントラクトの実行~

          トランザクションを発行するBot作成の道のり その①~接続と残高確認~

          はじめにpythonでブロックチェーン上のスマートコントラクトにトランザクションのリクエストを送信するBotを作ってみます。 最終的には以下のようなものを作成して、実際に実行できるところまでを目指します。 自分の学習のための備忘録的なものなので、いろいろ不備があるかもしれませんがご了承ください。 Read系では、ウォレットの情報を見やすく表示するようなもの Write系では、NFTのミントやトークン交換を自動で行うようなもの 開発環境IDE: VS Code 言語: P

          トランザクションを発行するBot作成の道のり その①~接続と残高確認~