You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

hi-base32

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

hi-base32

A simple Base32 encode / decode function for JavaScript supports UTF-8 encoding.


Version published
Weekly downloads
244K
increased by2.13%
Maintainers
1
Created
Weekly downloads
 

Package description

What is hi-base32?

The hi-base32 npm package is a JavaScript library for encoding and decoding data using the Base32 encoding scheme. It is useful for applications that need to encode binary data into a text format that is more easily transmitted over text-based protocols.

What are hi-base32's main functionalities?

Base32 Encoding

This feature allows you to encode a string into Base32 format. The example encodes the string 'Hello, World!' into its Base32 representation.

const base32 = require('hi-base32');
const encoded = base32.encode('Hello, World!');
console.log(encoded); // Outputs: JBSWY3DPEBLW64TMMQ======

Base32 Decoding

This feature allows you to decode a Base32 encoded string back into its original format. The example decodes the Base32 string 'JBSWY3DPEBLW64TMMQ======' back to 'Hello, World!'.

const base32 = require('hi-base32');
const decoded = base32.decode('JBSWY3DPEBLW64TMMQ======');
console.log(decoded); // Outputs: Hello, World!

Other packages similar to hi-base32

Changelog

Source

v0.5.1 / 2021-03-22

Fixed

  • encode/devoce empty string

Readme

Source

hi-base32

A simple Base32(RFC 4648) encode / decode function for JavaScript supports UTF-8 encoding.
Build Status Build Status
NPM

Demo

Base32 Encode Online
Base32 Decode Online

Download

Compress
Uncompress

Installation

You can also install hi-base32 by using Bower.

bower install hi-base32

For node.js, you can use this command to install:

npm install hi-base32

Usage

You could use like this:

base32.encode('String to encode');
base32.decode('Base32 string to decode');

If you use node.js, you should require the module first:

var base32 = require('hi-base32');

It supports AMD:

require(['your/path/hi-baes32.js'], function (baes32) {
// ...
});

TypeScript

import * as base32 from 'hi-base32';
// or
// import { encode, decode } from 'hi-base32';

base32.encode('String to encode');
base32.decode('Base32 string to decode');

Methods

base32.encode(input, asciiOnly)

Encode string or bytes to base32, set asciiOnly to true for better performace if it is.

input: String, Array, Uint8Array or ArrayBuffer

Input string or bytes to encode.

asciiOnly: Boolean (default: false)

Specify the string encoding is ASCII. It only works when string input.

base32.decode(base32Str, asciiOnly)

Decode base32 string, set asciiOnly to true for better performace.

base32Str: String

Base32 string to decode.

asciiOnly: Boolean (default: false)

Specify the string encoding is ASCII.

base32.decode.asBytes(base32Str)

Decode base32 string and return byte Array

base32Str: String

Base32 string to decode.

Example

base32.encode('Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.');
// JVQW4IDJOMQGI2LTORUW4Z3VNFZWQZLEFQQG433UEBXW43DZEBRHSIDINFZSA4TFMFZW63RMEBRHK5BAMJ4SA5DINFZSA43JNZTXK3DBOIQHAYLTONUW63RAMZZG63JAN52GQZLSEBQW42LNMFWHGLBAO5UGSY3IEBUXGIDBEBWHK43UEBXWMIDUNBSSA3LJNZSCYIDUNBQXIIDCPEQGCIDQMVZHGZLWMVZGC3TDMUQG6ZRAMRSWY2LHNB2CA2LOEB2GQZJAMNXW45DJNZ2WKZBAMFXGIIDJNZSGKZTBORUWOYLCNRSSAZ3FNZSXEYLUNFXW4IDPMYQGW3TPO5WGKZDHMUWCAZLYMNSWKZDTEB2GQZJAONUG64TUEB3GK2DFNVSW4Y3FEBXWMIDBNZ4SAY3BOJXGC3BAOBWGKYLTOVZGKLQ=
base32.decode('JBSWY3DP'); // Hello
base32.decode.asBytes('JBSWY3DP'); // [72, 101, 108, 108, 111]

// It also supports UTF-8 encoding
base32.encode('中文'); // 4S4K3ZUWQ4======

License

The project is released under the MIT license.

Contact

The project's website is located at https://github.com/emn178/hi-base32
Author: Chen, Yi-Cyuan emn178@gmail.com

Keywords

FAQs

Package last updated on 22 Mar 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc