Files
bybit-api/src/util/browser-support.ts
Stefan Aebischer 082633a5ca reduce browser bundle size
reduces browser bundle size by ~612k or ~92%.
2021-05-15 19:34:32 +02:00

19 lines
513 B
TypeScript

export async function signMessage(message: string, secret: string): Promise<string> {
const encoder = new TextEncoder();
const key = await window.crypto.subtle.importKey(
'raw',
encoder.encode(secret),
{name: 'HMAC', hash: {name: 'SHA-256'}},
false,
['sign']
);
const signature = await window.crypto.subtle.sign('HMAC', key, encoder.encode(message));
return Array.prototype.map.call(
new Uint8Array(signature),
(x: any) => ('00'+x.toString(16)).slice(-2)
).join('');
};