m-cloud API Documentation - v1.0.1-beta.5
    Preparing search index...

    Class KeyManager

    密钥管理类 提供安全的密钥存储和获取功能,使用单例模式确保全局唯一性

    // 获取实例
    const keyManager = KeyManager.getInstance()

    // 加载密钥
    await keyManager.loadKey('default', 'my-password')

    // 获取密钥
    const key = keyManager.getKey('default')

    // 检查密钥是否存在
    const hasKey = keyManager.hasKey('default')

    // 删除密钥
    keyManager.removeKey('default')
    Index

    Methods

    • 获取单例实例 返回全局唯一的 KeyManager 实例

      Returns KeyManager

      KeyManager 实例

      const keyManager = KeyManager.getInstance()
      
    • 加载密钥(异步版本) 从密码生成密钥并存储

      Parameters

      • keyName: string

        密钥名称

      • password: string

        密钥密码

      • Optionalsalt: string

        盐值(Base64 编码),如果不提供则自动生成

      Returns Promise<void>

      await keyManager.loadKey('default', 'my-password')
      await keyManager.loadKey('secondary', 'another-password', 'base64salt...')
    • 获取密钥 根据名称获取已存储的密钥

      Parameters

      • keyName: string

        密钥名称

      Returns Buffer<ArrayBufferLike> | undefined

      密钥,如果不存在则返回 undefined

      const key = keyManager.getKey('default')
      if (key) {
      // 使用密钥进行加密/解密
      }
    • 检查密钥是否存在

      Parameters

      • keyName: string

        密钥名称

      Returns boolean

      如果密钥存在则返回 true,否则返回 false

      if (keyManager.hasKey('default')) {
      console.log('Default key exists')
      }
    • 删除密钥 从存储中删除指定的密钥

      Parameters

      • keyName: string

        密钥名称

      Returns void

      keyManager.removeKey('old-key')