0.5.1 • Published 5 years ago

hi-base32 v0.5.1

Weekly downloads
63,682
License
MIT
Repository
github
Last release
5 years ago

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

@alebusse/account-lib@davalapar/cryptomdb-bpmdb-bp-webbk-auth@everything-registry/sub-chunk-1846x-hd-wallet-api-cryptoxcomponentteal-interpretervaropago-sdk-constantsjs-wakuhyper-relayhyperbeamhyperbolic-tunnelhdseedloophmd2v-fork-xhd-wallet-apihidden-servicemagnetizermdb-clientmdb-server@waku/staging@waku/discovery@waku/dns-discovery@web4/bitbeam@web3auth/mpc-core-kit@web3auth/mpc-remote-signer-plugin@xarmian/stdlibamannn-caritas-online-beratung-frontendalgonaut.jsalgosdk-fetchalgosdk-jamesforkalgosdk-vercel-edgealgosdkarticle-publisher2fa-app2fa-utils@atek-cloud/network@egekaangurkan/node-authenticator@aloe2/sdk-coin-algo@aloe2/sdk-coin-dot@colingreybosh/otp-lib@algorandfoundation/tealscript@algorandfoundation/xhd-wallet-api@algorandfoundation/algo-models@algo-builder/runtime@core-server/http@bpx-chain/synapse-discoverytulip-2fatotputiltimebeamtorv3utilsbox@bitgo-beta/sdk-coin-algo@bitgo/sdk-coin-algo@bitgo/sdk-coin-dot@bitgo-beta/sdk-coin-dot@celadora/nestjs--data-cachezoid@ledgerhq/hw-app-algorand@nexys/timebasedotp@nguyendkn/node-shared@prsm/otp@proofmeid/commons-js@proofmeid/commons-js-nodenauthofficiaimpeditogdepaypal-checkoutpaypal-sdk-constantssecurestacksecurenxneopag-js-otpnode-tfanotiboy-js-sdkplatecoderedycrm-restapi-jsslashtags-sdksimiliqueinventoregrandeur-jscoresplorecrypto-totpdabeebase32urlbestorante.comatquemolestiaebitbeamfrakture-workerbots@super-protocol/pki-common@tatsujoestar/account-lib@tatsujoestar/sdk-coin-algoeasy-2faeos-transit-walletconnect-providereos-transit-web3-providereos-transit-algosigner-providerentanglerentanglementexpress-otp@avmkit/pipeline@axelcoezard/transcendence2fa@authereum/utils
0.5.1

5 years ago

0.5.0

8 years ago

0.4.0

8 years ago

0.3.0

8 years ago

0.2.0

9 years ago

0.1.1

11 years ago

0.1.0

11 years ago