Midnight sposta l'RPC e l'indicizzatore del Mainnet su Blockfrost

Le applicazioni in produzione ora necessitano degli endpoint di Blockfrost e dell'autenticazione del progetto. Alcuni wallet potrebbero anche dover ricostruire lo stato di sincronizzazione salvato rispetto al precedente indicizzatore di Midnight.

By SongMarketCap

Cardano News - Midnight sposta l'RPC e l'indicizzatore del Mainnet su Blockfrost

Midnight ha ritirato i propri endpoint pubblici del mainnet per RPC e indicizzatore il 30 settembre alle 22:00 UTC. Blockfrost ora fornisce l'accesso pubblico primario a questi servizi, cambiando il modo in cui applicazioni e wallet si connettono alla rete di produzione.

Gli endpoint del Midnight Mainnet sono stati ritirati

La modifica riguarda rpc.mainnet.midnight.network e indexer.mainnet.midnight.network. Secondo la documentazione di Midnight, il nome host dell'indicizzatore ha smesso di risolversi il 1° ottobre. Il precedente endpoint RPC risponde ancora alle richieste, ma può smettere in qualsiasi momento.

Midnight è una blockchain per la protezione dei dati all'interno dell'ecosistema Cardano. I suoi smart contract possono verificare condizioni usando prove a conoscenza zero mentre gli input sensibili restano privati. Le applicazioni dipendono dai servizi di rete per leggere i record della blockchain, seguire l'attività dei contratti e inviare transazioni.

L'RPC del nodo gestisce la comunicazione con il nodo di rete, incluso l'invio delle transazioni. L'indicizzatore organizza blocchi, transazioni, stato dei contratti ed eventi legati ai wallet affinché le applicazioni possano recuperarli o seguirli tramite sottoscrizioni in tempo reale.

Blockfrost aggiunge autenticazione e limiti di utilizzo

Blockfrost fornisce API blockchain ospitate, dando agli sviluppatori accesso ai dati di rete e all'invio di transazioni senza dover gestire l'infrastruttura sottostante. Il suo servizio per Midnight supporta query GraphQL e sottoscrizioni WebSocket insieme all'RPC del nodo.

L'accesso richiede un progetto Blockfrost creato specificamente per Midnight Mainnet. Ogni richiesta deve includere il suo project_id, tramite un'intestazione HTTP o un parametro URL. Le richieste prive di un token valido vengono rifiutate e i token emessi per altre reti non possono autenticare l'accesso al mainnet.

L'utilizzo viene conteggiato sul piano Blockfrost dell'applicazione. I team possono scegliere un piano adatto al proprio traffico oppure eseguire un nodo e un indicizzatore indipendenti, che Midnight continua a supportare. Un piano a pagamento non è obbligatorio per ogni applicazione.

Questa autenticazione dell'API è separata dal finanziamento delle transazioni. Le transazioni su Midnight consumano DUST, la risorsa generata dai token NIGHT registrati.

La documentazione avverte inoltre che i token esposti nel codice lato browser possono essere copiati e usati contro la quota di un progetto. Descrive l'inoltro delle richieste attraverso un backend che aggiunge il token sul server quando le applicazioni devono mantenerlo privato.

Alcuni wallet potrebbero dover ricostruire lo stato di sincronizzazione

Preview e Preprod mantengono i loro endpoint ospitati da Midnight senza autenticazione del progetto. Il server locale delle prove, che gestisce gli input privati durante la generazione delle prove, rimane anch'esso al di fuori del servizio di Blockfrost.

Per i wallet mainnet esistenti, la migrazione può andare oltre le impostazioni di connessione. Il runbook del service desk di Midnight identifica un problema di compatibilità quando un wallet riprende uno stato di sincronizzazione salvato rispetto al precedente indicizzatore. Gli identificatori di eventi e transazioni possono differire tra provider, rendendo inadeguati i riferimenti salvati per il nuovo indicizzatore.

I wallet già collegati a Blockfrost o a un proprio indicizzatore non sono interessati dal cambio di provider. Lo stesso vale per i wallet che si sincronizzano dal genesis a ogni avvio e per le applicazioni che leggono solo lo stato dei contratti o inviano transazioni senza conservare identificatori emessi dall'indicizzatore.

Se un wallet interessato si blocca con errori che indicano che gli eventi vengono applicati fuori sequenza, il runbook indica di scartare lo stato di sincronizzazione salvato e ricostruirlo dal genesis tramite il nuovo indicizzatore.