(padded: Buffer)
| 82 | } |
| 83 | |
| 84 | function unpad(padded: Buffer): string { |
| 85 | const unpaddedLen = padded.readUInt16BE(0) |
| 86 | const unpadded = padded.subarray(2, 2 + unpaddedLen) |
| 87 | if (unpaddedLen === 0 || unpadded.length !== unpaddedLen || padded.length !== 2 + calcPaddedLen(unpaddedLen)) { |
| 88 | throw new Error('invalid padding') |
| 89 | } |
| 90 | return unpadded.toString('utf8') |
| 91 | } |
| 92 | |
| 93 | /** |
| 94 | * Encrypt plaintext using NIP-44 v2. |
no test coverage detected