encryptWithPassphrase function
Stream<List<int> >
encryptWithPassphrase(
- Stream<
List< payload, {int> > - AgeRandom random = const AgeRandom(),
- PassphraseProvider passphraseProvider = const PassphraseProvider(),
- dynamic workFactor = -1,
Implementation
Stream<List<int>> encryptWithPassphrase(Stream<List<int>> payload,
{AgeRandom random = const AgeRandom(),
PassphraseProvider passphraseProvider = const PassphraseProvider(),
workFactor = -1}) async* {
_logger.fine('Encrypting to a passphrase');
final symmetricFileKey = random.bytes(16);
final stanza = await AgePlugin.passphraseStanzaCreate(
symmetricFileKey, random.bytes(16), passphraseProvider, workFactor);
final header = await AgeHeader.create([stanza], symmetricFileKey);
final payloadNonce = random.bytes(16);
yield (await header.serialize()).codeUnits;
yield [0x0a];
yield* _encryptPayload(payload,
symmetricFileKey: symmetricFileKey, payloadNonce: payloadNonce);
}