
Nouvelle blockchain Nibiru : analyse des caractéristiques techniques et des pratiques de développement sécurisé à l'occasion du lancement du réseau principal
TechFlow SélectionTechFlow Sélection

Nouvelle blockchain Nibiru : analyse des caractéristiques techniques et des pratiques de développement sécurisé à l'occasion du lancement du réseau principal
En tant que nouvelle chaîne publique ayant levé plus de 20 millions de dollars, Nibiru Chain se concentre sur la sécurité et la rapidité des applications DeFi.
Rédaction : Beosin
La blockchain Layer1 Nibiru Chain a lancé en janvier 2024 une campagne d'airdrop qui, après un mois d'activité, a permis à sa communauté de croître de plus de 300 %, avec désormais plus de 500 000 abonnés sur Twitter. Cette nouvelle blockchain ayant levé plus de 20 millions de dollars s'est spécialisée dans la sécurité et la rapidité des applications DeFi, et pourrait devenir un concurrent potentiel de dYdX.
Actuellement, Nibiru Chain prévoit de lancer son réseau principal cette semaine. Quelles sont les caractéristiques techniques et les avantages compétitifs de cette blockchain en forte croissance ? Quels problèmes de sécurité doivent être pris en compte lors du développement de projets dans son écosystème ? Aujourd'hui, Beosin vous propose une analyse complète.
Analyse du protocole Nibiru Chain
Nibiru Chain se concentre principalement sur les activités de trading DeFi. Ses composants clés sont au nombre de quatre :
1. Nibi-Perps
Contrats perpétuels sur chaîne permettant aux utilisateurs de trader avec un effet de levier jusqu'à 10x sur des actifs cryptographiques populaires comme BTC, ETH et ATOM. Les détenteurs de $NIBI qui participent au staking obtiennent le droit de gouvernance sur Nibi-Perps ainsi qu'une réduction sur les frais de transaction.
2. Nibi-Swap
Le protocole AMM (Automated Market Maker) de Nibiru, qui prévoit de supporter deux types de pools LP : les pools d'échange de stablecoins et les pools à produit constant classiques.
3. $NUSD
Stablecoin entièrement collateralisée dans l'écosystème Nibiru. Initialement, Nibiru permettra aux utilisateurs de frapper du $NUSD en utilisant du $USDC et du $NIBI, selon un ratio de collatéral déterminé (Collateral Ratio). Par exemple, si CR = 80 %, cela signifie que pour frapper 100 $NUSD, l'utilisateur doit fournir 80 $USDC et une quantité de $NIBI équivalente à 20 $NUSD.
À l'avenir, Nibiru Chain envisage de prendre en charge davantage de types de collatéraux. Pour l'instant, $NUSD ressemble davantage au $FRAX de l'écosystème Cosmos.
4. Nibi-Oracles
Solution native d'oracle propre à Nibiru, qui permet aux opérateurs de validateurs de participer activement au consensus de l'oracle afin d'intégrer fidèlement des données hors chaîne sur la blockchain, offrant ainsi une rétroaction à faible latence provenant d'API externes et de contrats intelligents.
En 2024, Nibiru Chain vise à étendre son écosystème, notamment via plusieurs initiatives telles que l'intégration avec les principaux projets DeFi de plusieurs blockchains, la cotation sur des exchanges centralisés de premier plan, la mise en œuvre de l'exécution optimiste parallèle et la compatibilité complète avec EVM.
Bonnes pratiques de développement sécurisé
Le développement d'applications sur Nibiru Chain suit un processus et utilise des langages presque identiques à ceux des autres blockchains de la famille Cosmos. Suivre les recommandations de sécurité suivantes permet d'améliorer la sûreté des contrats :
Sécurité du développement de contrats
1. Préparer la réponse aux attaques
Comme pour le développement de contrats avec Solidity, les développeurs doivent anticiper les attaques et la correction de vulnérabilités. Il est donc essentiel de concevoir des contrats intelligents mis à jour et de prévoir un plan de gestion des risques.
2. Normaliser la validation des adresses
Toute adresse valide du SDK Cosmos peut être représentée de deux façons valides : en minuscules ou en majuscules. Par exemple, « cosmos1uzwqa88hcqe5gs7u7lgjxekz7xc6sm0f7xwp6a » et « COSMOS1UZWQA88HCQE5GS7U7LGJXEKZ7XC6SM0F7XWP6A » désignent la même adresse — ce qui s'applique également à Nibiru. Lors du traitement des adresses dans les contrats, il convient de tenir compte de cette particularité.
pub fn valid_transfer (
deps: DepsMut,
info: MessageInfo,
amount: Uint128,
dest: String ,
) -> Result <Response, ContractError> {
// Vérifier si l'adresse est sur la liste noire
if let Some (is_in_blacklist) = BLACKLIST. may_load (deps.storage, &dest.to_string ( )? {
if is_denied {
return Err (ContractError::DeniedRecipient);
}
} else if let Some (is_in_blacklist) = BLACKLIST.may_load ( deps.storage , &info.sender.clone ( ) )? {
if is_denied {
return Err (ContractError::DeniedSender);
}
......
};
Dans l'exemple ci-dessus, comme « dest » n'est pas normalisé, et que les adresses utilisées couramment sont en minuscules, n'importe qui peut contourner la liste noire BLACKLIST en fournissant une adresse en majuscules.
3. Attention aux opérations arithmétiques et aux débordements
Dans les contrats CosmWasm, les développeurs doivent prêter attention aux risques de débordement d'entiers ou de division par zéro. Il est recommandé d'utiliser les types Uint256 et Uint512 de CosmWasm, ainsi que les fonctions mathématiques non sujettes au débordement comme full_mul().
4. Problèmes de contrôle d'accès
Le contrôle d'accès est l'un des principaux enjeux de sécurité des programmes. De nombreux incidents de sécurité sont dus à des failles d'accès, y compris dans les contrats CosmWasm. Voici un cas typique :
fn update_config(
deps: DepsMut,
msg: UpdateMsg
) -> Result<Response, ContractError> {
let config = CONFIG.load(deps.storage)?;
let new_config = Config {
rewards_vault_contract: msg.vault_address
.map(|human| deps.api.addr_validate(&human))
.transpose()?
.unwrap_or(config.rewards_vault_contract)
};
CONFIG.save(deps.storage, &new_config)?;
Ok(Response::new().add_attribute("action", "update_config"))
}
Ce code ne contient aucune vérification ni restriction sur l'adresse appelante, autorisant ainsi n'importe qui à appeler update_config(), définir son adresse comme celle du coffre-fort et percevoir toutes les récompenses générées par le contrat.
5. Méfiez-vous des boucles infinies
Les contrats CosmWasm fonctionnent avec une limite de gaz très élevée, mais une mauvaise utilisation peut entraîner une consommation totale de gaz. Un contrat CosmWasm peut, par exemple, s'appeler lui-même dans un gestionnaire ACK, provoquant une boucle infinie. Si les développeurs transmettent des paquets entre deux contrats CosmWasm, ils doivent être vigilants car cela peut causer des boucles infinies et une consommation excessive de frais de gaz.
Pratiques de sécurité pour les projets
1. Audit des contrats intelligents
L'audit des contrats intelligents consiste à tester et examiner systématiquement le code afin d'identifier les vulnérabilités potentielles, d'éliminer les risques de sécurité, de s'assurer qu'il n'y a pas de faille logique et qu'il fonctionne conformément au flux attendu. Il est crucial de réaliser régulièrement des audits de sécurité sur les contrats du projet, idéalement juste après le développement et avant le déploiement sur le réseau principal.
2. Utilisation de portefeuilles multisignatures
Les équipes de projet doivent envisager d'utiliser un portefeuille multisignature pour gérer leur trésorerie et leurs contrats intelligents. Un compte multisignature, détenu par plusieurs entités, permet de réduire au minimum les risques liés au contrôle d'accès et aux malversations internes. Actuellement, Nibiru Chain utilise déjà la solution multisig Nomos ; les projets peuvent envisager d'adopter Nomos pour la gestion de leurs actifs.
Conclusion
Nibiru Chain, en tant que nouvelle blockchain Layer1, offre une plateforme innovante pour les domaines DeFi, jeux, RWA, etc., visant à résoudre les problèmes d'accessibilité, de sécurité et de performance des applications Web3, en fournissant des services complets et de haute qualité aux développeurs et aux utilisateurs ordinaires.
Bienvenue dans la communauté officielle TechFlow
Groupe Telegram :https://t.me/TechFlowDaily
Compte Twitter officiel :https://x.com/TechFlowPost
Compte Twitter anglais :https://x.com/BlockFlow_News














