mirror of
https://github.com/verdaccio/verdaccio.git
synced 2025-01-06 22:40:26 -05:00
bd8703e871
* feat: add migrateToSecureLegacySignature property * Update config.ts * changeset * Update ci.yml * Update config.spec.ts
33 lines
1 KiB
TypeScript
33 lines
1 KiB
TypeScript
import { isNodeVersionGreaterThan21 } from '@verdaccio/config';
|
|
|
|
import {
|
|
aesDecryptDeprecated,
|
|
aesEncryptDeprecated,
|
|
generateRandomSecretKeyDeprecated,
|
|
} from '../src';
|
|
|
|
const itdescribe = (condition) => (condition ? describe : describe.skip);
|
|
|
|
itdescribe(isNodeVersionGreaterThan21() === false)('test deprecated crypto utils', () => {
|
|
test('generateRandomSecretKeyDeprecated', () => {
|
|
expect(generateRandomSecretKeyDeprecated()).toHaveLength(12);
|
|
});
|
|
|
|
test('decrypt payload flow', () => {
|
|
const secret = '4b4512c6ce20';
|
|
const payload = 'juan:password';
|
|
const token = aesEncryptDeprecated(Buffer.from(payload), secret);
|
|
|
|
expect(token.toString('base64')).toEqual('auizc1j3lSEd2wEB5CyGbQ==');
|
|
const data = aesDecryptDeprecated(token, secret);
|
|
|
|
expect(data.toString()).toEqual(payload.toString());
|
|
});
|
|
|
|
test('crypt fails if secret is incorrect', () => {
|
|
const payload = 'juan:password';
|
|
expect(aesEncryptDeprecated(Buffer.from(payload), 'fake_token').toString()).not.toEqual(
|
|
Buffer.from(payload)
|
|
);
|
|
});
|
|
});
|