wrapper

Dernières Nouvelles

1. Qu'est-ce Lisk

Lisk est une plate-forme nouvelle génération qui permet le développement et la distribution des applications JavaScript décentralisées tout en en utilisant un écosystème multifonctionelle et facile à utiliser. Grâce à Lisk, les développeurs peuvent construire, publier, distribuer et monétiser leurs applications dans un système personnalisé, alimenté par crypto-monnaie en utilisant des blockchains personnalisés, des contrats intelligents, du stockage cloud, et des nœuds de calcul.

 

2. Contexte technique

Le backend de Lisk est écrit sous Node.js [1] alors que le le frontend est ecrit sous HTML5 et CSS3. Lisk fonctionne de manière asynchrone et permet un traitement rapide de toutes les fonctions telles que les transactions réseau. La base de données utilise SQLite pour permettre l'utilisation et le fonctionnement des requêtes complexes.

3. Facteurs clés de l'innovation

Lisk est la première solution d'application décentralisée entièrement écrite en Node.js. Lisk est de ce fait, un ecosystéme qui pourra être exploité par les developpeurs sans avoir besoin d'acquérir des compétences supplémentaires. Tout développeur web qui est déjà familier avec JavaScript et Node.js peut immédiatement commencer à développer des applications décentralisées.

L'objectif principal de Lisk était de créer un système plug and play qui permettrait aux développeurs de tout faire; conception, développement, publication et monétisation , aux seins d'une même plate-forme. En utilisant l'écosystème Lisk, les développeurs peuvent déployer rapidement leurs applications JavaScript via l'hébergement Lisk & les Nœuds de stockage,les lister sur le Lisk Dapp Store, et avoir un accès immédiat aux nœuds de calcul Lisk pour l'exécution du code. Le Lisk sidechain consensus assurera l'intégrité et la sécurité de tout ce processus.

Pour couronner le tout, l'ensemble de ces fonctions cloud sont fourni par les utilisateurs et les délégués Lisk, qui sont payés par le biais d'un système intégré de facturation (ou par le réseau lui-même dans le cas des délégués) en Lisk (propre crypto-monnaie de Lisk) ou en BTC. Lisk est donc une solution de pointe, abordable et avant gardiste pour le développement d'application

4. Composants de Lisk

  • Hébergement P2P Décentralisée de application Blockchain
  • Stockage P2P décentralisé pour les application Blockchain
  • Calcul décentralisée
  • Consensus Sidechain pour chaque application Blockchain
  • Interfaces API Lisk et Bitcoin
  • Outils de développement: Lisk CLI / Lisk Dapp SDK

2. Clients

1. Lisk

Le client complet (full client) est la meilleure solution pour les super utilisateurs, les délégués et les développeurs. Il est disponible sous Windows, Mac OS et Linux. Cependant, les délegués ne peuvent utilisé que le client Linux. Les utilisateurs du client léger (lite client) peuvent se connecter aux clients complets pour accéder au réseau.

Ils peuvent également être utilisé pour faire des appels d'API, si cela est autorisé par le propriétaire du client complet.

La blockchain est partagé et télechargé entre tout les clients complets via une connexion peer to peer.

Les utilisateurs peuvent accéder a leur DAPP installé via le client leger (lite client) L'API des DAPPS et l'API des pairs sont disponibles pour les développeurs. Ceci leur permettra de créer rapidement et facilement des DAPPS JavaScript en utilisant nw.js2 ou Electron3.

2. Lisk Léger (Lite)

Le client léger sera principalement utilisé pour l'accès aux compte Lisk.

Il est disponible sur Windows et Mac OS. Il ne nécessite aucun processus d'installation, car il utilise des technologies Web modernes. Il ne fonctionne pas comme un noeud de réseau, car il se connecte aux autres pairs qui sont en ligne via une connexion http. Cela présente plusieur avantages.

En effet, l'utilisateur n'a pas à télécharger la blockchain , ce qui signifie que l'application elle-même reste très legere. Les clés secrètes ne sont pas transmise à travers le réseau, puisque toutes les données sont signés localement. Tous les types de transaction disponible sont possible.

Si vous souhaitez exécuter un nœud de délégué, vous pouvez enregistrer un compte délégué avec le client Lite. Toutefois, il est impossible d'exécuter un délégué a partir du client lite. ex: création de bloc Pour cela il vous faudra le client complet.

