/// <inheritdoc cref="DisposableBase.ThrowIfDisposed"/> /// <inheritdoc cref="ThrowIfNotInitialized"/> public async Task <IDecryptedBytesMarshaler> RevealDecryptedBytesAsync() { ThrowIfNotInitialized(); ThrowIfDisposed(); var decryptedBytes = _encryptedBytes.CopyToNewArray(); await _protector.UnprotectAsync(decryptedBytes).ConfigureAwait(false); return(new DecryptedBytesMarshaler(decryptedBytes)); }