Avalanche Francophone
  • Documentation du développeur
  • Apprendre
    • Aperçu de la plateforme
      • Staking
      • Frais de transaction
    • Les bases de la blockchain
    • FAQ
    • Forum
    • Communauté
  • Créer
  • Pour commencer: exécuter un nœud Avalanche
  • Notes de version
    • Alertes par email
    • Notes de mise à jour d'AvalancheGo
    • Notes de mise à jour d'Ortelius
  • Tutoriels
    • Plateforme
      • Créer une nouvelle blockchain
      • Créer un Réseau Local Testnet
      • Créer un sous-réseau (subnet)
      • Créer une Machine Virtuelle (VM)
      • Configurez votre Ledger Nano S avec Avalanche
      • Transférer de l'AVAX entre la X-Chain et la C-Chain
      • Transférer de l'AVAX entre la X-Chain et la P-Chain
    • Nœuds et mise en jeu
      • Ajouter un validateur
      • Maintenir un nœud Avalanche
      • Exécutez un nœud Avalanche et devenez validateur
      • Exécuter un nœud Avalanche avec Oracle VM VirtualBox
      • Exécutez un nœud Avalanche avec un Raspberry Pi 4
      • Exécutez un nœud Avalanche et faites une mise en jeu avec le portefeuille
      • Exécuter un nœud Avalanche avec OVH
      • Exécuter un nœud Avalanche avec Amazon Web Services (AWS)
      • Exécuter un nœud Avalanche avec Microsoft Azure
      • Exécuter un nœud Avalanche sous Linux à l'aide du script d'installation
      • Configuration du monitoring des nœuds
      • Mise en jeu d'AVAX, en validant ou délégant via le portefeuille Avalanche
      • Déléguer à un nœud
      • Sécurisation d'un serveur VPS
      • Mettez à niveau votre nœud AvalancheGo
    • Contrats intelligents
      • Déployer un contrat intelligent en utilisant Remix et MetaMask
      • Utilisation de Truffle avec la C-Chain d'Avalanche
    • Actifs Numériques Intelligents
      • Créer un token ERC-20
      • Créer un actif à capitalisation fixe
      • Créer un actif à capitalisation variable
      • Création d'un NFT - Partie 1
      • Créez des NFT avec le portefeuille Avalanche
      • Utilisez les Wrapped AVAX (WAVAX) sur Avalanche
  • AvalancheGo APIs
    • Émettre des appels d'API
    • Platform API (P-Chain)
    • EVM API (C-Chain)
    • AVM API (X-Chain)
    • Appels d'API obsolètes
    • API Admin
    • API Auth
    • API Health
    • API Info
    • API IPC
    • API Keystore
    • API Metrics
    • API Timestamp
  • Outils
    • AvalancheJS
      • Créer un actif sur la X-Chain
      • Management des clés sur la X-Chain
      • Envoyer un actif sur la X-Chain
      • API
    • Avash
    • Ortelius
  • Références
    • AVM Transaction Format
    • Command Line Interface
    • Coreth Atomic Transaction Format
    • Cryptographic Primitives
    • Network Protocol
    • Serialization Primitives
    • Platform Transaction Format
  • Papiers
Propulsé par GitBook
Sur cette page
  • Format
  • Endpoints
  • Méthodes
  • keystore.createUser
  • keystore.deleteUser
  • keystore.exportUser
  • keystore.importUser
  • keystore.listUsers

Cet article vous a-t-il été utile ?

  1. AvalancheGo APIs

API Keystore

Gestion de KeyStore

PrécédentAPI IPCSuivantAPI Metrics

Dernière mise à jour il y a 4 ans

Cet article vous a-t-il été utile ?

Chaque nœud a un keystore intégré. Les clients créent des utilisateurs sur le keystore, qui agissent comme des identités à utiliser lors de l'interaction avec les blockchains. Un fichier de clés existe au niveau du nœud, donc si vous créez un utilisateur sur un nœud, il n'existe que sur ce nœud. Cependant, les utilisateurs peuvent être importés et exportés à l'aide de cette API.

