mirror of
https://github.com/logos-messaging/js-rln.git
synced 2026-01-02 13:43:06 +00:00
feat: enable MembershipKey object to be created from existing creds
This commit is contained in:
parent
c54b716cc9
commit
9ff1a0b97e
15
src/rln.ts
15
src/rln.ts
@ -54,12 +54,15 @@ export async function create(): Promise<RLNInstance> {
|
||||
}
|
||||
|
||||
export class MembershipKey {
|
||||
readonly IDKey: Uint8Array;
|
||||
readonly IDCommitment: Uint8Array;
|
||||
constructor(
|
||||
public readonly IDKey: Uint8Array,
|
||||
public readonly IDCommitment: Uint8Array
|
||||
) {}
|
||||
|
||||
constructor(memKeys: Uint8Array) {
|
||||
this.IDKey = memKeys.subarray(0, 32);
|
||||
this.IDCommitment = memKeys.subarray(32);
|
||||
static fromBytes(memKeys: Uint8Array): MembershipKey {
|
||||
const idKey = memKeys.subarray(0, 32);
|
||||
const idCommitment = memKeys.subarray(32);
|
||||
return new MembershipKey(idKey, idCommitment);
|
||||
}
|
||||
}
|
||||
|
||||
@ -163,7 +166,7 @@ export class RLNInstance {
|
||||
|
||||
generateMembershipKey(): MembershipKey {
|
||||
const memKeys = zerokitRLN.generateMembershipKey(this.zkRLN);
|
||||
return new MembershipKey(memKeys);
|
||||
return MembershipKey.fromBytes(memKeys);
|
||||
}
|
||||
|
||||
insertMember(idCommitment: Uint8Array): void {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user