blob: 322c899f8a5bc0aead1c33dfe31e35b931ae3c57 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
const CryptographyKey = require('../cryptography-key');
class X25519PublicKey extends CryptographyKey {
constructor(buf) {
if (buf.length !== 32) {
throw new Error('X25519 public keys must be 32 bytes long');
}
super(buf);
this.keyType = 'x25519';
this.publicKey = true;
}
/**
* @return {X25519PublicKey}
*/
static from() {
return new X25519PublicKey(Buffer.from(...arguments));
}
isX25519Key() {
return true;
}
isPublicKey() {
return true;
}
}
module.exports = X25519PublicKey;
|