1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| 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)
| }
|
|