JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 43
  • Score
    100M100P100Q58358F
  • License ISC

A WebAuthn library implementing password-based key derivation functions (PRF) for secure authentication and encryption

Package Exports

  • @adorsys-gis/web-auth-prf
  • @adorsys-gis/web-auth-prf/dist/src/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@adorsys-gis/web-auth-prf) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

WebAuthn PRF Example

A lightweight TypeScript library that implements WebAuthn with PRF (Pseudo-Random Function) for secure authentication and encryption. This package allows users to register, authenticate, and encrypt/decrypt messages using derived keys.

Installation

Install the package using npm:

npm install @adorsys-gis/web-auth-prf

Usage

Register a User

To register a new user, call the handleRegister function:

import { handleRegister } from "@adorsys-gis/web-auth-prf";

document.getElementById("registerBtn").addEventListener("click", async () => {
  await handleRegister();
});

Authenticate a User

To authenticate an existing user, call the handleAuthenticate function:

import { handleAuthenticate } from "@adorsys-gis/web-auth-prf";

document
  .getElementById("authenticateBtn")
  .addEventListener("click", async () => {
    await handleAuthenticate();
  });

Save and Load Messages

To save and retrieve encrypted messages, use the saveMessage and loadMessages functions:

import { saveMessage } from "@adorsys-gis/web-auth-prf";

document
  .getElementById("saveMessageBtn")
  .addEventListener("click", async () => {
    await saveMessage();
  });

Logout

To log out and clear stored credentials and messages, use the handleLogout function:

import { handleLogout } from "@adorsys-gis/web-auth-prf";

document.getElementById("logoutBtn").addEventListener("click", async () => {
  await handleLogout();
});

API

handleRegister()

Registers a new user with WebAuthn and securely stores authentication credentials.

handleAuthenticate()

Authenticates a registered user using WebAuthn credentials.

saveMessage()

Encrypts and saves a message using the derived encryption key.

loadMessages()

Loads and decrypts saved messages.

handleLogout()

Clears stored credentials and messages, effectively logging out the user.

For more details, check out the official WebAuthn documentation: MDN WebAuthn Docs.