Listing Thumbnail

    WAB (Wallet Authentication Backend)

     Info
    Deployed on AWS
    Wallet Authentication Backend (WAB) is a Node.js/Express server that provides modular, multi-factor user authentication for BSV wallet applications. It manages secure 256-bit presentation keys for users, protected by configurable authentication methods including SMS verification and government ID checks. Includes built-in faucet functionality for one-time BSV satoshi payments to new users.

    Overview

    Open image

    Wallet Authentication Backend (WAB) is an open-source authentication infrastructure built in TypeScript that enables secure, multi-factor authentication for Bitcoin SV (BSV) wallet applications and blockchain services. WAB manages 256-bit presentation keys for users, which can be used to authenticate and authorize actions in wallets or other systems.

    The system provides an extensible authentication framework supporting multiple verification methods through a generic interface. Each user's presentation key is protected by one or more configurable Auth Methods, including Twilio SMS verification and government ID verification (Persona/Jumio). When users complete authentication, WAB either creates a new record for new users or retrieves existing keys for returning users. The architecture allows developers to easily add custom authentication methods by extending the base AuthMethod class.

    WAB is production-ready and includes essential features for wallet deployments: Knex-based database migrations supporting MySQL and SQLite, built-in faucet functionality for automated BSV payments to new accounts; comprehensive TypeScript implementation for type safety; Docker containerization for simplified deployment. The reference implementation provides a complete authentication backend that can be customized and deployed for any BSV wallet or blockchain application requiring secure user authentication.

    Key Features:

    • Multi-factor authentication with extensible auth method framework
    • Secure 256-bit presentation key management
    • Built-in BSV faucet for new user onboarding
    • Production-ready with database migrations and Docker support
    • Open BSV License v4

    Highlights

    • Multi-factor authentication system with extensible auth methods including text verification. Securely manages 256-bit presentation keys for BSV wallet applications with support for multiple authentication factors per user.
    • Built-in BSV faucet functionality for automated satoshi payments to new users. Configurable one-time or recurring payment logic with transaction logging and data returned to users for seamless onboarding.

    Details

    Delivery method

    Supported services

    Delivery option
    WAB Container - ECS/EKS Deployment

    Latest version

    Operating system
    Linux

    Deployed on AWS
    New

    Introducing multi-product solutions

    You can now purchase comprehensive solutions tailored to use cases and industries.

    Multi-product solutions

    Features and programs

    Financing for AWS Marketplace purchases

    AWS Marketplace now accepts line of credit payments through the PNC Vendor Finance program. This program is available to select AWS customers in the US, excluding NV, NC, ND, TN, & VT.
    Financing for AWS Marketplace purchases

    Pricing

    WAB (Wallet Authentication Backend)

     Info
    This product is available free of charge. Free subscriptions have no end date and may be canceled any time.
    Additional AWS infrastructure costs may apply. Use the AWS Pricing Calculator  to estimate your infrastructure costs.

    Vendor refund policy

    This is a free open-source product. Buyers are charged only for AWS infrastructure costs (compute, storage, network) associated with running the software. No software licensing fees are charged, therefore no refunds are applicable. Users may unsubscribe at any time to stop incurring AWS infrastructure costs. For technical support or issues, please contact us through our GitHub repository at https://github.com/bsv-blockchain/wab .

    How can we make this page better?

    We'd like to hear your feedback and ideas on how to improve this page.
    We'd like to hear your feedback and ideas on how to improve this page.

    Legal

    Vendor terms and conditions

    Upon subscribing to this product, you must acknowledge and agree to the terms and conditions outlined in the vendor's End User License Agreement (EULA) .

    Content disclaimer

    Vendors are responsible for their product descriptions and other product content. AWS does not warrant that vendors' product descriptions or other product content are accurate, complete, reliable, current, or error-free.

    Usage information

     Info

    Delivery details

    WAB Container - ECS/EKS Deployment

    Supported services: Learn more 
    • Amazon ECS
    • Amazon EKS
    • Amazon ECS Anywhere
    • Amazon EKS Anywhere
    Container image

    Containers are lightweight, portable execution environments that wrap server application software in a filesystem that includes everything it needs to run. Container applications run on supported container runtimes and orchestration services, such as Amazon Elastic Container Service (Amazon ECS) or Amazon Elastic Kubernetes Service (Amazon EKS). Both eliminate the need for you to install and operate your own container orchestration software by managing and scheduling containers on a scalable cluster of virtual machines.

    Version release notes

    Initial release of Wallet Authentication Backend (WAB) for AWS Marketplace.

    Features:

    • Multi-factor authentication with extensible auth methods
    • SMS verification via Twilio and government ID verification support
    • Secure 256-bit presentation key management
    • Built-in BSV faucet for new user onboarding
    • Database support for PostgreSQL, MySQL, and SQLite
    • Production-ready with comprehensive documentation

    Technical Implementation:

    • Node.js 20 LTS (Debian-based from AWS Public ECR)
    • AMD64 architecture
    • Built on native Linux x86_64 environment (Ubuntu 22.04)
    • OCI-compliant container labels
    • AWS Marketplace metering integration (RegisterUsage)
    • Single-architecture build for maximum compatibility

    AWS Marketplace Compliance:

    • Native Linux x86_64 build (no emulation artifacts)
    • No unsupported architecture layers
    • All dependencies included in AWS Marketplace ECR
    • Meets all container security and architecture requirements

    Visit https://github.com/bsv-blockchain/wab  for complete documentation.

    Additional details

    Usage instructions

    Wallet Authentication Backend (WAB) Deployment Instructions

    Quick Start with Amazon ECS

    1. Pull the container image from AWS Marketplace ECR

      • After subscribing, the image will be available in your region
    2. Create a task definition

    { "family": "wab-task", "containerDefinitions": [{ "name": "wab", "image": "709825985650.dkr.ecr.us-east-1.amazonaws.com/bsv-blockchain/wab:1.0.0", "memory": 512, "cpu": 256, "essential": true, "portMappings": [{ "containerPort": 8080, "protocol": "tcp" }], "environment": [ {"name": "NODE_ENV", "value": "production"}, {"name": "PORT", "value": "8080"}, {"name": "DB_CLIENT", "value": "pg"}, {"name": "DB_HOST", "value": "your-rds-endpoint"}, {"name": "DB_USER", "value": "your-db-user"}, {"name": "DB_PASS", "value": "your-db-password"}, {"name": "DB_NAME", "value": "wab_database"}, {"name": "TWILIO_ACCOUNT_SID", "value": "ACxxxxxxxxxx"}, {"name": "TWILIO_AUTH_TOKEN", "value": "your-auth-token"}, {"name": "TWILIO_VERIFY_SERVICE_SID", "value": "VAxxxxxxxxxx"} ] }] }
    1. Create an ECS service
    aws ecs create-service \ --cluster your-cluster \ --service-name wab-service \ --task-definition wab-task \ --desired-count 1 \ --launch-type FARGATE

    Deployment on Amazon EKS

    1. Create a Kubernetes deployment manifest
    apiVersion: apps/v1 kind: Deployment metadata: name: wab-deployment spec: replicas: 2 selector: matchLabels: app: wab template: metadata: labels: app: wab spec: containers: - name: wab image: 709825985650.dkr.ecr.us-east-1.amazonaws.com/bsv-blockchain/wab:1.0.0 ports: - containerPort: 8080 env: - name: NODE_ENV value: "production" - name: DB_CLIENT value: "pg" - name: DB_HOST valueFrom: secretKeyRef: name: wab-secrets key: db-host # Add other environment variables
    1. Apply the deployment
    kubectl apply -f wab-deployment.yaml

    Required Environment Variables

    Database Configuration:

    • DB_CLIENT: Database type (pg, mysql, or sqlite3)
    • DB_HOST: Database hostname
    • DB_USER: Database username
    • DB_PASS: Database password
    • DB_NAME: Database name
    • DB_PORT: Database port (optional, default: 5432 for pg, 3306 for mysql)

    Twilio SMS Authentication (optional):

    • TWILIO_ACCOUNT_SID: Your Twilio Account SID
    • TWILIO_AUTH_TOKEN: Your Twilio Auth Token
    • TWILIO_VERIFY_SERVICE_SID: Your Twilio Verify Service SID

    Application Settings:

    • NODE_ENV: Set to "production"
    • PORT: Application port (default: 8080)

    Database Setup

    1. Run migrations after first deployment:
    # Connect to container docker exec -it <container-id> /bin/sh # Run migrations npm run migrate

    Health Check

    Test your deployment:

    curl http://your-service-url:8080/info

    Expected response: JSON with WAB configuration details

    Documentation

    Complete documentation: https://github.com/bsv-blockchain/wab 

    • Setup guide
    • Authentication method configuration
    • API reference
    • Troubleshooting

    Support

    For issues and questions, visit: https://github.com/bsv-blockchain/wab/issues 

    Support

    Vendor support

    Community support is available through the GitHub repository at https://github.com/bsv-blockchain/wab . Users can:

    • Open issues for bug reports and feature requests
    • Submit pull requests for improvements and new authentication methods
    • Access comprehensive documentation in the repository README
    • Review example configurations and deployment guides

    For technical questions and implementation guidance, please create a GitHub issue with detailed information about your use case and environment. The WAB project welcomes contributions from the community.

    Support Level: Community-driven open source project Response Time: Best effort via GitHub issues Documentation: Complete setup, configuration, and deployment guides available in repository

    AWS infrastructure support

    AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.

    Customer reviews

    Ratings and reviews

     Info
    0 ratings
    5 star
    4 star
    3 star
    2 star
    1 star
    0%
    0%
    0%
    0%
    0%
    0 reviews
    No customer reviews yet
    Be the first to review this product . We've partnered with PeerSpot to gather customer feedback. You can share your experience by writing or recording a review, or scheduling a call with a PeerSpot analyst.