イーサリアム 2.0 にはコンセンサスレイヤーとしてビーコンチェーンがあります。このチェーンのブロック構造を調べてみました
「Blockchain」タグの記事が53件件あります
全てのタグを見るイーサリアム 2.0:ロードマップ概観
イーサリアムは 2015 年から稼働してから既に 7 年間以上稼働しています。 全体的な完成度は、vitalik は 2022年9月15日実施された The Merge の後、ようやく 55% になっていると発言しています。 改めて、イーサリアム 2.0 のロードマップを確認してみたいです。
イーサリアム 2.0:全体アーキテクチャ
The Merge が実施され、イーサリアムは順調に 2.0 に進んでいます。 コンセンサスアルゴリズムが PoS に切り替え、シャーディングも実装されるため、1.0 よりアーキテクチャが複雑になってきたので、整理してみました。
2022 年 12 月では、シャーディングまだ実装できていません
TSS :閾値署名の紹介
ブロックチェーンを利用する際にプライベートキーを使いますが、プライベートキーのセキュアな管理方法については、ずっと研究されています。その中の1つは、Threshold Signature Scheme(TSS)という方法があります。
イーサリアム Goerli テストネットのテスト ETH 入手する方法 2022 版
イーサリアム 2.0 の The Merge 実施できて PoS に切り替えたので、テストネット Ropsten / Rinkeby / Kiln がシャットダウンして、今後は、テストネットは Goerli と Sepolia が稼働するためこちらを使いましょうと発表されました。
https://blog.ethereum.org/2022/06/21/testnet-deprecation
本記事では、Goerli テストネットの ETH 入手方法を紹介します。
alchemy サービスの紹介
初心者向け Solidity セキュリティ入門:Re-Entrancy 攻撃と対応方法
スマートコントラクトで実装する web3.0 アプリケーションは、公開・透明を実現する為ほとんどオープンソースしているので、資産を持っている上に全ての処理を公開していて、非常時攻撃されやすい状況になっています。 よって、web3.0 アプリケーションにとっては、スマートコントラクトのセキュリティは一番重要なことと言っても過言ではありません。
本記事では、初心者向けに、Re-Entrancy 攻撃と対応方法を紹介します。
Solidity 0.8.0 で導入された unchecked の調査
OpenZepplin の ERC721 スマートコントラクトのソースに、知らなかったキーワード unchecked
があったので調べてみました。
function _mint(address to, uint256 tokenId) internal virtual {
require(to != address(0), "ERC721: mint to the zero address");
require(!_exists(tokenId), "ERC721: token already minted");
_beforeTokenTransfer(address(0), to, tokenId, 1);
// Check that tokenId was not minted by `_beforeTokenTransfer` hook
require(!_exists(tokenId), "ERC721: token already minted");
unchecked {
// Will not overflow unless all 2**256 token ids are minted to the same owner.
// Given that tokens are minted one by one, it is impossible in practice that
// this ever happens. Might change if we allow batch minting.
// The ERC fails to describe this case.
_balances[to] += 1;
}
_owners[tokenId] = to;
emit Transfer(address(0), to, tokenId);
_afterTokenTransfer(address(0), to, tokenId, 1);
}
eth.rb を使ってスマートコントラクトの関数を呼び出す
web 3.0 業界は js が多い印象ですが、ruby からも使いたいですね。ここ数年間は、ruby の gem も増えているように見えます。 イーサリアム公式サイトのページに載せている eth.rb を使ってみました。
公開鍵技術による認証方式の紹介
公開鍵技術は、web 2.0 でもいろいろ使われていながらも、web 3.0 の基本構成の技術の1つではあります。