News for hackers. Stuff that matters.
Re:Windows Recall sounds like a privacy nightmare by notaustinpowers on Wednesday May 22, 2024 @03:56PM (#40445595)
The fact that it ensures to not take a snapshot of DRM content but also explains that it doesn't hide PASSWORDS in snapshots is INSANE to me!

God forbid it takes a screenshot of Bridgerton but my bank account password, that's fair game!

Re:Windows Recall sounds like a privacy nightmare by dist-epoch on Wednesday May 22, 2024 @04:22PM (#40445947)
A bit like Linux, god forbid you were to read the syslog file, but your browser profile files are fair game for any running script/process.
Re:Windows Recall sounds like a privacy nightmare by nicolas_t on Wednesday May 22, 2024 @04:34PM (#40446139)
That’s why I actually welcomed the change in mac os that requires prompting to read certain directories like Documents

Historical unix permissions are not really aligned with desktop use of a single user

Re:Windows Recall sounds like a privacy nightmare by jwells89 on Wednesday May 22, 2024 @04:42PM (#40446247)
I wish it were possible to enable a stricter mode that uses something like filesystem overlays to help contain known-unruly software like Adobe Creative Suite. Under this mode, any attempted filesystem reads outside of ~/Library/Application Support/<appname> that aren’t explicitly approved by the user would simply return nothing, and eliminating all traces of the software would be as simple as deleting its respective FS layer/sparseimage/etc.
Re:Windows Recall sounds like a privacy nightmare by okanat on Wednesday May 22, 2024 @06:25PM (#40447459)
This is actually one of the features I like in Android. You can strictly limit where an app can access. They are tightening the screws with each release as well.

Only if the same limitations were applied for Google services...

Re:Windows Recall sounds like a privacy nightmare by TeMPOraL on Wednesday May 22, 2024 @06:42PM (#40447653)
I'm torn about this feature. The case you describe is helpful, but I mostly notice this feature when it's preventing me from snooping in application-specific folders of third party apps. I hate the feeling of knowing that a lot of data my phone is processing is completely invisible and inaccessible to me, the phone's purported owner.
Re:Windows Recall sounds like a privacy nightmare by nicolas_t on Thursday May 23, 2024 @12:50AM (#40450591)
Yes, any such feature should be bypassable by the owner. I hate that on phone they've decided that the owner doesn't have complete rights to their own system.
Re:Windows Recall sounds like a privacy nightmare by XorNot on Wednesday May 22, 2024 @08:42PM (#40448937)
This is what SELinux provides though, is the thing. What we've really messed up on with desktop is not getting this to a state where it's reasonably manageable.
Re:Windows Recall sounds like a privacy nightmare by raxxorraxor on Thursday May 23, 2024 @07:55AM (#40453575)
Problem is again that these screws also do apply to the user and smartphone OS are the worst role models I can think of.

Smartphone OS now are neither particularly secure, nor very useful considering the relative power of what the devices could do in theory.

Sure, there are ways around it, but to me the ecology of phone OS is disastrous enough, that I just don't bother with it aside for doing calls and using it as a mobile router. Even if it is a shitty router that could be so much better.

And no, I don't want an OS that gives me an advertiser ID and gaslights me that that is for my best. And no, I don't care that I can randomize it with a press, it is designed to ID you and at some point you will be too lazy to care about your quite shitty operating system.

Re:Windows Recall sounds like a privacy nightmare by dtx1 on Wednesday May 22, 2024 @07:30PM (#40448201)
Firejail
Re:Windows Recall sounds like a privacy nightmare by kalleboo on Thursday May 23, 2024 @02:01AM (#40451001)
This is kind of how sandboxed apps on the Mac work - they can only see files or directories that the user has manually opened in the app though one of the OS facilities (double-clicking a file, drag & drop, or the OS-provided file open dialog)

It would have been nice if you could just force non-sandboxed apps (basically anything from outside the Mac App Store) to be sandboxed.

Re:Windows Recall sounds like a privacy nightmare by orev on Wednesday May 22, 2024 @04:42PM (#40446253)
System log files have the potential to contain all kinds of sensitive data from all users of the system. Your own processes only have access to your own data.
Re:Windows Recall sounds like a privacy nightmare by dist-epoch on Wednesday May 22, 2024 @05:00PM (#40446487)
> Your own processes only have access to your own data

You meant your hacker's processes ...

Re:Windows Recall sounds like a privacy nightmare by Krssst on Wednesday May 22, 2024 @06:07PM (#40447290)
Isn't that just most desktop OSes with non-sandboxed processes?
Re:Windows Recall sounds like a privacy nightmare by hyperman1 on Wednesday May 22, 2024 @03:58PM (#40445630)
So you can have some privacy by playing DRMed content in the background?
Re:Windows Recall sounds like a privacy nightmare by notaustinpowers on Wednesday May 22, 2024 @04:03PM (#40445686)
I believe it operates on a site-by-site basis since there's settings to tell it to ignore screenshots of certain webpages (at least they're doing that). So one window is blacked out but the other is visible.

Just gotta remember to set up all the sites you want blocked which I expect to be made as complicated as possible and a little nag window on the bottom left every time I visit a blocked site, i.e., "Recall isn't able to take a snapshot of this webpage" with a big "FIX NOW" button.

Re:Windows Recall sounds like a privacy nightmare by out-of-ideas on Wednesday May 22, 2024 @04:20PM (#40445923)
its the sites that produce some javascript bloatwarae that tells the browser to display a blank page when a screenshot/screencapture software is used.

in my opionion that is giving the javascript ecosystem way too much power, though that is life with DRMs ... pretty sad times when folks pay providers and allow the providers to disable a screenshot lol

Re:Windows Recall sounds like a privacy nightmare by heavyset_go on Wednesday May 22, 2024 @06:16PM (#40447378)
It'll just block out the DRMed content and not the rest of the screen.
Re:Windows Recall sounds like a privacy nightmare by refulgentis on Wednesday May 22, 2024 @04:10PM (#40445781)
It's a built-in "feature" of the renderer/DRM they get "for free"

I used to work adjacent to screen capture at BigCo and advocated for enabling _some_ way to allow simple $STREAMING_VIDEO_PROVIDER screenshots. Turned out even with full source access and desire to prototype, you couldn't.

Air quotes mean "I hate this too", just posting to explain why the feature team would find ex. passwords capital H-hard versus DRM'd content.

Re:Windows Recall sounds like a privacy nightmare by wnevets on Wednesday May 22, 2024 @04:24PM (#40445975)
> It's a built-in "feature" of the renderer/DRM they get "for free"

This even happens with the iPhone, try taking a screenshot of netflix

Re:Windows Recall sounds like a privacy nightmare by AlexandrB on Wednesday May 22, 2024 @05:02PM (#40446506)
Sailing the high seas continues to have a better user experience than paying for content. I suspect most media DRM causes lots of annoyance for legitimate customers while barely impeding pirates.
Re:Windows Recall sounds like a privacy nightmare by jasonfarnon on Wednesday May 22, 2024 @07:24PM (#40448136)
This is true, I don't even really know what this fuss is about or even what this "DRM" thing is except it's something the .nfo file says has been removed
Re:Windows Recall sounds like a privacy nightmare by lcnPylGDnU4H9OF on Wednesday May 22, 2024 @04:02PM (#40445680)
I'm sure you agreed to give them a non-exclusive, world-wide, royalty-free, un-fuck-with-able license (or some such) to any data saved to your hard drive when you accepted the terms of use for Windows. /s

But now I'm curious if there's case law around the question of passwords being copyrighted. That might be a decent avenue of protection but the aforementioned agreement probably supersedes it.

Re:Windows Recall sounds like a privacy nightmare by notaustinpowers on Wednesday May 22, 2024 @04:06PM (#40445724)
From a quick search it doesn't look like they are, and there's no explicit law on who "owns" a password. Consensus right now is to operate under the assumption that the maker of the software is the owner of the password, not the user.
Re:Windows Recall sounds like a privacy nightmare by wormius on Wednesday May 22, 2024 @04:54PM (#40446404)
DRM on password forms, the next big thing
Re:Windows Recall sounds like a privacy nightmare by pojntfx on Wednesday May 22, 2024 @05:05PM (#40446541)
Already a thing on iOS/Android - banking apps have been blocking screenshots for a long time
Re:Windows Recall sounds like a privacy nightmare by Croftengea on Wednesday May 22, 2024 @06:25PM (#40447465)
You can't block a screenshot on iOS, can you?
Re:Windows Recall sounds like a privacy nightmare by Mindwipe on Thursday May 23, 2024 @05:53PM (#40460354)
You can't block one being taken but you can make it so the content isn't captured by the screenshot, and make the screenshot detectable, both of which are kernel level services provided by the OS or indeed even the hardware.
Re:Windows Recall sounds like a privacy nightmare by wmf on Wednesday May 22, 2024 @05:08PM (#40446574)
Technically, how would Windows know what's a password and what isn't?

Now I'm wondering if people have outrage over OBS and Zoom capturing passwords.

Re:Windows Recall sounds like a privacy nightmare by addandsubtract on Wednesday May 22, 2024 @06:05PM (#40447263)
Now that every app is an electron app, you can just look for type="password".
Re:Windows Recall sounds like a privacy nightmare by datenyan on Wednesday May 22, 2024 @06:23PM (#40447439)
God, the future really is stupid, isn't it?
Re:Windows Recall sounds like a privacy nightmare by max51 on Wednesday May 22, 2024 @06:51PM (#40447748)
it's probably going to get worse. Now that we have normalized using 2GB of ram for a text chat app because it's a bit easier to code, I bet it's only a matter of time before they go one abstraction level higher and start emulating an entire OS.
Re:Windows Recall sounds like a privacy nightmare by cyanydeez on Wednesday May 22, 2024 @07:51PM (#40448428)
I mean,, the snapdragon laptops are still emulations.
Re:Windows Recall sounds like a privacy nightmare by goalieca on Wednesday May 22, 2024 @09:42PM (#40449400)
emacs does the entire OS thing in 8MB
Re:Windows Recall sounds like a privacy nightmare by jwiz on Wednesday May 22, 2024 @10:26PM (#40449718)
Eight megs and constantly swapping
Re:Windows Recall sounds like a privacy nightmare by leshenka on Wednesday May 22, 2024 @06:55PM (#40447797)
It’s not like Windows Forms didn’t have password inputs
Re:Windows Recall sounds like a privacy nightmare by notaustinpowers on Wednesday May 22, 2024 @05:22PM (#40446756)
If it's using AI I'm sure they can train the model to identify the word "Password" in close proximity to a textbox.

OBS and Zoom are screen recorders, not utilizing AI. That's an oranges to apples comparison.

Re:Windows Recall sounds like a privacy nightmare by dylan604 on Wednesday May 22, 2024 @05:27PM (#40446808)
Since when was Zoom not using AI to create transcripts and all of other crap they've added to "stay relevant"?
Re:Windows Recall sounds like a privacy nightmare by nerdponx on Wednesday May 22, 2024 @05:55PM (#40447160)
Usually people don't type in passwords in a way that's visible Zoom calls. Most password fields obscure their content.
Re:Windows Recall sounds like a privacy nightmare by walterbell on Wednesday May 22, 2024 @08:01PM (#40448560)
> Most password field obscure their content

iOS device unlock password field _magnifies_ content as visible plaintext.

Re:Windows Recall sounds like a privacy nightmare by prmoustache on Thursday May 23, 2024 @09:01AM (#40454173)
But they keep the sound on while typing it on their keyboards.
Re:Windows Recall sounds like a privacy nightmare by nerdponx on Thursday May 23, 2024 @09:43AM (#40454637)
That requires a little more effort than an employee casually browsing training data and jotting down passwords on a notepad.
Re:Windows Recall sounds like a privacy nightmare by notaustinpowers on Wednesday May 22, 2024 @05:30PM (#40446838)
It may just be an audio model then, not a visual model.
Re:Windows Recall sounds like a privacy nightmare by brian_herman on Wednesday May 22, 2024 @08:45PM (#40448969)
Usually the text will be stars or something you can also train on that or exclude them based on type of text box
Re:Windows Recall sounds like a privacy nightmare by adolph on Wednesday May 22, 2024 @09:12PM (#40449191)
Lotus Notes for the win:

  * The hieroglyphics on the left of the dialog box are supposed to distract anyone who is peering over your shoulder trying to learn your password as you type.

  * The number of characters you type is hidden; a random number of X's appear instead of one asterisk per character.
https://blog.codinghorror.com/the-dramatic-password-reveal/
Re:Windows Recall sounds like a privacy nightmare by caseyy on Wednesday May 22, 2024 @07:05PM (#40447914)
Well, it could capture only content of programs that ask to be captured, while they do.

Web browsers could not ask to be captured when sensitive content is on screen (perhaps the web server could communicate that in headers). So could code editors and other production software that deals with trade secrets and confidential information. As well as any government and armed forces, medical, legal and similar software.

SharePoint supports sensitivity labels for documents. These labels are synced to the device through OneDrive if my memory serves right. I think that could be (if it’s not already) extended to non-SharePoint documents. If an application deals with these documents, it could also not ask to be captured at that time.

Capturing for Recall should be opt-in per program, so no legacy software leaks info.

Even with visual captures, look at what Discord, Zoom and even PlayStation live streaming and captures do - they simply block out the parts of the UI that could contain sensitive info.

But bigger cross-program Windows API feature adoptions have been achieved, like dynamic DPI scaling, DirectX, multitouch support, UWP and similar.

They could do it, if they wanted to. But I think right now it may all be a half-baked executive idea. It will evolve into something though… there is an opportunity to do it right.

Re:Windows Recall sounds like a privacy nightmare by shadowgovt on Wednesday May 22, 2024 @07:22PM (#40448106)
Indeed, it already won't capture Edge's equivalent to Incognito Mode because the OS already knows what that signal is shaped like. But there isn't an equivalent, general "This window should be private" OS-level signal because none was ever needed before.
Re:Windows Recall sounds like a privacy nightmare by Rumudiez on Wednesday May 22, 2024 @07:40PM (#40448326)
try the native screen recording feature on iOS if you have an iPhone or iPad. go log into some website or app. the recording will show the keyboard come up, keypress animations, and the characters being entered into the username/email field, but when you focus the password field all of that disappears. I was surprised when I first saw it, but it totally works
Re:Windows Recall sounds like a privacy nightmare by walterbell on Wednesday May 22, 2024 @08:00PM (#40448541)
Could that be used to prevent iOS on-screen display of magnified plaintext characters, during passcode entry for device unlock?
Re:Windows Recall sounds like a privacy nightmare by orhmeh09 on Wednesday May 22, 2024 @05:14PM (#40446647)
Local AI and/or OCR?
Re:Windows Recall sounds like a privacy nightmare by runjake on Wednesday May 22, 2024 @05:36PM (#40446914)
It makes one wonder who the real Windows customer is.
Re:Windows Recall sounds like a privacy nightmare by amlib on Wednesday May 22, 2024 @05:54PM (#40447148)
All proprietary systems have been protecting the system from the user for a good while now. It's what they mean when they say "the system is more secure". It's not for your security, it's for securing their interests and their partners interests.
Re:Windows Recall sounds like a privacy nightmare by runjake on Wednesday May 22, 2024 @05:57PM (#40447181)
That was my implication, yes.
Re:Windows Recall sounds like a privacy nightmare by amlib on Wednesday May 22, 2024 @06:03PM (#40447250)
I was expanding on your comment, I'm sorry if I sounded a bit harsh and dry :(
Re:Windows Recall sounds like a privacy nightmare by cyanydeez on Wednesday May 22, 2024 @07:50PM (#40448420)
The Business unit. This stuff will be sold as WorkFromHomeWare.
Re:Windows Recall sounds like a privacy nightmare by api on Wednesday May 22, 2024 @06:01PM (#40447221)
Microsoft’s primary customers have been businesses and government for decades. This includes PC OEMs. You usually have little to no relationship with them.

A company grows toward its customers like a plant grows toward light.

Re:Windows Recall sounds like a privacy nightmare by PhasmaFelis on Wednesday May 22, 2024 @05:40PM (#40446974)
Haha, wow, I hadn't realized they'd finally moved ahead with blocking screenshots on my own computer. Anyone know what level that's happening at and how hard it is to circumvent?

The article says that the DRM block is "reassuring on the surface, but it's still far too vague for anyone to actually have any faith in it." I disagree--it's not reassuring on any level whatsoever.

Re:Windows Recall sounds like a privacy nightmare by derefr on Wednesday May 22, 2024 @06:19PM (#40447402)
When you play a video, you're (usually) sending the encoded video to the GPU for hardware-accelerated decode. The resulting decoded frames then live purely on the GPU.

However, rather than each video frame being decoded into a distinct VRAM texture with its own manipulable GPU handle, with hardware-accelerated decode, you just tell the GPU to allocate a single buffer — a mutable canvas, or "draw context" — and then tell it that, as the chunks of your encoded video stream are being played, decoded, and rasterized into frames by the GPU, the GPU should be writing each successive frame it's generating into this buffer.

In this setup, the only thing you can get a GPU handle for (besides the encoded video stream) is that buffer. That buffer is special, being the target of the GPU's own asynchronous hardware-accelerated rendering process; so that buffer is referred to as a "hardware-accelerated draw context."

(These days GPUs have enough VRAM that you really could get away with dumping each frame out to its own immutable VRAM texture buffer; but back in the early '90s when hardware-accelerated video decode was first invented, reusing a single buffer [or maybe a pair of them] for decoding was a practical necessity. Hardware-accelerated draw contexts have been core to how GPUs work since there were GPUs.)

In general, the GPU doesn't allow you to read directly from the VRAM backing a hardware-accelerated draw context (because doing so could block the GPU from writing to it, and also because doing so wouldn't get you a coherent single frame's state out.) The GPU locks that VRAM up and considers it to be "its to use" for as long as the draw context is the target of a hardware-accelerated pipeline. So the GPU will ignore any attempt to use any existing handle you had to the VRAM backing the draw context; only the handle to the wrapping draw-context ADT will work, and that handle doesn't have "read from" as part of its command-set.

So how does such a draw context even end up on the screen, then?

When a desktop window compositor sets up the GPU to display your windows, it takes various draw-contexts — some of which may be hardware-accelerated — and lays them out in 3D space, with a (usually orthographic) projection. The GPU itself is then told to take care of the rest (the final toplevel "get this scene out and onto a screen" part) internally. There's never a point under normal GPU rendering, where your entire screen-contents are rendered out to a single (externally-addressable) VRAM texture.

What happens when you take a screenshot, then? Usually, the compositor is pinged to ask it to render that screenshot; and it does so by allocating a screen-sized VRAM buffer, and then taking each GPU handle in turn and telling the GPU to copy the VRAM underlying that buffer, into the target buffer. But oh no — HW-accel draw-contexts don't have exposed VRAM handles!

It used to be (until... Windows Vista, I think?) that hardware-accelerated draw contexts in general (like videos being played using hardware decoding, or like 3D games) just weren't ever captured in screenshots, DRM or no. This was purely a question of GPU performance: a GPU with an architecture that could snapshot a frame of an HW-accel context, wouldn't perform as well as a GPU with an architecture that couldn't.

When this ability was later added, it was done so by adding a feature to the GPU: a command was added on HW-accel draw contexts, that would prompt them to stop whatever rendering is happening into the buffer for a moment, at a coherent point; to snapshot that coherent state of the internal VRAM state, copying it over into a non-HW-accelerated buffer; and to then get the accelerated rendering going again. The compositor therefore now had the ability to ask the such draw-contexts for such snapshots, to then be re-copied out into a WIP screenshot.

But I emphasize "ask" here — you really are just asking the GPU to do it. The GPU can always just refuse! (OSes had to support GPUs refusing to do it, because many GPUs were old enough that they couldn't manage to do it, even given updated drivers that allowed software to ask the GPU the question; even given newer firmware pushed to the GPU by said drivers.)

So DRMed video was implemented simply by telling the GPU that there are some HW-accel draw-contexts that are special, and so the GPU should refuse any requests to snapshot them. (And also, telling the GPU that the encoded video itself is also special — so the GPU should taint any draw-contexts it decodes that video onto with the same specialness.)

I believe that DRMed video streams get decrypted on the CPU before being sent to the GPU. So while you can't capture a screenshot of the decoded frame, you could in theory capture the (encoded) video in RAM. Sadly, that RAM is protected by the OS and the decoding happens using Intel SGX or something. So it's impossible to "get in under" the OS to grab the encoded video, either. (Unless you compile a custom kernel... but that's why these extensions have an in-kernel component that doesn't ship with the Windows or macOS DDKs, and why Linux doesn't even get DRMed-video support except in proprietary spins.)

Re:Windows Recall sounds like a privacy nightmare by threecheese on Wednesday May 22, 2024 @08:24PM (#40448801)
If I thought it would be appropriate, there’d be a :hands-clapping: emoji here thanking you for that infodump (and the reply). That’s a great and useful explanation that’s easily modeled mentally. (“easily” lol)
Re:Windows Recall sounds like a privacy nightmare by derefr on Wednesday May 22, 2024 @07:00PM (#40447853)
A bonus tangent:

> there's never a point under normal rendering where your entire screen-contents are flattened into a single (externally-addressable) VRAM texture.

...although there used to be, back at the dawn of GPUs. The first "3D acceleration cards" didn't do any 2D drawing — and so PCs would actually have distinct 2D and 3D video cards!

The oldest 2D video cards for PCs, were just persistent framebuffers — their "VRAM" being just for what was on the screen. They relied on the OS to find anything that had been uncovered, and tell the app to repaint it.

But the last and greatest 2D video cards, from before 3D took over, were masters of copying memory around. Each frame, they'd be doing all of these huge accelerated rectangular blits of windows and their controls — some VRAM-to-VRAM, some from main memory using DMA — to bake down a VRAM buffer. They were hardware-accelerated 2D compositors, and they were great at it.

When early 3D cards came along, all that changed at first, was that your OS would tell your 2D card that there was a certain region it was to avoid drawing anything on. The 2D card would leave a black rectangle there.

The 2D card would render and rasterize its VRAM to VGA — and the 3D accelerator card would then be passed this same VGA signal, along a cable, as if it was a display. It would mostly just repeat everything it saw. But when the signal hit the timings for where those black rectangles should appear, then it would instead emit its rendering of the 3D content. (In other words: early 3D cards were https://en.wikipedia.org/wiki/Genlock cards!)

A "hardware-accelerated draw context", in this very early conception of the term, was precisely the geometry, defined by your OS, that your 2D card knew to not bother to draw; which was also the geometry that your 3D card knew was its to draw on.

2D and 3D video cards later merged, and at first you just got one card that did both of these things, as separate phases, with the bridging now internal. But the concept of an HW-accel context lived on.

But later on, actual "GPUs" emerged — in the form of 3D hardware that was now sorta-okay at doing VRAM-to-VRAM copies, and also provided legacy VGA BIOS emulation. So people ditched their 2D cards.

But this change actually kind of sucked, because it meant that all the per-frame 2D blitting (which, again, GPUs were just barely passable at) was now contending for GPU time with 3D stuff. And modern OSes had grown highly dependent on being able to do lots of 2D blitting each frame.

This was why "full-screen mode" was, for the longest time, the way to get the best 3D performance out of a GPU, even at the same display resolution. If you tell the GPU that you want to cover the entire screen with a 3D hardware-accelerated draw context... then it will realize that it'd be pointless to keep drawing the "2D world", and so it will stop spending its time each frame doing 2D VRAM copies to render the 2D-composited layer. It takes the whole OS window-drawing VRAM-copy command-queue out of the loop.

(And also — once there was OS support for this — switching to full-screen mode would also cause the GPU to flush out all the VRAM textures for rendered windows, fonts, icons, etc — giving a 3D app or game far more VRAM to work with. Coming out of full-screen mode would likewise ping the OS to reload all the system brushes and textures into VRAM; and then ping all the running apps to redraw themselves.)

Re:Windows Recall sounds like a privacy nightmare by metalcrow on Wednesday May 22, 2024 @09:42PM (#40449404)
This is a really awesome write up, thank you!

Question, what stops you from modifying the GPU driver to make it so the command to set a draw-context to be DRM'd is a no-op? That way the gpu would happily let you snapshot the context, and the OS would be none the wiser. Or is gpu driver tampering something nvidia explicitly designs against?

EDIT: oh wait, i bet the driver is signed and the OS checks it and only allows DRM content to play if the driver is signed by nvidia. That would make sense.

Re:Windows Recall sounds like a privacy nightmare by Mindwipe on Thursday May 23, 2024 @05:51PM (#40460332)
Correct.
Re:Windows Recall sounds like a privacy nightmare by lostmsu on Thursday May 23, 2024 @01:13AM (#40450699)
I think at least the last bit is incorrect: DRM protected video is still often decoded by a hardware decoder built into GPU.

I am also in doubt about the claim that there's never a single VRAM texture that contains the entire desktop, because while I see potential ways for GPU during sending frame to the monitor to assemble said frame on the fly, it sounds implausible vs just reading it from a premade buffer.

Re:Windows Recall sounds like a privacy nightmare by derefr on Thursday May 23, 2024 @02:41PM (#40458281)
> I think at least the last bit is incorrect: DRM protected video is still often decoded by a hardware decoder built into GPU.

I misspoke, sorry — the last paragraph is meant to say that the CPU "decrypts", not "decodes", the video (inside the Intel SGX enclave.)

> I am also in doubt about the claim that there's never a single VRAM texture that contains the entire desktop

Some GPUs do work this way internally, but my phrasing was specific — even when such a VRAM texture buffer exists, it's not addressible outside the CPU itself. You can't get a handle to it. (And even if you could, it'd just be another HW-accel draw context — and so would be DRM-tainted if-and-when any buffer being copied onto it is considered tainted.)

But why wouldn't you want a GPU work this way? What's the advantage of not having some kind of "final screen buffer"?

It mostly comes down to a quirk of history. Movies are 24FPS, while computer CRTs were mostly designed for 60Hz refresh rates (with no support for 24Hz modes.) And when people see "hardware-accelerated video playback" as a feature on the box of a video card, one of the primary things that people expect that to mean, is that you should be able to play back your 24FPS movie on the 60Hz display. In windowed mode. With the desktop being refreshed behind the 24Hz movie. Smoothly.

If videos were mostly 30FPS, this would be easy, because 30Hz divides 60Hz; each video frame could just be copied to the 60Hz "final screen buffer" twice with the same content. But 24Hz doesn't cleanly divide 60Hz — you'd need each video frame to appear for 2.5 "final screen buffers." (And just doing that naively — that's called 2-2-3 rendering — is very stuttery.)

If you're doing this by trying to render out a "final screen buffer" VRAM texture in lockstep with your display frequency, all in advance of sending that texture down the pipe to the display, then for each frame, you need to complete that rendering pass with enough time left to communicate it to the display. But what happens when it takes a really long time to send the signal down the wire, leaving you only a little time each frame to actually render everything? In fact, what happens when the display is analogue — like a CRT — where the timing of sending the data down the wire is directly related to the timing of drawing?

Well, certainly, you can pipeline this final rendering — i.e. make everything show up one frame behind, so that you can work on each frame for an extra entire frame-time. But gamers won't like you messing with their draw-contexts that way. And gamers are the core audience for your product.

And also, that still doesn't let you render the video in windowed mode "smoothly." It just means that you have now have slightly less than one full frame-time, each frame, to do the concurrent work of decoding... 2.5 (or some even worse multiple) frames of video, and then doing something with them to squeeze it down to one frame.

And also, how should an active hw-accel video-decode draw context react to the OS changing the display resolution to one that uses a different frequency? Or worse — though not invented at the time — to a Variable Refresh Rate monitor, that can be arbitrarily sent frames using FreeSync?

What the GPU vendors decided to do to make this work, was to require one of two things — either:

1. that the algorithm of the video codec directly support decoding of a fractional frame position; or

2. that the creator of the draw-context pass it a VRAM buffer with enough space for not just one, but several (usually specifically three) full extracted frames. This buffer gets used as a ring buffer, with each new frame becoming a source texture; and these frames are then interpolated together (with some GPUs offering fancy motion-interpolations, and others just doing a linear interpolation) according to the fractional time-between-frames that the timing for the center of the dest draw context lands on.

In either case, the goal was to make the video-decode process something that could be demand-driven — where at any point the GPU could say "I'm at the point where I'm drawing the video; give me what the video should look like now" — and get a result that cleanly maps to the frame the video lands on.

The whole toplevel render pass of early GPUs was designed to operate this way, with final VRAM buffers being "copied" not back into VRAM, but directly into the ring-buffer of the display protocol encoder; and with any final hw-accel passes — like interpolations — generating their output directly into that same display-protocol-encoder ring-buffer. (Or, in the modern day, executing the final compute shader that outputs video tiles only one line-of-tiles at a time, on a vastly sub-frame frequency, as signals like "scanlines matching tiles T50..T80 coming up, get them rendered so they can be read from" are sent by the DPE.)

This decoupled and demand-driven final copy to the DPE, has some interesting properties; it means that you can actually have two or more display-protocol encoders, rendering the same screen, or different parts of the screen — without that implying the need for a lowest-common-multiple frequency. In fact, GPUs are not only happy with multiple displays plugged into them at once — they're happy with those displays even when they have no supported refresh rates in common!

(This is in contrast to the old 2D video cards, which did operate on a single global base frame-raster clock. This meant that 2D video cards were always either single-headed, or only supported a set of monitors all running at the same refresh rate. And if anything wanted to draw to the screen at a different rate, it had to be full-screen, with all the heads switching to that rate.)

Re:Windows Recall sounds like a privacy nightmare by derefr on Friday May 24, 2024 @02:39PM (#40469184)
I forgot to mention the best part — a trick that modern GPUs can only pull off because of how they feed their DPEs:

Take a modern computer with a modern GPU, and plug the GPU into one 75Hz monitor and one 60Hz monitor. In your OS, arrange the resulting displays to be aligned horizontally. Start an (HW-accelerated) video playing. Now, place that video so it straddles the boundary between the two screens.

When you do this, each DPE will actually be demanding frames from the video draw-context on a different schedule; and so each DPE will actually be getting a snapshot copy of (its slice of) that buffer using a different time-weighted interpolation of two frames! But the result will look perfectly smooth and synchronized!

This synchronization would literally not be possible if the HW draw-context wasn't being snapshotted using each DPE's current rasterization/wire-encoding clock as an input.

The input required for this could — in theory, at least — be synthesized in a pure-functional manner internal to the GPU's compute, by having a final VRAM-to-VRAM copy that is done by a compute-shader with some extra logic to map each pixel position to a simulated DPE's raster-clock time.

But just having a DPE that really does things that way — keeping a physical raster-cycle clock, a "narrow" (much smaller than screen-sized) ring-buffer, and a demand circuit that issues fill orders for the GPU to write lines or tiles into the ring buffer according to the clock — is cheaper even than not synchronizing at all; let alone to doing synchronization through extra VRAM (for the mastering buffer, and for a per-pixel draw-context centroid UV texture) + an extra compute-shader pass with a virtual raster clock.

Re:Windows Recall sounds like a privacy nightmare by leshenka on Thursday May 23, 2024 @06:49AM (#40453056)
> telling the GPU [...] draw-contexts that are special

but who's telling it? Is it a driver? And if so, can a driver be made that just doesn't do it?

Re:Windows Recall sounds like a privacy nightmare by Mindwipe on Thursday May 23, 2024 @05:50PM (#40460327)
> but who's telling it? Is it a driver? And if so, can a driver be made that just doesn't do it?

Yes, but then Microsoft haven't signed the driver, and it won't have the correct hardware root of trust to decode the key, so it will fail and the service will fallback to a less secure mechanism which is why services will normally limit the resolution of the content delivered via those mechanisms to 720p or less.

Re:Windows Recall sounds like a privacy nightmare by KETHERCORTEX on Thursday May 23, 2024 @03:42PM (#40459011)
> So while you can't capture a screenshot of the decoded frame, you could in theory capture the (encoded) video in RAM.

There was a simpler technique. Open a second video player, then screenshot to your heart's content. Windows hardware acceleration for video had only one gpu thread or something like that, I don't remember the exact details.

Re:Windows Recall sounds like a privacy nightmare by madeofpalk on Wednesday May 22, 2024 @05:44PM (#40447014)
Operating systems have been doing this for... 10-15 years?
Re:Windows Recall sounds like a privacy nightmare by jasonfarnon on Wednesday May 22, 2024 @07:22PM (#40448107)
10-15 years ago was windows 7
Re:Windows Recall sounds like a privacy nightmare by kalleboo on Thursday May 23, 2024 @12:50AM (#40450592)
> Haha, wow, I hadn't realized they'd finally moved ahead with blocking screenshots on my own computer

Windows has been doing this since Vista, 17 years ago https://en.wikipedia.org/wiki/Protected_Media_Path

Re:Windows Recall sounds like a privacy nightmare by madeofpalk on Wednesday May 22, 2024 @05:43PM (#40447008)
I don't think it's that insane.

Print screen already doesn't work with DRMed content, so why would this be any different. On the other hand, how can you guarantee that it won't capture passwords? Even the passwords you enter into Firefox in a web page after clicking the "show password" button?

Re:Windows Recall sounds like a privacy nightmare by tedajax on Wednesday May 22, 2024 @05:45PM (#40447031)
Yeah but a screenshot is an explicit action by the user where they have the opportunity to curate what is captured. That is not the case when it's just going on in the background.
Re:Windows Recall sounds like a privacy nightmare by madeofpalk on Wednesday May 22, 2024 @06:49PM (#40447725)
What about Window's built in "Capture last 5 minutes" screen recording, as a part of their gaming features? Or the same feature that's just enabled from the nvidia drivers?
Re:Windows Recall sounds like a privacy nightmare by klabb3 on Wednesday May 22, 2024 @07:36PM (#40448279)
Also an explicit action. Look, most people don’t know anything about computers. If it says use recommended settings, they will go for it. Even an explanatory first-install screen with “consent” is just jumbo jumbo to regular folks. It’s not comparable to installing custom software or enabling a feature from the settings. It’s incredibly irresponsible.

Even so, such invasive features need to renew consent and/or periodically alert users. The risks with someone else enabling them to spy are too high.

Re:Windows Recall sounds like a privacy nightmare by diob on Wednesday May 22, 2024 @05:47PM (#40447060)
Reminds me of those serious warnings at the beginning of movies, like pirating is the worst sin imaginable in the world. They'll find you!

Oh but crimes affecting the common folk? That's too hard, sorry.

Re:Windows Recall sounds like a privacy nightmare by orangepanda on Wednesday May 22, 2024 @06:58PM (#40447832)
With the added irony, that the warnings are shown only to people who paid to see the movie
Re:Windows Recall sounds like a privacy nightmare by Antip0dean on Wednesday May 22, 2024 @07:28PM (#40448180)
I remember when DVDs started asking your language... so they could threaten you in that language. What a (profit-driven) world...
Re:Windows Recall sounds like a privacy nightmare by tomkarho on Thursday May 23, 2024 @07:56AM (#40453581)
You wouldn't recall a car
Re:Windows Recall sounds like a privacy nightmare by II2II on Wednesday May 22, 2024 @06:58PM (#40447828)
> The fact that it ensures to not take a snapshot of DRM content but also explains that it doesn't hide PASSWORDS in snapshots is INSANE to me!

The article gives the impression that passwords will only be captured if they are displayed. So there are only three scenarios where I can envision this happening: the end user opens a document that contains their passwords, the end user opens their password manager and chooses to display their passwords, or the user chooses to reveal the password field.

Case 1 is bad practice, plain and simple. (Though I will acknowledge that people do it.)

Case 2 and case 3 can probably be fixed, provided the software doesn't define custom controls, since there is already the option to protect DRM content. Microsoft should have provided this functionality and given developers time to adopt it (not doing so is a bad move on their part).

On the whole I think this is just trying to rush things to market, rather than the product of any form of malice.

That being said, I am glad that I don't use Windows outside of the work environment. Something also tells me that my employer is also likely to disable this feature. (They have more to loose from a data breach of confidential data than they have to gain from tracking employee computer usage.)

Re:Windows Recall sounds like a privacy nightmare by Const-me on Wednesday May 22, 2024 @07:47PM (#40448390)
> there is already the option to protect DRM content

I never needed to use that option. Still, based on what I read in the documentation about Windows graphics programming, I believe that option is only applicable to video, and is prohibitively complicated to use for a password manager. Read that article https://learn.microsoft.com/en-us/windows/win32/medfound/pmp... you can’t even play DRM video from your own process, it requires a special OS component called Protected Media Path, and that process can’t run arbitrary code only components signed by Microsoft which means you can't generate DRM-ed video frames from something else with your own code.

Re:Windows Recall sounds like a privacy nightmare by tracker1 on Friday May 24, 2024 @12:00PM (#40467477)
The problem with the last example (show password in manager) are sites and applications that don't let you copy/paste a password. I've literally fought against those kinds of requirements as weakening security, not strengthening it.
Re:Windows Recall sounds like a privacy nightmare by NotSammyHagar on Wednesday May 22, 2024 @07:17PM (#40448056)
Trust me, bro.

Windows keeps adding these anti-consumer features, ads, and other things. And people keep using it??? I used to work there and I can't believe they keep doing this stuff.

Re:Windows Recall sounds like a privacy nightmare by cyanydeez on Wednesday May 22, 2024 @07:54PM (#40448465)
Windows is a business and school launchpad. If universities started putting Linux on everything, you might see some change, but from what I can tell, these features are for business concerns which are increasingly invasive.
Re:Windows Recall sounds like a privacy nightmare by labrador on Wednesday May 22, 2024 @07:25PM (#40448144)
Solution? : make your desktop background a screenshot from a NetFlix movie
Re:Windows Recall sounds like a privacy nightmare by digdugdirk on Wednesday May 22, 2024 @08:06PM (#40448596)
Malicious compliance is the best compliance.
Re:Windows Recall sounds like a privacy nightmare by phreack on Wednesday May 22, 2024 @10:34PM (#40449770)
Sooner or later only people who wear shirts with big brand logos and constantly sing music from the Beatles will be the only ones not permanently recorded by the system. Hell, add a photo of a topless woman somewhere in the mix and bam, instant privacy.
Re:Windows Recall sounds like a privacy nightmare by troad on Thursday May 23, 2024 @12:47AM (#40450569)
I've always been kind of interested in that idea. I'm not sure what to call it - a sort of civil resistance by selective non-palatability. Preventing commercial AI from being trained on your art by making sure there's some throbbing hard cocks in there somewhere, for example, or releasing source code that is explicitly NOT open source licensed, for the benefit of people who don't care about the license, and to the detriment of entities that do.
Re:Windows Recall sounds like a privacy nightmare by mkl on Wednesday May 22, 2024 @10:37PM (#40449790)
That won't do anything. Desktop images are not protected by DRM, and it's (at least mostly) not visible anyway if you're using the computer.
Re:Windows Recall sounds like a privacy nightmare by labrador on Wednesday May 22, 2024 @11:31PM (#40450172)
I have a wide monitor. I could have a Netflix movie playing in a side browser window when I want privacy. It'll be fun to mess with it.
Re:Windows Recall sounds like a privacy nightmare by mkl on Thursday May 23, 2024 @12:45AM (#40450559)
I expect it would just blank out the movie window in the screenshots, leaving the rest visible. The way to get privacy is to turn it off or use another OS.
Re:Windows Recall sounds like a privacy nightmare by paledot on Thursday May 23, 2024 @07:36AM (#40453415)
The only way is to use another OS. There are way too many other privacy leaks, many of which can't be turned off at all.
Re:Windows Recall sounds like a privacy nightmare by labrador on Thursday May 23, 2024 @11:19AM (#40455804)
recall could come in handy as long as it has a "start record" and "stop record" button with an indicator like a red light when it is recording
Re:Windows Recall sounds like a privacy nightmare by Hikikomori on Wednesday May 22, 2024 @08:48PM (#40448992)
Nah your password shows as asterisks.
Re:Windows Recall sounds like a privacy nightmare by boston_clone on Thursday May 23, 2024 @12:13PM (#40456555)
No, it doesn't -

"Note that Recall does not perform content moderation. It will not hide information such as passwords or financial account numbers. That data may be in snapshots that are stored on your device, especially when sites do not follow standard internet protocols like cloaking password entry."

https://support.microsoft.com/en-us/windows/privacy-and-cont...

Re:Windows Recall sounds like a privacy nightmare by Hikikomori on Friday May 24, 2024 @03:19PM (#40469590)
hunter2
Re:Windows Recall sounds like a privacy nightmare by ls612 on Thursday May 23, 2024 @01:10AM (#40450686)
You will own nothing and you will be happy… or else
Re:Windows Recall sounds like a privacy nightmare by raxxorraxor on Thursday May 23, 2024 @07:42AM (#40453463)
Aside from the very questionable direction Windows is going, with features nobody ever asked for (nope, businesses did not do so either), I believe this is heavily illegal in my country without a very active and clear consent of the user.

I wouldn't want such a feature in a 1000 years and I cannot see the supposed "casual user" that would profit from this.

Re:Windows Recall sounds like a privacy nightmare by N19PEDL2 on Friday May 24, 2024 @05:36AM (#40464476)
Are you from Germany?
Re:Windows Recall sounds like a privacy nightmare by rldjbpin on Thursday May 23, 2024 @08:14AM (#40453763)
to be fair there is a mechanism for preventing drm content to be captured down to hardware level. it is much more trickier to implement a way to recognize sensitive info on the screen visually.

but the incentives are of course not aligned in consumer's favour.