Ethereum werkt omdat iedereen dezelfde standaarden volgt. Een wallet kan elk token tonen omdat tokens ERC-20 implementeren; een marktplaats kan elke NFT aanbieden omdat NFT's ERC-721 of ERC-1155 implementeren. Deze standaarden beginnen als Ethereum Improvement Proposals (EIP's); de voorstellen die interfaces voor toepassingen vastleggen, zoals tokenstandaarden, heten ERC's.
SemBricks implementeert deze standaarden in smart contracts en in de software eromheen. Volgens spec bouwen is belangrijk: een token dat net iets afwijkt van de standaard, kan in wallets, exchanges en DeFi-protocollen op manieren falen die pas na de launch zichtbaar worden.
Standaarden die wij implementeren
- ERC-721: unieke NFT's, elk token uniek.
- ERC-1155: meerdere tokentypes in één contract, voor edities, tickets en game-items.
- ERC-4626: getokeniseerde vaults, de standaardinterface voor stortingen met rendement.
- EIP-2612: permit, het goedkeuren van tokenuitgaven met een handtekening in plaats van een transactie.
- EIP-3009: transfer with authorization, ondertekende transfers zoals USDC die gebruikt.
- EIP-1559: de feemarkt met base fee en priority fee, relevant voor elke transactie die uw software verstuurt.
- ERC-6900: modulaire smart accounts met installeerbare plugins.
- EIP-712 voor typed data en ERC-4337 voor account abstraction, elk met een eigen pagina.
Waarom "volgens spec" lastiger is dan het klinkt
Standaarden laten ruimte voor interpretatie, en juist in de randgevallen gaan koppelingen mis:
- Returnwaarden en events: sommige bekende tokens geven geen boolean terug bij
transfer. Koppelingen moeten daarmee omgaan, en nieuwe tokens moeten dat niet herhalen. - Afronding: ERC-4626-vaults moeten in het voordeel van de vault afronden; gaat dat fout, dan ligt de deur open voor aanvallen die het aantal aandelen opblazen.
- Callbacks: safe transfers in ERC-721 en ERC-1155 roepen de ontvanger aan, wat reentrancy mogelijk maakt als de state in de verkeerde volgorde wordt bijgewerkt.
- Handtekeningen: permit- en EIP-3009-handtekeningen hangen af van chain-ID, domain separator, nonces en deadlines; fouten maken replay mogelijk op andere chains of na een fork.
Waar mogelijk bouwen wij op goed gereviewde referentie-implementaties, en wij testen tegen het gedrag dat de standaard voorschrijft, niet alleen tegen onze eigen verwachtingen.
Veelgestelde vragen over Ethereum-standaarden
Wat is het verschil tussen een EIP en een ERC?
Een EIP is elk voorstel om Ethereum te verbeteren, inclusief wijzigingen aan het protocol zelf, zoals EIP-1559. ERC's zijn de EIP's die standaarden voor toepassingen vastleggen, zoals tokeninterfaces. ERC-20 begon als EIP-20.
Kunnen jullie een standaard toevoegen aan een bestaand contract?
Alleen als het contract upgradebaar is of ontworpen is om uitgebreid te worden. Anders wordt de standaard toegevoegd via een nieuw contract, bijvoorbeeld een wrapper of een migratie naar een nieuw token.
Werken deze standaarden op layer 2-netwerken?
Ja. EVM layer 2-netwerken zoals Base en Arbitrum ondersteunen dezelfde token- en handtekeningstandaarden, met kleine verschillen in de feemechaniek waar wij rekening mee houden.
Wie is eigenaar van de code?
Het eigendom van de broncode wordt contractueel vastgelegd, en de code kan volledig van u zijn, inclusief documentatie en tests.
Bouw volgens de standaard
Vertel ons welke standaarden uw project nodig heeft en waarmee het moet samenwerken. Wij implementeren ze zo dat wallets, explorers en protocollen vanaf dag één met uw contracts werken.
Plan een vrijblijvend gesprek over Ethereum-standaarden
EIP-1559 Fees: Transacties die Bevestigd Worden
EIP-1559 feeafhandeling voor wallets, bots en backends: base fee en priority fee schatten, vastgelopen transacties vervangen en layer 2-verschillen.
EIP-3009 Transfer With Authorization (USDC) Integratie
EIP-3009 transfer with authorization: ondertekende, gasloze USDC-transfers met willekeurige nonces en geldigheidsvensters, veilig in uw betaalflow.
ERC-1155 Multi-Token Contracts Ontwikkelen
ERC-1155 multi-tokencontracts voor game-items, tickets en edities: fungibele en unieke tokens in één contract, met efficiënte transfers in batches.
ERC-4626 Getokeniseerde Vaults Ontwikkelen
ERC-4626-vaults veilig gebouwd: correcte aandelenadministratie en afronding, bescherming tegen inflatieaanvallen, fees en koppeling met DeFi.
ERC-6900 Modulaire Smart Accounts Ontwikkelen
ERC-6900 modulaire smart accounts: validatie-, uitvoer- en hookmodules voor functies zoals session keys en uitgavelimieten, en de vergelijking met ERC-7579.
ERC-721 NFT Contracts: Volgens de Standaard Gebouwd
ERC-721 NFT-contracts volgens de standaard: veilige transfers, approvals, metadata, royalties (ERC-2981) en gasefficiënt minten in batches.