LearnCard Developer Docs
  • 🚀Get Started
    • 👋Welcome
    • ⭐Who are you?
      • Learners & Employees
      • Traditional Educator
      • Non-Traditional Educator
      • Assessment Provider
      • Employer
      • App Developer & EdTech
      • DAO & Communities
      • Content Creators
      • Research Institutions
      • NGOs & Governments
      • Plugfest Partner
        • Guide for Interop Issuers
          • 🤽Creating an Interop Issuer
        • Guide for Interop Wallets
    • Protocol Overview
      • The Internet of Education
      • The Learning Economy
      • Learner & Employee Privacy
      • 22nd Century Education
      • The Open Credential Network
      • PVCs
  • 🔰LearnCard SDK
    • What is LearnCard?
      • Why a Universal Wallet?
      • Architectural Patterns
      • Production Deployment Guide
      • Troubleshooting Guide
    • LearnCard Core
      • Quick Start
        • Create New Credentials
          • Creating Verifiable Credentials for LearnCard
          • Achievement Types and Categories
          • Custom Types
          • Understanding Boosts
          • Creating Boost Credentials
        • Sign & Send Credentials
        • Accept & Verify Credentials
        • Share & Present Credentials
      • Construction
        • Managing Seed Phrases
        • initLearnCard
        • DIDKit
        • learnCardFromSeed
        • emptyLearnCard
        • IDX Config
      • Control Planes
        • ID
        • Read
        • Store
        • Index
        • Cache
        • Context
      • Plugins
        • Adding Plugins
        • Official Plugins
          • Dynamic Loader
          • Crypto
          • DIDKit
          • DID Key
          • VC
            • Expiration Sub-Plugin
          • VC Resolution
          • VC-Templates
          • VC-API
          • Ceramic
          • IDX
          • VPQR
          • Ethereum
          • CHAPI
          • LearnCard Network
          • LearnCloud
          • LearnCard
          • Claimable Boosts
        • Writing Plugins
          • The Simplest Plugin
          • The Plugin Type
          • The LearnCard Type
          • Implementing Control Planes
          • Implementing Methods
          • The Implicit LearnCard
          • Depending on Plugins
          • Private Fields
          • Publishing a Plugin to NPM
      • URIs
      • CHAPI
        • ⭐CHAPI Wallet Setup Guide
        • ↔️Translating to CHAPI documentation
        • 🖥️Demo Application
        • 🔰Using LearnCard to Interact with a CHAPI Wallet
        • 📝Cheat Sheets
          • Issuers
          • Wallets
      • LearnCard UX
        • Quick Start
        • Components
          • Verifiable Credentials
            • VC Thumbnail
            • VC Thumbnail, Mini
          • LearnCards
            • LearnCard Front
            • LearnCard Back
        • API
      • LearnCard Bridge
      • API
      • Migration Guide
    • LearnCard Network
      • LearnCard Network API
        • Authentication
        • Auth Grants and API Tokens
        • Profile
        • Credentials
        • Boosts
        • Presentations
        • Storage
        • Signing Authorities
        • Notifications
        • API Docs
        • Launch Your Own Network
      • 🔌Connect Your Application
    • ConsentFlow
      • Setting Up ConsentFlow with an Independent Network
    • GameFlow
      • Sending xAPI Statements
        • xAPI URIs
      • Reading xAPI Statements
        • Advanced xAPI Statement Queries
      • Consentful "Claim Later" Flow
  • 🚀Applications
    • LearnCard
    • SuperSkills!
      • SuperSkills! SDK
        • Digital Wallets
        • Issuing into SuperSkills!
        • 🦸Creating a SuperSkills! Issuer
    • Metaversity
    • Admin Dashboard
  • 🔗Resources
    • Github
    • Community
    • 💅Custom Development
    • Contact Our Team
    • Learning Economy
  • 🤖LearnCard Services
    • LearnCard CLI
    • Discord Bot
    • Metamask Snap
  • 💸LearnBank SDK
    • Why LearnBank?
  • 📊LearnGraph SDK
    • Why LearnGraph?
Powered by GitBook
On this page
  • Overview
  • Implementation Steps

Was this helpful?

  1. LearnCard SDK
  2. LearnCard Core
  3. Construction

Managing Seed Phrases

Remote Key Management System (KMS) for LearnCard

This documentation will guide you through the process of implementing a remote Key Management System (KMS) for deriving a deterministic, 64-character seed phrase to construct your LearnCard wallet.

Overview

In some cases, you may want to store and manage the seed phrases for LearnCard wallets in a remote and secure KMS. This approach allows for better control and security of the seed phrases while providing flexibility in managing multiple wallets for different use cases.

Implementation Steps

  1. Set up the remote KMS: Choose a suitable KMS provider that meets your requirements for security, scalability, and performance. Some popular KMS providers include AWS KMS, Google Cloud KMS, and Azure Key Vault. Set up your account and create a dedicated key store for your LearnCard seed phrases.

  2. Generate seed phrases: Generate a deterministic, 64-character seed phrase using your chosen KMS provider's API or SDK. This seed phrase will be used to derive the keys for your LearnCard wallet.

  3. Securely store seed phrases: Store the generated seed phrase securely in the remote KMS, ensuring proper access control and encryption are in place.

  4. Retrieve seed phrases: When needed, retrieve the seed phrase from the remote KMS using a secure connection and authentication mechanism provided by your KMS provider.

  5. Initialize LearnCard wallet: Import the initLearnCard function from the @learncard/init package, and initialize the LearnCard wallet using the retrieved seed phrase.

import { initLearnCard } from '@learncard/init';

const seed = getSeedFromKMS(); // Replace with the seed retrieved from your remote KMS
const learnCard = await initLearnCard({ seed });

By following these steps, you can leverage a remote KMS for managing your LearnCard wallet's seed phrases, providing enhanced security and control over the wallet initialization process.

PreviousConstructionNextinitLearnCard

Last updated 1 year ago

Was this helpful?

🔰