hi-base32
A simple Base32 encode / decode function for JavaScript supports UTF-8 encoding.
Last updated 5 years ago by emn178 .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install hi-base32 
SYNC missed versions from official npm registry.

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

Current Tags

  • 0.5.1                                ...           latest (5 years ago)

7 Versions

  • 0.5.1                                ...           5 years ago
  • 0.5.0                                ...           8 years ago
  • 0.4.0                                ...           8 years ago
  • 0.3.0                                ...           9 years ago
  • 0.2.0                                ...           9 years ago
  • 0.1.1                                ...           11 years ago
  • 0.1.0                                ...           11 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (0)
None
Dev Dependencies (4)
Dependents (1)

Copyright 2013 - present © cnpmjs.org | Home |