Les utilisateurs peuvent accéder a leur DAPP installé via le client leger (lite client) L'API des DAPPS et l'API des pairs sont disponibles pour les développeurs.

Le client complet (full client) est la meilleure solution pour les super utilisateurs, les délégués et les développeurs. Il est disponible sous Windows, Mac OS et Linux. Cependant, les délegués ne peuvent utilisé que le client Linux. Les utilisateurs du client léger (lite client) peuvent se connecter aux clients complets pour accéder au réseau.

Ils peuvent également être utilisé pour faire des appels d'API, si cela est autorisé par le propriétaire du client complet. La blockchain est partagé et telechargé entre tout les clients complets via une connexion peer to peer.

3. Lisk mobile

Le client mobile permet l'accès a votre compte Lisk lors de vos déplacements. Il sera disponible pour iOS et Android.

L'infrastructure backend reflétera celle de notre solution desktop. Le véritable changement se présente sous la forme d'ajouts et d'améliorations à l'interface utilisateur qui permettra une expérience sur mesure sur les appareils mobiles. L'application à été conçu pour vous apporter une interface familière et facile à utiliser , Tout comme le Bitcoin ou les applications bancaires que vous utilisez déjà sur une base quotidienne.

L'application vous permettra également de lancer tous vos DAPPS . Dans l'avenir, et pour des raisons de sécurité, nous prévoyons d'intégrer des fonctionnalités spécifiques, tels que l'utilisation les empreintes digitales ou le scan rétinien.

3. Consensus

Lisk est basé sur le mécanisme de consensus DPOS [4] Cette méthode de consensus à été créé à l'origine par l'équipe de BitShares.

DPos est basé sur la création de blocs par les délégués . Les délégués sont des comptes approuvés élus en tant que délégués actifs (active delegate). Les 101 délégués ayant les plus de votes peuvent créer des blocs. Alors que les restes des délégués sont répertoriés comme «délégués de veille" (standby delegate), et peuvent toujours accéder à la liste top 101 (délégé active) en recevant des votes de la part des autres délégués.

Tous les utilisateurs de Lisk ont 101 voix disponibles pour élire leurs délégués préférés dans le top 101. Le poids de chacun des 101 voix est proportionnelle à la quantité de Lisk détenu par l'utilisateur dans son portefeuille(wallet). Ce montant total est indiqué sur la liste des délégués comme une «approbation», et est répertorié en pourcentage par rapport aux 100 millions de Lisk disponible.

La promotion ou la rétrogradation des délégués dans la liste des 101 se fait à la fin du cycle de génération des 101 bloc.

Chaque cycle de 101 blocs, est créé par les 101 délégués active aléatoirement. le temps de génération d’un bloc est de 10 secondes. Les nouveaux blocs créés sont diffusés au réseau et ajoutés à la blockchain. Après 6 à 10 confirmation, un bloc ainsi que ses opérations peuvent être considérés comme confirmé . Un cycle complet de génération de 101 bloc prend environ 16 minutes.

Dans DPOS, des embranchement (fork) peuvent se produire. Les délégués doivent être en ligne à tout moment afin d’assurer une disponibilité suffisante. La disponibilité est utilisée pour juger la fiabilité d'un noeud. Elle est calculé selon le nombre de bloc manqué vs le nombre de bloc assigné à un délégué. La disponibilité est un des facteurs important pris en compte par les délégués lors du vote. Ceci dit, les délégués doivent maintenir une bonne disponibilité, à défaut d'être rétrograder dans la liste. En effet, si les délégués juge que la disponibilité d'un noeud n'est pas suffisante ils pourront retirer leurs votes.

1. Les délégués

La fonction des délégués est couverte ci-dessus dans la section Consensus.

Pour être un délégué, un utilisateur doit enregistrer un compte délégué. Ceci est réalisé à partir du portefeuille (client) complet ou léger. Comme indiqué auparavant, la génération de bloc est possible uniquement en utilisant le portefeuille complet. Cela signifie que vous pouvez vous inscrire en tant que délégué dans chacune des versions du portefeuille, mais ne serez en mesure de remplir les fonctions de délégué qu'à partir d'une version complète du client. Le numéro de compte et le nom d'utilisateur sont similaire après l'inscription des délégués. Tous les comptes Lisk ont la possibilité d'être des délégués.

