LockiSecurity
独自のJavaScriptまたはTypeScriptプロジェクトにAES-GCM暗号化を追加できます。@lockisecurity/crypto-coreは、外部依存関係なしでブラウザネイティブのWebCrypto APIを使用します。Locki拡張機能を支えているのと同じエンジンです。
$ npm install @lockisecurity/crypto-coreimport { decrypt, encrypt, generateAESKeyHex } from '@lockisecurity/crypto-core';
const key = await generateAESKeyHex(256);
const sealed = await encrypt('db-password', key); // "[LOCKI:v2:…]"
const plain = await decrypt(sealed, key);暗号学的に安全なキーを生成し、AES-128-GCMまたはAES-256-GCMで任意の文字列を暗号化・復号化できます。Lockiと同じアルゴリズムです。
WebCrypto APIだけで構築されています。サードパーティの暗号ライブラリもネイティブバインディングも不要で、既存のランタイムだけで動作します。
完全な型定義が付属しています。追加の@typesパッケージなしで、TypeScriptプロジェクトですぐに使えます。
暗号化した出力はLocki拡張機能の形式と完全に互換性があります。アプリで暗号化したデータをLockiで復号化でき、その逆も可能です。
WebCryptoのキー生成APIを使い、ブラウザやNode.js環境で、サポートされている任意の長さのAESキーを直接生成できます。