decide.nolog.cz/app/services/encryption.js
jelhan ae0ad7bd42 Import sjcl by newly added Anonymous AMD Support
Fixes: `invalid aes key size` error in sjcl 1.0.5 and 1.0.6.

https://github.com/ember-cli/ember-cli/pull/5976
2016-09-20 02:01:33 +02:00

32 lines
564 B
JavaScript

import Ember from 'ember';
import generatePassphrase from '../utils/generate-passphrase';
import sjcl from 'sjcl';
export default Ember.Service.extend({
key: null,
decrypt(value) {
return JSON.parse(
sjcl.decrypt(
this.get('key'),
value
)
);
},
encrypt(value) {
return sjcl.encrypt(
this.get('key'),
JSON.stringify(value)
);
},
generateKey() {
const passphraseLength = 40;
this.set('key', generatePassphrase(passphraseLength));
},
init() {
this._super(...arguments);
}
});