mirror of
https://github.com/idanoo/GoScrobble.git
synced 2024-11-25 09:55:15 +00:00
17 lines
415 B
JavaScript
17 lines
415 B
JavaScript
|
var xor = require('buffer-xor')
|
||
|
|
||
|
function getBlock (self) {
|
||
|
self._prev = self._cipher.encryptBlock(self._prev)
|
||
|
return self._prev
|
||
|
}
|
||
|
|
||
|
exports.encrypt = function (self, chunk) {
|
||
|
while (self._cache.length < chunk.length) {
|
||
|
self._cache = Buffer.concat([self._cache, getBlock(self)])
|
||
|
}
|
||
|
|
||
|
var pad = self._cache.slice(0, chunk.length)
|
||
|
self._cache = self._cache.slice(chunk.length)
|
||
|
return xor(chunk, pad)
|
||
|
}
|