23 lines
555 B
JavaScript
23 lines
555 B
JavaScript
import { Base64 } from 'js-base64'
|
|
|
|
export const decode = function (data, key) {
|
|
data = Base64.decode(data)
|
|
const dl = data.length
|
|
const kl = key.length
|
|
let str = ''
|
|
for (let i = 0; i < dl; i++) {
|
|
str += String.fromCharCode(data.charCodeAt(i) ^ key.charCodeAt(i % kl))
|
|
}
|
|
return str
|
|
}
|
|
|
|
export const encode = function (data, key) {
|
|
const dl = data.length
|
|
const kl = key.length
|
|
let str = ''
|
|
for (let i = 0; i < dl; i++) {
|
|
str += String.fromCharCode(key.charCodeAt(i % kl) ^ data.charCodeAt(i))
|
|
}
|
|
return Base64.encode(str)
|
|
}
|