annotated-spec
openzeppelin-contracts
annotated-spec | openzeppelin-contracts | |
---|---|---|
44 | 234 | |
312 | 24,143 | |
0.0% | 1.0% | |
0.0 | 9.5 | |
3 months ago | 7 days ago | |
JavaScript | ||
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
annotated-spec
- Daily General Discussion - February 17, 2023
-
Can't the Sync Committee be cheaply bribed, and therefor serves no real purpose for security?
My current understanding: The Sync Committee selects 512 validators to continually sign off on block header. Any block headers that get >2/3 are "valid"1, such that Light Clients using this header for verification can trust it.
-
Ethereum Mainnet Merge Announcement
https://github.com/ethereum/annotated-spec/blob/master/phase...
Here we have slashing fields in the block body where you insert your proofs of slashable offense. There are functions with a “slash” in the name that describes precise state transition.
The hard part of slashing is finding these proofs because you have to do more work than necessary to detect slashing and produce proofs - that’s what this software does. It’s more expensive to run a slasher but you need only one and it does not matter who runs it, anyone can run it. The link that you sent says that this slasher broadcasts proofs by default - that way anyone can include it.
-
Explaining Ethereum's consensus mechanism after The Merge
According to Eth docs:
> One validator is randomly selected to be a block proposer in every slot. This validator is responsible for creating a new block and sending it out to other nodes on the network. Also in every slot, a committee of validators is randomly chosen, whose votes are used to determine the validity of the block being proposed.
The annotated code for this can be found in [2].
[1] https://github.com/ethereum/annotated-spec/blob/master/phase...
[2] https://notes.ethereum.org/@vbuterin/Sys3GLJbD#Misc
-
Daily staking income was irregularly high, anyone knows why?
Here's some more info on Sync committees if you are interested. https://github.com/ethereum/annotated-spec/blob/master/altair/sync-protocol.md
- Daily General Discussion - February 20, 2022
-
My First Impressions of Web3
The crux of the article is that the front-ends are all routing calls through centralized APIs to get their message included on the blockchain. Infura and Alchemy don't do much. They just pass a JSON-RPC message to an Ethereum node running on their servers. There is some additional indexing services they provide, but there are many open, decentralized alternatives for that such as TheGraph Protocol. And it's not unfeasible for an application to run its own Postgres instance to index data from the ETH blockchain.
As for full-fat clients on normal mobile devices, the main issue is the data requirements. Running a full node can take hundreds of gigabytes. It is possible on light hardware. People are running Beacon chain nodes on Raspberry Pis. But you do need the storage and that tends to be scarce on mobile.
Meanwhile, the Ethereum core devs are aware of this issue and are actively working towards it. They shipped the Altair hard fork this year that has adds sync committees which make it possible to do without needing the whole chain history (using merkle trees): https://github.com/ethereum/annotated-spec/blob/master/altai...
The light client to follow from those improvements is forthcoming:
-
ETH2.0 withdrawal roadmap post merge
It's not about validators going offline, it's about the validator set changing. To quote the annotated specs
-
Proof of stake is a scam and the people promoting it are scammers
Even a relatively light reading of the Annotated Spec[1] for Eth2 and/or the Eth Org's Proof of Stake FAQs[2] suggests the designers (and independent implementer-teams who gave feedback to designers... lather, rinse, repeat) understand it's important to consider the overall system "outside of the comfort zone".
[1] https://github.com/ethereum/annotated-spec/blob/master/phase...
[2] https://eth.wiki/en/concepts/proof-of-stake-faqs
-
Help understanding staking factors
Alpha leak: I am currently finishing up a full revision of my annotated specification for Altair, and plan to get it published in a couple of weeks. Meanwhile Vitalik's annotated spec has some info on how base rewards work under Altair.
openzeppelin-contracts
-
Mode - Comprehensive Starter Guide
// SPDX-License-Identifier: GPL-3.0 pragma solidity ^0.8.20; import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v5.0.0/contracts/token/ERC20/ERC20.sol"; interface Sfs { function register(address _recipient) external returns (uint256 tokenId); } contract ModeToken is ERC20 { address feeReceiver = msg.sender; constructor() ERC20("ModeTokenSFSTest", "SFST2") { //Example amount to mint our ERC20 _mint(msg.sender, 1000 10 * 18); // This is the SFS contract address on testnet Sfs sfsContract = Sfs(0xBBd707815a7F7eb6897C7686274AFabd7B579Ff6); //Registers this contract and assigns the NFT //to the deployer of this contract sfsContract.register(msg.sender); } }
-
Blockchain transactions decoding: making wallet activity understandable
Lets look the events of Open Zeppelin’s ERC20 token contract:
- Construir e implementar un VAULT (bóveda) ERC20 en Shardeum
-
Are ERC-777 Unsafe?
ERC-777 is difficult to implement properly, due to its susceptibility to different forms of attack(opens in a new tab). It is recommended to use ERC-20 instead. This page remains as a historical archive.
- OpenZeppelin is trying to avoid paying a bounty for a vulnerability that caused $1,1B worth of assets freeze
- Security improvements of the ERC20 token standard
- Ethereums most used token standard ERC20 requires security enhancements
- The most used Ethereums token standard (ERC20) requires a security patch.
What are some alternatives?
ethmerge.com-content - Markdown formatted content for the ethmerge.com website.
solmate - Modern, opinionated, and gas optimized building blocks for smart contract development.
consensus-specs - Ethereum Proof-of-Stake Consensus Specifications
hardhat - Hardhat is a development environment to compile, deploy, test, and debug your Ethereum software.
pm - Project Management: Meeting notes and agenda items
ERC721A - https://ERC721A.org
ens - Implementations for ENS core functionality: The registry, registrars, and public resolvers.
Safemoon.sol - safemoon contract
crypto-fees - Website for comparing total daily fees of various blockchain protocols.
solidity - Solidity, the Smart Contract Programming Language
EIPs - The Ethereum Improvement Proposal repository
truffle - :warning: The Truffle Suite is being sunset. For information on ongoing support, migration options and FAQs, visit the Consensys blog. Thank you for all the support over the years.