Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
The base64-js npm package is a utility for encoding and decoding data to and from base64, a binary-to-text encoding scheme that represents binary data in an ASCII string format. It is commonly used to encode data in web applications.
Encoding a byte array to a base64 string
This feature allows you to convert a byte array (Uint8Array) into a base64 encoded string.
"use strict";\nconst base64js = require('base64-js');\nconst bytes = new Uint8Array([72, 101, 108, 108, 111]);\nconst base64String = base64js.fromByteArray(bytes);\nconsole.log(base64String); // Outputs: 'SGVsbG8='
Decoding a base64 string to a byte array
This feature allows you to convert a base64 encoded string back into a byte array (Uint8Array).
"use strict";\nconst base64js = require('base64-js');\nconst base64String = 'SGVsbG8=';\nconst bytes = base64js.toByteArray(base64String);\nconsole.log(bytes); // Outputs: Uint8Array [72, 101, 108, 108, 111]
The 'buffer' package provides a way to handle binary data in Node.js. It includes methods for encoding and decoding base64. It is more comprehensive than base64-js as it is a part of Node.js core and handles more than just base64 encoding.
The 'js-base64' package is another utility for encoding and decoding base64. It works both in the browser and in Node.js, and it also provides additional functionalities like Unicode string support, which base64-js does not have.
base64-js
does basic base64 encoding/decoding in pure JS.
Many browsers already have base64 encoding/decoding functionality, but it is for text data, not all-purpose binary data.
Sometimes encoding/decoding binary data in the browser is useful, and that is what this module does.
With npm do:
npm install base64-js
and var base64js = require('base64-js')
For use in web browsers do:
<script src="base64js.min.js"></script>
Get supported base64-js with the Tidelift Subscription
base64js
has three exposed functions, byteLength
, toByteArray
and fromByteArray
, which both take a single argument.
byteLength
- Takes a base64 string and returns length of byte arraytoByteArray
- Takes a base64 string and returns a byte arrayfromByteArray
- Takes a byte array and returns a base64 stringMIT
FAQs
Base64 encoding/decoding in pure JS
The npm package base64-js receives a total of 27,909,848 weekly downloads. As such, base64-js popularity was classified as popular.
We found that base64-js demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
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.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.