Lisk Core gère toutes les opérations de la blockchain, y compris le traitement des transactions, la création de blocs et la synchronisation du réseau. Il garantit l'intégrité et la sécurité de la blockchain. Les principaux modules incluent le module réseau pour les connexions peer-to-peer, le module consensus pour l'accord sur l'état de la blockchain, et le module API pour l'interaction avec la blockchain.
Core s'exécute sur des nœuds exploités par les participants du réseau qui valident les transactions et sécurisent le réseau. Le logiciel est régulièrement mis à jour pour inclure de nouvelles fonctionnalités et améliorations. Il est écrit en JavaScript et TypeScript, ce qui correspond à l'objectif de Lisk de rendre le développement de blockchain accessible à un public plus large. Le passage à TypeScript améliore la maintenabilité du code et réduit la probabilité de bugs. Le cœur comprend plusieurs sous-systèmes clés :
Le SDK Lisk (Software Development Kit) est un ensemble d'outils pour construire des applications blockchain sur mesure. Le SDK permet aux développeurs de créer des sidechains, qui sont des blockchains indépendantes connectées à la blockchain principale de Lisk. Ces sidechains peuvent être personnalisées pour des cas d'utilisation spécifiques et fonctionner de manière indépendante sans affecter les performances du réseau principal.
Il fournit une architecture modulaire que les développeurs peuvent étendre grâce à des plugins et des modules personnalisés. Il gère le cycle de vie de l'application et l'interaction entre les différents modules.
Un ensemble de bibliothèques qui fournissent des outils pour interagir avec la blockchain Lisk. Cela inclut des fonctions cryptographiques, des outils de création de transactions et des utilitaires pour gérer les comptes et les clés. L'utilisation de JavaScript et de TypeScript rend ces bibliothèques accessibles à un plus large éventail de développeurs.
Un outil en ligne de commande qui simplifie le développement et la gestion des applications blockchain. Il comprend des commandes pour configurer un environnement de développement, créer de nouvelles applications blockchain et les déployer sur un réseau. Il fournit également des outils pour gérer les nœuds et interagir avec la blockchain.
Le SDK inclut également un support pour le développement de contrats intelligents, qui peuvent être déployés sur les sidechains de Lisk. Ces contrats sont écrits en JavaScript, ce qui les rend accessibles à un large éventail de développeurs.
Le service Lisk agit comme un intergiciel entre la blockchain et les interfaces utilisateur telles que Lisk Desktop et Lisk Mobile. Il agrège les données de la blockchain et fournit des API pour accéder à ces informations. Les fonctionnalités clés incluent l'agrégation de données, des points d'API pour interroger les données de la blockchain et des fonctionnalités améliorées d'accès aux données. Le service Lisk garantit que les applications et les portefeuilles peuvent interagir efficacement avec la blockchain, offrant un accès aux données en temps réel et améliorant l'expérience utilisateur.
Service Lisk comprend :
Ces composants travaillent ensemble pour offrir une expérience sans faille aux développeurs et aux utilisateurs. Le service est conçu pour être hautement évolutif, lui permettant de gérer de gros volumes de données et des charges de trafic élevées.
Lisk utilise des sidechains pour améliorer la scalabilité et la flexibilité. La mainchain gère les opérations essentielles et sécurise le réseau, tandis que les sidechains gèrent leurs propres transactions et opérations, une séparation qui permet :
Les sidechains dans Lisk sont des blockchains entièrement indépendantes qui peuvent fonctionner avec leur propre ensemble de règles et de mécanismes de consensus. Ils sont connectés à la blockchain principale de Lisk, qui fournit sécurité et coordination. Les sidechains peuvent être utilisées à diverses fins, telles que l'exécution de dApps, la gestion d'actifs numériques ou la mise en œuvre de solutions blockchain spécialisées.
Pour créer une sidechain, les développeurs utilisent le SDK Lisk pour créer et configurer des sidechains. Il fournit des outils pour définir le mécanisme de consensus de la sidechain, les types de transactions et d'autres paramètres. Une fois créée, la sidechain est connectée à la mainchain via un ensemble de protocoles d'interopérabilité.
En termes de solution d'interopérabilité de Lisk, elle permet aux sidechains de communiquer efficacement entre elles et avec la mainchain. Cela est réalisé grâce aux transactions de mise à jour inter-chaînes (CCU), qui transportent des changements d'état et des données entre les chaînes. Par exemple, une sidechain peut envoyer un CCU à la mainchain pour mettre à jour son état ou pour transférer des actifs. La mainchain valide le CCU et applique les changements.
Les sidechains héritent de la sécurité de la chaîne principale grâce à l’utilisation de preuves cryptographiques et de mécanismes de validation, ce qui garantit que les opérations de sidechain sont sécurisées et inviolables. La chaîne principale fournit également une couche de finalité, garantissant que les transactions sur les chaînes latérales ne peuvent pas être annulées une fois qu’elles sont confirmées.
Lisk utilise un mécanisme de consensus Délégué de Preuve d'Enjeu (DPoS), où les parties prenantes (détenteurs de jetons LSK) votent pour des délégués qui valident les transactions et créent de nouveaux blocs. Les caractéristiques du système DPoS de Lisk incluent :
Dans DPoS, le pouvoir de créer des blocs et de valider des transactions est délégué à un ensemble de nœuds de confiance connus sous le nom de délégués, qui sont élus par les détenteurs de jetons LSK grâce à un processus de vote. Chaque jeton LSK représente une voix, et les détenteurs de jetons peuvent répartir leurs votes entre plusieurs délégués.
Le processus électoral est continu, les détenteurs de jetons pouvant modifier leur vote à tout moment. Les 101 délégués ayant obtenu le plus de votes sont responsables de la création des blocs et de la validation des transactions. Cela garantit que le réseau reste décentralisé et que le pouvoir est réparti entre plusieurs participants.
Les délégués se relaient pour créer des blocs de manière tour à tour. Chaque délégué se voit attribuer un créneau horaire pendant lequel il peut créer un bloc. Si un délégué échoue à créer un bloc dans son créneau, le délégué suivant prend le relais. Ce processus garantit que les blocs sont créés régulièrement et que le réseau reste efficace.
Une fois qu'un bloc est créé, il est diffusé sur le réseau et validé par d'autres nœuds. Si le bloc est valide, il est ajouté à la blockchain. Sinon, il est rejeté et le délégué responsable de sa création peut être pénalisé. Ce processus de validation garantit que seules les transactions légitimes sont incluses dans la blockchain.
Lisk intègre la Tolérance aux Fautes Byzantines (BFT) pour garantir la fiabilité et la sécurité du réseau. La BFT répond au défi de parvenir à un consensus dans un système distribué avec des nœuds potentiellement défaillants. L'implémentation de la BFT de Lisk garantit la finalité, la cohérence et la résilience. Une fois qu'un bloc est ajouté, il est considéré comme final et ne peut être inversé, et tous les nœuds honnêtes sont d'accord sur l'état de la blockchain.
Le réseau peut tolérer un certain nombre de nœuds défectueux sans compromettre la sécurité et la fonctionnalité.
Le BFT dans Lisk est réalisé grâce à un processus appelé pré-vote et pré-engagement. Ce processus implique plusieurs étapes de validation pour garantir qu'un bloc est accepté par le réseau.
Pré-vote: Lorsqu'un bloc est proposé, les nœuds du réseau émettent des pré-votes pour indiquer s'ils estiment que le bloc est valide. Ces pré-votes sont collectés et comptés. Si un nombre suffisant de pré-votes est reçu, le bloc passe à la prochaine étape.
Pré-engagement: Les noeuds qui ont pré-voté pour le bloc, puis lancent des pré-engagements. Ces pré-engagements sont également collectés et comptabilisés. Si un nombre suffisant de pré-engagements sont reçus, le bloc est considéré comme finalisé et est ajouté à la blockchain.
Finalité: Une fois qu'un bloc est finalisé, il ne peut pas être inversé. Cela garantit que les transactions sont permanentes et que la blockchain reste cohérente. L'utilisation du pré-vote et de la pré-engagement garantit que le consensus est atteint même en présence de nœuds défectueux.
L’architecture de Lisk répond aux défis d’évolutivité avec des fonctionnalités telles que :
Lisk a mis en place plusieurs fonctionnalités pour améliorer les performances et l’évolutivité du réseau. Les frais de transaction sont ajustés dynamiquement en fonction de l’état du réseau, ce qui permet d’éviter la congestion et de garantir que les transactions sont traitées efficacement.
Lisk a amélioré sa couche pair-à-pair pour gérer un volume plus élevé de connexions et de débit de données. Cette optimisation améliore la capacité du réseau à traiter rapidement et efficacement les transactions. La conception modulaire du Lisk SDK permet aux développeurs de créer des applications blockchain personnalisées. Chaque application peut fonctionner de manière indépendante, réduisant la charge sur la chaîne principale et améliorant les performances globales du réseau.
Le cadre d'interopérabilité de Lisk est conçu pour faciliter la communication entre différentes blockchains. Cela est accompli à travers plusieurs mécanismes:
Messages inter-chaînes (CCM): Les CCM sont utilisés pour transférer des données et des changements d'état entre les sidechains et la chaîne principale. Cela permet une interaction transparente entre différentes chaînes au sein de l'écosystème Lisk.
Clé publique 2 voies fédérée: Ce mécanisme permet des transferts de tokens entre les sidechains et la mainchain. Une fédération d’intermédiaires de confiance gère la frappe et le brûlage des tokens, garantissant des transferts sécurisés et efficaces.
Messagerie générale entre chaînes: La solution d'interopérabilité de Lisk prend en charge le transfert de différents types de données, pas seulement des jetons. Cette flexibilité permet une large gamme d'applications, des transferts de jetons aux interactions de données plus complexes.
La feuille de route de Lisk comprend plusieurs jalons clés visant à améliorer les capacités de la plateforme et à étendre son écosystème. Les développements à venir comprennent des plans pour lancer un Layer 2 Testnet connecté au Ethereum Sepolia Testnet. Ce Testnet servira de terrain d'essai pour les nouvelles fonctionnalités et améliorations avant leur déploiement sur le mainnet.
L'introduction de mécanismes de staking et de gouvernance permettra de donner plus de pouvoir à la communauté en matière de prise de décision. Ces fonctionnalités favoriseront la décentralisation et encourageront la participation active des détenteurs de jetons LSK. Les améliorations continues apportées au Lisk SDK amélioreront l'expérience de développement et permettront la création d'applications plus sophistiquées et évolutives.
Le Framework Lisk est le cœur du Lisk SDK. Il fournit l'infrastructure essentielle pour la construction d'applications blockchain. Le framework est construit sur un système modulaire, permettant aux développeurs d'étendre les fonctionnalités grâce à des modules personnalisés, qui peuvent mettre en œuvre des fonctionnalités blockchain, telles que des types de transactions personnalisés ou des algorithmes de consensus.
Similaire au système de module, le système de plugin permet aux développeurs d'ajouter des fonctionnalités supplémentaires à leurs applications blockchain. Les plugins peuvent inclure des outils de surveillance, des analyses ou d'autres fonctionnalités auxiliaires qui améliorent les capacités de l'application.
Le Framework Lisk gère le cycle de vie des applications blockchain, y compris les processus d'initialisation, d'exécution et d'arrêt, garantissant que les applications fonctionnent correctement et peuvent être facilement entretenues.
Lisk Elements est une collection de bibliothèques JavaScript qui fournissent des outils pour interagir avec la blockchain Lisk. Ces bibliothèques comprennent une suite d'outils cryptographiques pour sécuriser les transactions et gérer les clés, y compris les signatures numériques, les fonctions de hachage et les mécanismes de chiffrement.
Les bibliothèques comprennent des outils de création et de gestion des transactions blockchain, ce qui simplifie le processus de développement d’applications qui interagissent avec la blockchain Lisk. Lisk Elements comprend des utilitaires pour la gestion des comptes blockchain, y compris la génération de clés, la récupération de compte et les requêtes de solde.
Lisk Commander est un outil d'interface de ligne de commande (CLI) qui simplifie le développement et la gestion des applications de blockchain. Il comprend des commandes pour configurer et gérer les nœuds de la blockchain, y compris démarrer, arrêter et surveiller les opérations des nœuds. Les outils pour interagir avec la blockchain incluent la requête de l'état, la soumission de transactions et la récupération des données de bloc.
Commandes pour le déploiement et la gestion d'applications blockchain, y compris la création de nouvelles applications, la mise à jour de celles existantes et la gestion des configurations d'application.
Points forts
Lisk Core gère toutes les opérations de la blockchain, y compris le traitement des transactions, la création de blocs et la synchronisation du réseau. Il garantit l'intégrité et la sécurité de la blockchain. Les principaux modules incluent le module réseau pour les connexions peer-to-peer, le module consensus pour l'accord sur l'état de la blockchain, et le module API pour l'interaction avec la blockchain.
Core s'exécute sur des nœuds exploités par les participants du réseau qui valident les transactions et sécurisent le réseau. Le logiciel est régulièrement mis à jour pour inclure de nouvelles fonctionnalités et améliorations. Il est écrit en JavaScript et TypeScript, ce qui correspond à l'objectif de Lisk de rendre le développement de blockchain accessible à un public plus large. Le passage à TypeScript améliore la maintenabilité du code et réduit la probabilité de bugs. Le cœur comprend plusieurs sous-systèmes clés :
Le SDK Lisk (Software Development Kit) est un ensemble d'outils pour construire des applications blockchain sur mesure. Le SDK permet aux développeurs de créer des sidechains, qui sont des blockchains indépendantes connectées à la blockchain principale de Lisk. Ces sidechains peuvent être personnalisées pour des cas d'utilisation spécifiques et fonctionner de manière indépendante sans affecter les performances du réseau principal.
Il fournit une architecture modulaire que les développeurs peuvent étendre grâce à des plugins et des modules personnalisés. Il gère le cycle de vie de l'application et l'interaction entre les différents modules.
Un ensemble de bibliothèques qui fournissent des outils pour interagir avec la blockchain Lisk. Cela inclut des fonctions cryptographiques, des outils de création de transactions et des utilitaires pour gérer les comptes et les clés. L'utilisation de JavaScript et de TypeScript rend ces bibliothèques accessibles à un plus large éventail de développeurs.
Un outil en ligne de commande qui simplifie le développement et la gestion des applications blockchain. Il comprend des commandes pour configurer un environnement de développement, créer de nouvelles applications blockchain et les déployer sur un réseau. Il fournit également des outils pour gérer les nœuds et interagir avec la blockchain.
Le SDK inclut également un support pour le développement de contrats intelligents, qui peuvent être déployés sur les sidechains de Lisk. Ces contrats sont écrits en JavaScript, ce qui les rend accessibles à un large éventail de développeurs.
Le service Lisk agit comme un intergiciel entre la blockchain et les interfaces utilisateur telles que Lisk Desktop et Lisk Mobile. Il agrège les données de la blockchain et fournit des API pour accéder à ces informations. Les fonctionnalités clés incluent l'agrégation de données, des points d'API pour interroger les données de la blockchain et des fonctionnalités améliorées d'accès aux données. Le service Lisk garantit que les applications et les portefeuilles peuvent interagir efficacement avec la blockchain, offrant un accès aux données en temps réel et améliorant l'expérience utilisateur.
Service Lisk comprend :
Ces composants travaillent ensemble pour offrir une expérience sans faille aux développeurs et aux utilisateurs. Le service est conçu pour être hautement évolutif, lui permettant de gérer de gros volumes de données et des charges de trafic élevées.
Lisk utilise des sidechains pour améliorer la scalabilité et la flexibilité. La mainchain gère les opérations essentielles et sécurise le réseau, tandis que les sidechains gèrent leurs propres transactions et opérations, une séparation qui permet :
Les sidechains dans Lisk sont des blockchains entièrement indépendantes qui peuvent fonctionner avec leur propre ensemble de règles et de mécanismes de consensus. Ils sont connectés à la blockchain principale de Lisk, qui fournit sécurité et coordination. Les sidechains peuvent être utilisées à diverses fins, telles que l'exécution de dApps, la gestion d'actifs numériques ou la mise en œuvre de solutions blockchain spécialisées.
Pour créer une sidechain, les développeurs utilisent le SDK Lisk pour créer et configurer des sidechains. Il fournit des outils pour définir le mécanisme de consensus de la sidechain, les types de transactions et d'autres paramètres. Une fois créée, la sidechain est connectée à la mainchain via un ensemble de protocoles d'interopérabilité.
En termes de solution d'interopérabilité de Lisk, elle permet aux sidechains de communiquer efficacement entre elles et avec la mainchain. Cela est réalisé grâce aux transactions de mise à jour inter-chaînes (CCU), qui transportent des changements d'état et des données entre les chaînes. Par exemple, une sidechain peut envoyer un CCU à la mainchain pour mettre à jour son état ou pour transférer des actifs. La mainchain valide le CCU et applique les changements.
Les sidechains héritent de la sécurité de la chaîne principale grâce à l’utilisation de preuves cryptographiques et de mécanismes de validation, ce qui garantit que les opérations de sidechain sont sécurisées et inviolables. La chaîne principale fournit également une couche de finalité, garantissant que les transactions sur les chaînes latérales ne peuvent pas être annulées une fois qu’elles sont confirmées.
Lisk utilise un mécanisme de consensus Délégué de Preuve d'Enjeu (DPoS), où les parties prenantes (détenteurs de jetons LSK) votent pour des délégués qui valident les transactions et créent de nouveaux blocs. Les caractéristiques du système DPoS de Lisk incluent :
Dans DPoS, le pouvoir de créer des blocs et de valider des transactions est délégué à un ensemble de nœuds de confiance connus sous le nom de délégués, qui sont élus par les détenteurs de jetons LSK grâce à un processus de vote. Chaque jeton LSK représente une voix, et les détenteurs de jetons peuvent répartir leurs votes entre plusieurs délégués.
Le processus électoral est continu, les détenteurs de jetons pouvant modifier leur vote à tout moment. Les 101 délégués ayant obtenu le plus de votes sont responsables de la création des blocs et de la validation des transactions. Cela garantit que le réseau reste décentralisé et que le pouvoir est réparti entre plusieurs participants.
Les délégués se relaient pour créer des blocs de manière tour à tour. Chaque délégué se voit attribuer un créneau horaire pendant lequel il peut créer un bloc. Si un délégué échoue à créer un bloc dans son créneau, le délégué suivant prend le relais. Ce processus garantit que les blocs sont créés régulièrement et que le réseau reste efficace.
Une fois qu'un bloc est créé, il est diffusé sur le réseau et validé par d'autres nœuds. Si le bloc est valide, il est ajouté à la blockchain. Sinon, il est rejeté et le délégué responsable de sa création peut être pénalisé. Ce processus de validation garantit que seules les transactions légitimes sont incluses dans la blockchain.
Lisk intègre la Tolérance aux Fautes Byzantines (BFT) pour garantir la fiabilité et la sécurité du réseau. La BFT répond au défi de parvenir à un consensus dans un système distribué avec des nœuds potentiellement défaillants. L'implémentation de la BFT de Lisk garantit la finalité, la cohérence et la résilience. Une fois qu'un bloc est ajouté, il est considéré comme final et ne peut être inversé, et tous les nœuds honnêtes sont d'accord sur l'état de la blockchain.
Le réseau peut tolérer un certain nombre de nœuds défectueux sans compromettre la sécurité et la fonctionnalité.
Le BFT dans Lisk est réalisé grâce à un processus appelé pré-vote et pré-engagement. Ce processus implique plusieurs étapes de validation pour garantir qu'un bloc est accepté par le réseau.
Pré-vote: Lorsqu'un bloc est proposé, les nœuds du réseau émettent des pré-votes pour indiquer s'ils estiment que le bloc est valide. Ces pré-votes sont collectés et comptés. Si un nombre suffisant de pré-votes est reçu, le bloc passe à la prochaine étape.
Pré-engagement: Les noeuds qui ont pré-voté pour le bloc, puis lancent des pré-engagements. Ces pré-engagements sont également collectés et comptabilisés. Si un nombre suffisant de pré-engagements sont reçus, le bloc est considéré comme finalisé et est ajouté à la blockchain.
Finalité: Une fois qu'un bloc est finalisé, il ne peut pas être inversé. Cela garantit que les transactions sont permanentes et que la blockchain reste cohérente. L'utilisation du pré-vote et de la pré-engagement garantit que le consensus est atteint même en présence de nœuds défectueux.
L’architecture de Lisk répond aux défis d’évolutivité avec des fonctionnalités telles que :
Lisk a mis en place plusieurs fonctionnalités pour améliorer les performances et l’évolutivité du réseau. Les frais de transaction sont ajustés dynamiquement en fonction de l’état du réseau, ce qui permet d’éviter la congestion et de garantir que les transactions sont traitées efficacement.
Lisk a amélioré sa couche pair-à-pair pour gérer un volume plus élevé de connexions et de débit de données. Cette optimisation améliore la capacité du réseau à traiter rapidement et efficacement les transactions. La conception modulaire du Lisk SDK permet aux développeurs de créer des applications blockchain personnalisées. Chaque application peut fonctionner de manière indépendante, réduisant la charge sur la chaîne principale et améliorant les performances globales du réseau.
Le cadre d'interopérabilité de Lisk est conçu pour faciliter la communication entre différentes blockchains. Cela est accompli à travers plusieurs mécanismes:
Messages inter-chaînes (CCM): Les CCM sont utilisés pour transférer des données et des changements d'état entre les sidechains et la chaîne principale. Cela permet une interaction transparente entre différentes chaînes au sein de l'écosystème Lisk.
Clé publique 2 voies fédérée: Ce mécanisme permet des transferts de tokens entre les sidechains et la mainchain. Une fédération d’intermédiaires de confiance gère la frappe et le brûlage des tokens, garantissant des transferts sécurisés et efficaces.
Messagerie générale entre chaînes: La solution d'interopérabilité de Lisk prend en charge le transfert de différents types de données, pas seulement des jetons. Cette flexibilité permet une large gamme d'applications, des transferts de jetons aux interactions de données plus complexes.
La feuille de route de Lisk comprend plusieurs jalons clés visant à améliorer les capacités de la plateforme et à étendre son écosystème. Les développements à venir comprennent des plans pour lancer un Layer 2 Testnet connecté au Ethereum Sepolia Testnet. Ce Testnet servira de terrain d'essai pour les nouvelles fonctionnalités et améliorations avant leur déploiement sur le mainnet.
L'introduction de mécanismes de staking et de gouvernance permettra de donner plus de pouvoir à la communauté en matière de prise de décision. Ces fonctionnalités favoriseront la décentralisation et encourageront la participation active des détenteurs de jetons LSK. Les améliorations continues apportées au Lisk SDK amélioreront l'expérience de développement et permettront la création d'applications plus sophistiquées et évolutives.
Le Framework Lisk est le cœur du Lisk SDK. Il fournit l'infrastructure essentielle pour la construction d'applications blockchain. Le framework est construit sur un système modulaire, permettant aux développeurs d'étendre les fonctionnalités grâce à des modules personnalisés, qui peuvent mettre en œuvre des fonctionnalités blockchain, telles que des types de transactions personnalisés ou des algorithmes de consensus.
Similaire au système de module, le système de plugin permet aux développeurs d'ajouter des fonctionnalités supplémentaires à leurs applications blockchain. Les plugins peuvent inclure des outils de surveillance, des analyses ou d'autres fonctionnalités auxiliaires qui améliorent les capacités de l'application.
Le Framework Lisk gère le cycle de vie des applications blockchain, y compris les processus d'initialisation, d'exécution et d'arrêt, garantissant que les applications fonctionnent correctement et peuvent être facilement entretenues.
Lisk Elements est une collection de bibliothèques JavaScript qui fournissent des outils pour interagir avec la blockchain Lisk. Ces bibliothèques comprennent une suite d'outils cryptographiques pour sécuriser les transactions et gérer les clés, y compris les signatures numériques, les fonctions de hachage et les mécanismes de chiffrement.
Les bibliothèques comprennent des outils de création et de gestion des transactions blockchain, ce qui simplifie le processus de développement d’applications qui interagissent avec la blockchain Lisk. Lisk Elements comprend des utilitaires pour la gestion des comptes blockchain, y compris la génération de clés, la récupération de compte et les requêtes de solde.
Lisk Commander est un outil d'interface de ligne de commande (CLI) qui simplifie le développement et la gestion des applications de blockchain. Il comprend des commandes pour configurer et gérer les nœuds de la blockchain, y compris démarrer, arrêter et surveiller les opérations des nœuds. Les outils pour interagir avec la blockchain incluent la requête de l'état, la soumission de transactions et la récupération des données de bloc.
Commandes pour le déploiement et la gestion d'applications blockchain, y compris la création de nouvelles applications, la mise à jour de celles existantes et la gestion des configurations d'application.
Points forts