Vous ne devez créer un utilisateur de keystore que sur un nœud que vous exploitez, car l'opérateur de nœud a accès à votre mot de passe en texte brut.

Format

Cette API utilise le format RPC json 2.0. Pour plus d'informations sur les appels JSON RPC, cliquez .

Endpoints

/ext/keystore

Méthodes

keystore.createUser

Créez un nouvel utilisateur avec le nom d'utilisateur et le mot de passe spécifiés.

Signature

keystore.createUser(
    {
        username:string,
        password:string
    }
) -> {success:bool}
  • username et password peut contenir au plus 1024 caractères.

  • Votre requête sera rejetée si le password est jugée trop "weak". password doit comporter au moins 8 caractères et contenir des lettres majuscules et minuscules ainsi que des chiffres et des symboles.

Exemple d'un Appel

curl -X POST --data '{
    "jsonrpc":"2.0",
    "id"     :1,
    "method" :"keystore.createUser",
    "params" :{
        "username":"bob",
        "password":"creme fraiche"
    }
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/keystore

Exemple de Réponse

{
    "jsonrpc":"2.0",
    "id"     :1,
    "result" :{
        "success":true
    }
}

keystore.deleteUser

Supprimer un utilisateur.

keystore.deleteUser({username: string, password:string}) -> {success: bool}

Exemple d'un Appel

curl -X POST --data '{
    "jsonrpc":"2.0",
    "id"     :1,
    "method" :"keystore.deleteUser",
    "params" : {
        "username" : "bob",
        "password" : "3l33th4x0r!!1!"
    }
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/keystore

Exemple de Réponse

{
    "jsonrpc":"2.0",
    "id"     :1,
    "result" :{"success" : true}
}

keystore.exportUser

Exportez un utilisateur. L'utilisateur peut être importé vers un autre nœud avec keystore.importUser. Le mot de passe de l'utilisateur reste chiffré.

keystore.exportUser(
    {
        username:string,
        password:string
    }
) -> {user:string}

Exemple d'un Appel

curl -X POST --data '{
    "jsonrpc":"2.0",
    "id"     :1,
    "method" :"keystore.exportUser",
    "params" :{
        "username"  :"bob",
        "password"  :"creme fraiche"
    }
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/keystore

Exemple de Réponse

{
    "jsonrpc":"2.0",
    "id"     :1,
    "result" :{
        "user":"4CsUh5sfVwz2jNrJXBVpoPtDsb4tZksWykqmxC5CXoDEERyhoRryq62jYTETYh53y13v7NzeReisi"
    }
}

keystore.importUser

Importer l'utilisateur password doit correspondre au mot de passe de l'utilisateur. username n'a pas à correspondre au nom d'utilisateur que user a lors de son exportation.

keystore.importUser(
    {
        username:string,
        password:string,
        user:string
    }
) -> {success:bool}

Exemple d'un Appel

curl -X POST --data '{
    "jsonrpc":"2.0",
    "id"     :1,
    "method" :"keystore.importUser",
    "params" :{
        "username":"accountNameCanBeDifferent",
        "password":"creme fraiche",
        "user"    :"4CsUh5sfVwz2jNrJXBVpoPtDsb4tZksWykqmxC5CXoDEERyhoRryq62jYTETYh53y13v7NzeReisi"
    }
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/keystore

Example de Réponse

{
    "jsonrpc":"2.0",
    "id"     :1,
    "result" :{
        "success":true
    }
}

keystore.listUsers

Répertoriez les utilisateurs de ce keystore.

Signature

keystore.ListUsers() -> {users:[]string}

Example d'un Appel

curl -X POST --data '{
    "jsonrpc":"2.0",
    "id"     :1,
    "method" :"keystore.listUsers"
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/keystore

Example de Réponse

{
    "jsonrpc":"2.0",
    "id"     :1,
    "result" :{
        "users":[
            "bob"
        ]
    }
}
ici