Les nouveaux délégué commencent en tant que délégué de veille (Standby delegates). Leurs pourcentage d'acceptation est a 0% au tout début, et devrons l'améliorer dans l'optique de faire parti des 101 délégué actif. L'acceptation peut être amélioré en collectant les votes de la communauté Lisk. Pour rappel ,Les délégués de veille ne pourront pas forger de bloc.

2. Frais de réseau

Les délégués traitent toutes les transactions valide du réseau et les stockent dans de nouveaux bloc. Les délégués sont rémunérés pour ce travail.

Les frais de transaction sur Lisk est de 0.1 Lisk. Par exemple l'envoie de 100 Lisk, vous coûteras 100.1 Lisk.

Ce qui suit est une liste des frais pour les différents types de transactions:

  • Frais de transaction 0,1 Lisk
  • Enregistrement d'un second mot de passe (passphrase) : 5 Lisk
  • Enregistrement d'un nom d'utilisateur 100 Lisk
  • Enregistrement d'un délégué 100 Lisk
  • Ajout d'un contact 1 Lisk
  • Enregistrer un Dapp 500 Lisk
  • Enregistrement d'un groupe multi-signature 5 Lisk par membre

3. Peer-to-Peer

Un réseau standard P2P [5], qui fonctionne au dessus du protocole HTTP, ainsi que des données JSON formaté pour l'échange des données sont utilisés. Le module P2P capture les informations suivantes pour chaque pair:

  • Version
  • OS
  • IP
  • Port

. Caractéristiques de base

1. Usernames

Lisk permet aux utilisateurs d'enregistrer leur username qui joue le rôle d'un alias. Les autres utilisateurs pourront effectué des transactions vers ce username, lequel recevra les fonds via le compte lié a l'utilisateur. Les frais de réseau pour l'enregistrement du nom d'utilisateur est de 100 Lisk. Les Usernames peuvent contenir les caractères suivants:

  • Traditional Alphabet (Upper & Lower Case): A-Z, a-z
  • Nombres: 0-9
  • Caractères spéciaux:!, @, $, &,

Chaque nom d'utilisateur est unique. La longueur est actuellement limité à 16 caractères. À l'heure actuelle, il est impossible de supprimer un nom d'utilisateur de votre compte.

2. Contacts

Lisk permet aux utilisateurs de maintenir une liste de contacts . Ceci pourra être utilisée pour stocker les comptes les plus fréquemment utilisés, mais est également un indicateur de la réputation du compte. Si un compte a de nombreux contacts confirmés, il peut être considéré comme plus digne de confiance qu’un compte sans contact.

Les contacts fonctionnent exactement de la même manière que les followers sur Twitter. Lors d’un ajout de contact, une demande est envoyé. le contact qui reçoit la demande peut soit accepter ou décliner la demande d’ajout. Si il l’accepte le contact sera ajouté a sa liste. Les frais de réseau pour ajouter un nouveau contact ou d'accepter une demande entrante est de 1 Lisk.

3. Multi-signatures

Lisk permet aux utilisateurs de créer des groupes multi-signature. Un groupe multi-signature se compose de plusieurs utilisateurs Lisk, appelés membres de groupes. Les transactions provenant de groupes multi-signatures peuvent être configurés pour exiger l'approbation d'une partie ou de tous les signataires.

Pour y parvenir une architecture multi-signature M de N est implémentée. Tous les membres d'un groupe multi-signature (N) sont ajoutés; le maximum est de 16 signataires. Ensuite, le nombre requis (M) des signatures nécessaires pour approuver une transaction est paramêtré.

M doit être supérieur à 1 et inférieur ou égal à N sachant que N est le nombre de membres du groupe multi-signature.

Une fois une transaction lancé dans un groupe multi-signature, elle sera mise en attente, et les membres déciderons de l'approuver ou de l'ignorer. Une fois le nombre requis de confirmations atteint, la transaction sera approuvée et soumise à la chaîne de genèse.

Les propriétaires d'un groupe multi-signature peuvent changer les règles du groupe à tout moment avec l'approbation d'au moins M signataires.

5. Application décentralisé

1. Machine Virtuel

Les Lisk DAPPS sont exécutées à l'aide du nœud Lisk, une version spécialisée de NodeJS qui fournit un environnement d'exécution sandbox dans lequel les DAPPS sont exécuter individuellement. La communication intra-processus est réalisé en utilisant des canaux nommés, la taille du message n’ayant pas de limite.

