Open3

暗号化まわりの基礎知識

まったまった

データ形式系

ハッシュ

Hex

16進数。0~9, A~F の16文字を使って表され 0x で始まる。

Base64

Base64は、データを64種類の印字可能な英数字のみを用いて、それ以外の文字を扱うことの出来ない通信環境にてマルチバイト文字やバイナリデータを扱うためのエンコード方式である。MIMEによって規定されていて、7ビットのデータしか扱うことの出来ない電子メールにて広く利用されている。具体的には、A、…、Z、a、…、z、0、…、9 の62種類の文字[注釈 1]と、2種類の記号 (+、/)、さらにパディング(余った部分を詰める)のための記号として = が用いられる。
https://ja.wikipedia.org/wiki/Base64

つまり色んなシステムで扱いやすいので重いけどこれでやりとりしている。パディングのために末尾に = が1〜2つ付いたりする。

UTF8

Unicode Transformation Format-8

UTF-8 はISO/IEC 10646 とUnicodeで使える8ビット符号単位(1–4バイトの可変長)の文字符号化形式および文字符号化スキーム。

Uint8Array

Uint8Array は型付き配列で、 8 ビット符号なし整数値の配列を表します。

Buffer

Buffer objects are used to represent a fixed-length sequence of bytes. Many Node.js APIs support Buffers.
The Buffer class is a subclass of JavaScript's Uint8Array class and extends it with methods that cover additional use cases.
https://nodejs.org/api/buffer.html

WordArray (CryptJS.lib.WordArray)

CryptoJS が定義している独自の型。

An array of 32-bit words.

まったまった

Web開発系

WebPack

At its core, webpack is a static module bundler for modern JavaScript applications. When webpack processes your application, it internally builds a dependency graph from one or more entry points and then combines every module your project needs into one or more bundles, which are static assets to serve your content from.
https://webpack.js.org/

polyfill

A plugin that provides the functionality of newer browsers to older versions.

まったまった

暗号学系

salt

iv: initial vector

PBKDF2

Password-Based Key Derivation Function 2