2.2.1 • Published 5 years ago

@plamikcho/pbcrypto v2.2.1

Weekly downloads
1
License
MIT
Repository
github
Last release
5 years ago

A simple wrapper over localStorage/sessionStorage using CryptoSubtle

The code is based on MDN https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto

How to use

import myCrypto from '@plamikcho/pbCrypto';

const encryptedStorage = getEncryptedStorage(localStorage, 'mysupersecret', 'salt');

encryptedStorage.setItem('test', 'Some text to store encrypted')
  .then(() => encryptedStorage.getItem('test'))
  .then(item => console.log(item));
  .catch(error => console.log(error));

If you don't need the storage, here is it:

const cryptoWrapper = getPbCrypto('secret', 'pepper');
const iv = cryptoWrapper.getIv();
cryptoWrapper.encrypt('ДобАр ден,аз съм вашта леля!', iv)
  .then(encrypted => cryptoWrapper.decrypt(encrypted, iv))
  .then((decrypted) => console.log(decrypted));

Supported browsers at the moment: Firefox and Chrome. MDN says that Edge also should work but it doesn't (at least I was not able to find the proper input params). Any help will be appreciated.

Changelog

2.2.1

  • Bowser removed, browser detection is changed to feature detection
  • isBrowserSupported method is restored as a promise. This method is used internally in encrypted storage

2.1.4

  • Typings cleaned from unused import

2.1.3

  • Babel configuration fixed in /dist folder
  • Example added for encrypt/decrypt
  • Typings fixes

2.1.2

  • Babel configuration fixed

2.1.1

  • Example fixed (broken on previous version)

2.1.0

  • Babel polyfill removed (MS browsers support)

2.0.0

  • Bowser is removed from the library. Now it is 6k minified.
  • The issue with large strings is partially solved, at least for the sizes supported by localStorage (=< 10 MB)
2.2.1

5 years ago

2.1.3

5 years ago

2.1.2

5 years ago

2.1.1

5 years ago

2.1.0

5 years ago

2.0.0

5 years ago

1.7.4

5 years ago

1.7.3

5 years ago

1.7.2

5 years ago

1.7.1

5 years ago

1.7.0

5 years ago

1.6.2

5 years ago

1.6.1

5 years ago

1.6.0

5 years ago

1.5.0

5 years ago

1.4.0

5 years ago

1.3.0

5 years ago

1.2.0

5 years ago

1.1.0

5 years ago

1.0.0

5 years ago