Lors du lancement d'une nouvelle Dapp, le client Lisk démarre une nouvelle instance de Node Lisk (processus enfant). Si une Dapp rencontre une erreur fatale, le processus enfant est tué n'ayant aucun impact sur le client parent Lisk.

Actuellement il n'y a pas de protection contre les appels système non autorisés effectués à partir d’une dapp en cours d'exécution. Par conséquent, l'exécution du code non fiable n'est pas souhaitable, et pourrait conduire à une perte de fonds. Des travaux sont en cours pour fournir un environnement entièrement sandbox dans lequel du code non fiable pourra être exécuté.

>

2. Application Blockchain

Une dapp est une application décentralisée [8] écrite en Node.js et JavaScript. elle sont executé via le Lisk VM en utilisant l'algorithme de consensus Lisk et prochainement celui du Bitcoin.

Le Lisk VM est une application Node.js évolutive qui permet aux développeurs Node.js et JavaScript d'écrire DAPPS. Les développeurs seront en mesure de créer une interface utilisateur puissante grâce aux technologies Web actuelles (HTML5 / CSS3 / JavaScript) Les DAPPS peuvent utiliser des packages Node.js personnalisé à partir de NPM (le gestionnaire de paquets Node.js) (the Node.js package manager)

Les utilisateurs peuvent lancer les DAPPS sur un client Linux Lisk ou via le client Lisk Lite sous Windows ou Mac OS.

3. Développement DAPPS

Les Dapps sont programmées en Javascrit, permettant l'utilisation de tout l'écosystème des packages Node.js alimenté par NPM. Le Lisk VM est intégré avec l'API Lisk. Cette API sert d'interface avec le Bloc de genèse Lisk(Lisk blockchain) ainsi qu'avec le Bloc de génése Bitcoin ( Bitcoin blockchain).Chaque dapp est executé sous Lisk VM, ce qui prévient contre les attaques vecteurs (attack vectors), rendant l'accès à la dapp plus sécurisé pour l'utilisateur finale.

Pour faciliter le développement des Dapps, l'équipe Lisk fournit lisk-cli, une interface de ligne de commande qui crée votre propre environnements de testnet et de dapp en répondant à quelques questions simples. De plus, nous fournissons un Dapp Toolkit, qui offre aux développeurs une implémentation de référence des fonctionnalités les plus importantes des DAPP, et servira de base solide, sur laquelle les développeurs pourront commencer à élaborer leurs applications décentralisées. De nombreuses bibliothèques ont été écrites pour fournir la fonctionnalité complète de l'API pour les développeurs Lisk “.

Cette API comprend:

  • API de consensus
  • Lisk API
  • Bitcoin API
  • API de la BD

Les dapp sont accessible via: http: // ip: port / DAPPS / <dapp_id / username>

4.Calcul des Application Blockchain:

L'équipe Lisk est entrain de développer un système permettant la facturation de l’utilisation du CPU. Lisk VM utilise son API pour traquer le temps CPU lors de l'exécution de la dapp. De ce fait les propriétaire de noeuds peuvent exécuter un noeud maitre pour les Dapp en retour d’un paiement en Lisk ou en BTC

Le but de Lisk est de créer un écosystème unique. dans le future, Lisk inclura un gestionnaire de soumission qui aura pour rôle de soumettre les DAPPS pour les noeud candidat offrant leur service pour leurs exécution, et permettra de sélectionner les noeuds offrant les ressource nécessaire et le meilleur rapports prix/performance. Les propriétaire de noeud seront rémunéré selon le calcul, mémoire, espace et autre ressource fournis.

Ceci est connue sous le nom de facturation de DAPPS. Il est comparable à la plate-forme heroku spécialisé dans le déploiement d’application.

5. DAPPS Consensus

Chacune des Dapp a sa propre sidechain et unique qui est synchronisé avec la hauteur du bloc actuel et le temps du bloc lisk (Lisk block time). Les sidechains des dapps sont gérés par les 101 noeud maitres, dans lequelles la géneration de bloc est activée pour une dapp spécifique. Le role ultime des noeud maitres est de traiter les transactions et de s'assurer de la validité de chaque bloc généré sur le sidechain.

La signatures des blocs par les master node est interdite par le propriétaire de la dapp, a moins que celui ci le permette au noeud; qui sera par conséquent dans la capacité de forger dans le sidechain du dapp.

