JSPM

react-native-bcrypt-cpp

0.1.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 14
  • Score
    100M100P100Q53121F
  • License MIT

Next-gen React Native library for Bcrypt hashing, using pure C++ with Turbo Modules and multithreading for superior performance

Package Exports

  • react-native-bcrypt-cpp

Readme

react-native-bcrypt-cpp

Next-gen React Native library for Bcrypt hashing using pure C++ with Turbo Modules and multithreading for superior performance.

NOTE: This library can be used only with New Architecture (more information about New Architecture here)

Installation

npm install react-native-bcrypt-cpp

or

yarn add react-native-bcrypt-cpp

Usage

Asynchronous Hashing (Multithreaded)

import { generateHash, validatePassword } from 'react-native-bcrypt-cpp';

// Generate a hash asynchronously
const hash = await generateHash('password', 12);

// Validate a password against a hash
const isValid = await validatePassword('password', hash);

Synchronous Hashing (Single-threaded)

import {
  generateHashSync,
  validatePasswordSync,
} from 'react-native-bcrypt-cpp';

// Generate a hash synchronously
const hash = generateHashSync('password', 12);

// Validate a password against a hash synchronously
const isValid = validatePasswordSync('password', hash);

API Reference

API Reference

generateHash(password: string, workload: number): Promise<string>

Asynchronously generates a Bcrypt hash for the given password with the specified workload factor.

Parameters:

  • password (string): The password to hash.
  • workload (number): The cost factor for the hashing algorithm (e.g., 12).

Returns:

  • A Promise that resolves to a string containing the generated hash.

validatePassword(password: string, hash: string): Promise<boolean>

Asynchronously validates the given password against the Bcrypt hash.

Parameters:

  • password (string): The password to validate.
  • hash (string): The Bcrypt hash to validate against.

Returns:

  • A Promise that resolves to a boolean indicating whether the password is valid.

generateHashSync(password: string, workload: number): string

Synchronously generates a Bcrypt hash for the given password with the specified workload factor.

Parameters:

  • password (string): The password to hash.
  • workload (number): The cost factor for the hashing algorithm (e.g., 12).

Returns:

  • A string containing the generated hash.

validatePasswordSync(password: string, hash: string): boolean

Synchronously validates the given password against the Bcrypt hash.

Parameters:

  • password (string): The password to validate.
  • hash (string): The Bcrypt hash to validate against.

Returns:

  • A boolean indicating whether the password is valid.

Contributing

See the contributing guide to learn how to contribute to the repository and the development workflow.

License

This project is licensed under the MIT License. See the LICENSE file for details.


Made with create-react-native-library