PayloadEncryptor.fromLibp2pKey constructor
PayloadEncryptor.fromLibp2pKey(
- PrivateKey key
From a libp2p private key. Only a key that still holds its seed can be
used: dart-libp2p keeps it for keys built from a seed with
Ed25519PrivateKey.fromRawBytes, and not for others.
Implementation
factory PayloadEncryptor.fromLibp2pKey(libp2p.PrivateKey key) {
final Uint8List raw;
try {
raw = key.raw;
} on UnimplementedError {
throw StateError('the libp2p private key does not expose its seed; '
'build the PayloadEncryptor from the Ed25519 seed instead');
}
if (raw.length == 64) {
return PayloadEncryptor.fromEd25519Seed(Uint8List.sublistView(raw, 0, 32));
}
return PayloadEncryptor.fromEd25519Seed(raw);
}