npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@rize-labs/paas

v1.0.1

Published

Passkey management module for all your passkey requirements

Downloads

28

Readme

Passkey Signer for Account Abstraction Wallets

The Passkey Signer is a component designed to facilitate signing operations for Smart Contract wallets using a passkey.

Table of Contents

Introduction

Passkey Signer will be an extension of ethers abstract signer and provide the functionality to sign transactions, messages and typed messages for blockchains using passkeys. A passkey is a digital credential, tied to a user account and a website or application. Passkeys allow users to authenticate without having to enter a username or password, or provide any additional authentication factor. This technology aims to replace legacy authentication mechanisms such as passwords. Passkeys are a replacement for private key management. They are faster to sign in with, easier to use, and much more secure.

Features

  • Better UX: There are several hurdles in onboarding a new user to blockchain. Seed phrases and private key management were never a good option. These things should be handled in a manner that users not familiar with the importance of their security concern should also not loose funds.
  • Improved Security: This is something which should not be advertized but should be inherntly given. With passkeys the problem of weak and reused credentials, leaked credentials and phishing are not possible.
  • Plug and Play: Any smart contract wallet or wallet sdk while initialization requires an assistance of EOA wallet for signing messages and transactions. And most Smart contract wallets still uses Metamask for this purpose which kindoff deviates from the goal of simplifying user experience. So instead of having Metamask as an EOA for transaction/message signing wallet infra + wallets can plug in passkey module as an EOA which would facilitate transaction and message signing.
  • Cross platform support: Using The solution can be used in devices which don’t support biometric scanning but have TEE support in them. This can be achieved using a simple QR code scanning. In the backed, the devices are performing a local key agreement, proving proximity and establishing an end to end encrypted communication channel. This maintains the strong security standards against phishing.

Installation

To install the Passkey Signer module, follow these steps:

yarn add @rize-labs/banana-passkey-manager

OR

npm i @rize-labs/banana-passkey-manager

Usage

To use the Passkey Signer module, follow these steps:

// importing PasskeyEoaSigner package 
import { PasskeyEoaSigner } from '@rize-labs/banana-passkey-manager';
import { ABCWallet } from 'ABCWallet-sdk';

// initializing jsonRpcProvider 
const provider = ethers.getDefaultProvider();

// creating an instance out of it 
const bananaEoaSignerInstance = new PasskeyEoaSigner(provider);

// initializing the EOA with a specific username (it should be unique) corresponding to which the passkey
// would be created and later on accessing
await bananaEoaSignerInstance.init('<username>');

// initializing signer for smart contract wallet.
const abcSmartWalletInstance = new ABCWallet(bananaEoaSignerInstance);

Contributing

Contributions to the Passkey Signer project are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request on the project's GitHub repository.