Le consensus Sidechain est maintenu par les 101 noeuds maîtres en utilisant la même méthode Delegated Proof-of-Stake (DPOS) utilisée pour sécuriser la blockchain Lisk. Cela permet aux nœuds maîtres de percevoir des honoraires de chaque transaction en récompense pour avoir sécurisé la sidechain. Les motivations derrière cette forme de consensus sont d'empêcher l'élargissement inutile de la blockchain Lisk et de conserver l'autonomie individuelle des sidechains. Ce concensus permet aussi de s'assurer que l'intégrité de chaque sidechain est constamment maintenue.

Une autre alternative, serait de sécuriser les dapps grâce la chaîne de genèse Bitcoin en utilisant cette même méthode.

6. Noeud maître DAPPS.

Les nœuds maîtres des Dapp sont des noeuds Lisk avec un Dapp installé. La génération de blocs est spécifiquement activés pour ce Dapp. Les propriétaires de Dapp doivent autoriser les comptes des nœuds maître. Le noeud s'occupe du traitement des transactions et de la génération de nouveaux bloc qui sont par la suite sécurisé via la chaîne de genèse Lisk.

7. DAPPS Storage

Les DAPPS peuvent être stocké dans n’importe quel réseau de stockage, qu’il soit centralisé ou décentralisé. Cependant, le réseau de stockage utilisé doit fournir un lien de télechargement pour un package ZIP. Le lien de télechargement sera utile lors du telechargement de la DAPP par l’utilisateur ou le consommateur. Dans un future proche, IPFS [10] une option de stockage décentraliser sera intégré dans Lisk

3. Développement DAPPS

8. Application Blockchain Dépôts / Retraits

Les développeurs peuvent utiliser soit le Lisk ou le BTC dans leur dapps11. Les utilisateurs d'un dapp peuvent déposer ou retirer des fonds de toute dapp. Lorsque les Lisk ou BTC sont envoyés vers une adresse dapp; le compte est alimenté, les fonds sont alors disponibles pour une utilisation dans le dapp. Cela fonctionne de la même façon pour les dépôts de BTC et de Lisk. les BTC sont envoyé dans une adresse dapp spéciale, et sont reçu via le portefeuille bitcoin(dapp).

Les comptes Dapp sont des comptes spéciaux créé par le propriétaire d'un dapp. Les Lisk ou BTC déposés seront stockés dans les adresses associées. Pour des raisons de sécurité, seule l'utilisation de comptes DAPP multi-signature avec signataires de confiance est recommandé.

Les Retraits de DAPPS sont traitées par les nœuds maîtres. Quand une demande de retrait est envoyé, le noeud maître de la dapp traite et déplace les fonds vers l'adresse de retrait spécifié dans la blockchain Lisk ou celle du Bitcoin.

9. DAPPS Tokens

Les developeurs peuvent implémenter des jetons personnaliser dans leur DAPPS, et les utiliser comme monnaie principal au sein de leurs DAPPS. Ces jetons seront utilisé de la même manière que le Lisk ou le BTC. Par contre, ces jetons ne pourront pas être transférer d'une sidechain à une autre, mais pourront l'être via la chaîne principal Lisk

6. Annexe

    Écrit par:
  • Max Kordek
  • Oliver Beddows

Traduit en francais par: Liskafrica (DAFRICASH)

release: 1 février 2016 (v1.0) Lexique

  • Embranchement: Fork
  • Portefeuille: Wallet
  • Client leger: Lite client
  • Client complet: Full client
  • Délégués actifs: Active delegates
  • Délégués de veille: Standby delegates
  • Disponibilité: Uptime
  • La chaine de genése: Blockchain
  • Gestionnaire de package Node.js: NPM : Node.js package manager
  • Attaques vecteurs: attack vectors
  • Interface de ligne de commande: Command line interface
  • Noeud maître: Master node
  • Gestionnaire de soumission: Submission manager
  • Temps CPU: CPU time
  • Facturation de DAPPS: DAPPS Billing
  • Chaîne latérale: Sidechain
  • Temps du bloc:Lisk block time
  • Hauteur du bloc actuel: Current block height
Last modified on vendredi, 30 décembre 2016
dafricash

Website: www.liskafrica.com Email
Login to post comments

A propos

Liskafrica est le site francophone de référence dédié à la plateforme d’application décentralisé Lisk. Fondé en mai 2016, il propose des articles réguliers d’informations, d'actualités, des tutoriels sur Lisk, les Blockchain Apps (anciennement Dapps) et la Blockchain en général.