signal-desktop/ts/test-node/updater/curve_test.ts
2021-02-05 11:34:52 -06:00

36 lines
1.1 KiB
TypeScript

// Copyright 2019-2020 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import { assert } from 'chai';
import { get as getFromConfig } from 'config';
import { keyPair, sign, verify } from '../../updater/curve';
describe('updater/curve', () => {
it('roundtrips', () => {
const message = Buffer.from('message');
const { publicKey, privateKey } = keyPair();
const signature = sign(privateKey, message);
const verified = verify(publicKey, message, signature);
assert.strictEqual(verified, true);
});
it('verifies with our own key', () => {
const message = Buffer.from(
'7761a7761eccc0af7ab67546ec044e40dd1e9762f03d0c504d53fb40ceba5738-1.40.0-beta.3'
);
const signature = Buffer.from(
'982eee37076a391392879ce7a69e6ce24708cf12abd87624ae116c665e75b5404bf29fe2cd76c6213753bd16d7529f0f9116d63a63e90d2c6c8b57e17cc17100',
'hex'
);
const publicKey = Buffer.from(
getFromConfig<string>('updatesPublicKey'),
'hex'
);
const verified = verify(publicKey, message, signature);
assert.strictEqual(verified, true);
});
});