Files
pezkuwi-common/packages/util-crypto/sr25519/pair/fromSeed.js
T

19 lines
595 B
JavaScript

import * as sr25519 from '@scure/sr25519';
import { u8aToU8a } from '@pezkuwi/util';
/**
* @name sr25519PairFromSeed
* @description Returns a object containing a `publicKey` & `secretKey` generated from the supplied seed.
*/
export function sr25519PairFromSeed(seed) {
const seedU8a = u8aToU8a(seed);
if (seedU8a.length !== 32) {
throw new Error(`Expected a seed matching 32 bytes, found ${seedU8a.length}`);
}
const sec = sr25519.secretFromSeed(seedU8a);
const pub = sr25519.getPublicKey(sec);
return {
publicKey: pub,
secretKey: sec
};
}