Analyse approfondie de Hyperliquid : architecture technique et risques potentiels
Hyperliquid, en tant qu'échange sur livre de commandes en chaîne très médiatisé, mérite une analyse approfondie de son architecture technique et de sa sécurité. Cet article examinera la mise en œuvre technique de Hyperliquid sous deux angles : la structure des contrats de pont inter-chaînes et l'architecture double chaîne HyperEVM et HyperL1.
Analyse du pont inter-chaînes Hyperliquid
Hyperliquid a déployé un contrat de pont sur Arbitrum pour stocker les actifs USDC des utilisateurs. Ce contrat de pont comprend quatre ensembles de validateurs : hotValidatorSet, coldValidatorSet, finalizers et lockers, chacun étant responsable de différentes fonctions.
Mécanisme de validation
hotValidatorSet: traiter les opérations à haute fréquence telles que les retraits d'utilisateurs
coldValidatorSet : modifier la configuration du système, peut invalider les demandes de retrait
lockers : possibilité de voter pour suspendre le fonctionnement du contrat de pont
finalizers : confirmer le changement d'état du pont inter-chaînes
Actuellement, Hyperliquid n'a que 4 nœuds validateurs, hotValidatorSet et coldValidatorSet correspondent chacun à 4 adresses.
processus de dépôt
Le contrat de pont utilise la méthode Permit de l'EIP-2612 pour traiter les dépôts, n'autorisant que les dépôts en USDC. La fonction batchedDepositWithPermit permet de traiter plusieurs dépôts en une seule fois, le processus étant relativement simple.
Processus de retrait
Les demandes de retrait doivent satisfaire aux conditions suivantes :
Obtenir 2/3 du poids des signatures du hotValidatorSet
Après une période de contestation de 200 secondes
Confirmé finalement par les membres des finalizers
Pendant la période de contestation, les lockers peuvent voter pour suspendre le contrat de pont, et le coldValidatorSet peut annuler les demandes de retrait.
Mécanisme de verrouillage des contrats de pont
2 lockers doivent voter pour verrouiller le contrat de pont. Le déverrouillage nécessite un poids de signature de 2/3 du coldValidatorSet, tout en permettant de mettre à jour l'adresse des validateurs.
Mise à jour des validateurs
La fonction updateValidatorSet peut mettre à jour hotValidatorSet et coldValidatorSet, nécessitant la signature de tous les membres de hotValidatorSet et un délai de contestation de 200 secondes.
Risques potentiels
coldValidatorSet contrôlé pouvant contourner toutes les défenses pour voler les actifs des utilisateurs.
les finalisateurs peuvent refuser de confirmer les transactions de retrait
les lockers peuvent verrouiller malicieusement le contrat de pont
HyperEVM et architecture à double chaîne
Hyperliquid utilise un "système à double chaîne", fonctionnant simultanément sur deux chaînes :
Hyperliquid L1 : Système de carnet de commandes dédié, sous licence
HyperEVM : chaîne compatible EVM, sans autorisation
Les deux chaînes propagent des données via le même protocole de consensus, mais s'exécutent dans des environnements différents. HyperEVM peut lire l'état de L1 et écrire des données vers L1.
Précompiles
HyperEVM lit l'état L1 via du code précompilé. L'adresse précompilée connue 0x800 peut lire la position des contrats perpétuels des utilisateurs dans le dernier bloc L1.
Événements
HyperEVM écrit des données sur L1 via des événements. Les nœuds L1 écoutent les événements d'une adresse spécifique (0x3333...3333) et transforment l'intention de l'utilisateur en transactions L1.
Consensus HyperBFT
Hyperliquid utilise l'algorithme de consensus HyperBFT basé sur HotStuff, capable de traiter théoriquement 2 millions de commandes par seconde.
Considérations de développement
msg.sender peut être l'adresse du contrat du système L1
L'interaction EVM avec L1 non atomique peut entraîner une perte d'actifs
L'adresse du contrat EVM doit avoir un compte mappé sur L1.
Il se peut qu'il y ait des situations où il est temporairement impossible de vérifier le solde lors du transfert d'actifs entre chaînes.
Dans l'ensemble, HyperEVM est similaire à une couche 2 basée sur Hyperliquid L1, mais offre une interopérabilité supérieure.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
Analyse technologique de Hyperliquid : architecture de ponts cross-chain et risques du système double chaîne HyperEVM
Analyse approfondie de Hyperliquid : architecture technique et risques potentiels
Hyperliquid, en tant qu'échange sur livre de commandes en chaîne très médiatisé, mérite une analyse approfondie de son architecture technique et de sa sécurité. Cet article examinera la mise en œuvre technique de Hyperliquid sous deux angles : la structure des contrats de pont inter-chaînes et l'architecture double chaîne HyperEVM et HyperL1.
Analyse du pont inter-chaînes Hyperliquid
Hyperliquid a déployé un contrat de pont sur Arbitrum pour stocker les actifs USDC des utilisateurs. Ce contrat de pont comprend quatre ensembles de validateurs : hotValidatorSet, coldValidatorSet, finalizers et lockers, chacun étant responsable de différentes fonctions.
Mécanisme de validation
Actuellement, Hyperliquid n'a que 4 nœuds validateurs, hotValidatorSet et coldValidatorSet correspondent chacun à 4 adresses.
processus de dépôt
Le contrat de pont utilise la méthode Permit de l'EIP-2612 pour traiter les dépôts, n'autorisant que les dépôts en USDC. La fonction batchedDepositWithPermit permet de traiter plusieurs dépôts en une seule fois, le processus étant relativement simple.
Processus de retrait
Les demandes de retrait doivent satisfaire aux conditions suivantes :
Pendant la période de contestation, les lockers peuvent voter pour suspendre le contrat de pont, et le coldValidatorSet peut annuler les demandes de retrait.
Mécanisme de verrouillage des contrats de pont
2 lockers doivent voter pour verrouiller le contrat de pont. Le déverrouillage nécessite un poids de signature de 2/3 du coldValidatorSet, tout en permettant de mettre à jour l'adresse des validateurs.
Mise à jour des validateurs
La fonction updateValidatorSet peut mettre à jour hotValidatorSet et coldValidatorSet, nécessitant la signature de tous les membres de hotValidatorSet et un délai de contestation de 200 secondes.
Risques potentiels
HyperEVM et architecture à double chaîne
Hyperliquid utilise un "système à double chaîne", fonctionnant simultanément sur deux chaînes :
Les deux chaînes propagent des données via le même protocole de consensus, mais s'exécutent dans des environnements différents. HyperEVM peut lire l'état de L1 et écrire des données vers L1.
Précompiles
HyperEVM lit l'état L1 via du code précompilé. L'adresse précompilée connue 0x800 peut lire la position des contrats perpétuels des utilisateurs dans le dernier bloc L1.
Événements
HyperEVM écrit des données sur L1 via des événements. Les nœuds L1 écoutent les événements d'une adresse spécifique (0x3333...3333) et transforment l'intention de l'utilisateur en transactions L1.
Consensus HyperBFT
Hyperliquid utilise l'algorithme de consensus HyperBFT basé sur HotStuff, capable de traiter théoriquement 2 millions de commandes par seconde.
Considérations de développement
Dans l'ensemble, HyperEVM est similaire à une couche 2 basée sur Hyperliquid L1, mais offre une interopérabilité supérieure.