Hacker News new | past | comments | ask | show | jobs | submit login

And potentially opens a whole new family of side channels.



I wish we could mix 'I don't care about side channels, use them all' with 'I'm paranoid about side channels, plug them all' on the same machine. Disable speculative execution on one core, no frequency adjustment, no prefetching, sr-io/pcie-bypass some devices... E-cores but for the side-channel-paranoid (in a good way).


Bring back EIEIO, like on Old Macs, but perhaps with a slightly expanded definition of what constitutes I/O:

    Enforce In-order Execution of I/O (EIEIO) is an assembly language
    instruction used on the PowerPC central processing unit (CPU) which
    prevents one memory or input/output (I/O) operation from starting until
    the previous memory or I/O operation completed. This instruction is needed ]
    as I/O controllers on the system bus require that accesses follow a
    particular order, while the CPU reorders accesses to optimize memory 
    bandwidth usage.


> EIEIO, like on Old Macs

This is what we should reserve Nobel prizes in computer science for


FARM is begging for a good backronym


You mean memory fences? The big architecture (x86, ARM, RISC-V) all contain instructions for them.


I mean permanently disable all speculative execution on a specific core and reduce/disable all side-channels of the kind. If you're saying I can do through injection of fence instructions between every instruction, coupled with isolcpus... I might have a fun weekend coming playing with Intel Pin. But I'm guessing the performance hit might be worse than 'just' disabling speculative execution on a core - if it was possible at all - or that the fence instructions might not be enough there? Haven't thought it through.

But it would be a fun question to ask the likes of Daniel Gruss...


Yep. Memory fences are a sniper rifle, EIEIO+ is a shotgun, and side channel attacks are a knife fight.


Host cores and guest cores.


Something like this, yes.


I mean nobody really believes there aren’t already countless side channels in existing hardware, right? No reason to give up performance for nothing.


Things are bad, so make no attempt to better or even avoid worsening them?


Yes! Having two architectures, one meant to securely run in a “zero trust” environment, and one meant to run at max speed while assuming inputs and code can be trusted (or will never have the opportunity to be executed such as in an airgapped environment) is reasonable. You can even combine the two and we do in practice, as seen with hardware security modules. At a grocery store you will see a lower security cash register with many functions and features connected to a higher security card reader that does a very small number of things.

An essential part of security is scoping. The door to the safe is higher security than the door to the bank. Speed & convenience & cost are paramount at the entrance to the bank, and security is paramount when it comes to securing the cash at the bank. We don’t act as though high security is always warranted when it comes to physical security so why would it be always be warranted when it comes to computer security? Sacrificing speed and convenience is willfully inflicting a denial of service on yourself, it’s only worth it if it’s less bad than the probable alternative.

Every personal computer sold has massive security flaws with only the most severe issues getting papered over and yet most people don’t have issues because the world isn’t actually all that hostile.


Anything can be made to sound wrong or right if you get abstract and vague enough.

We shouldn’t sacrifice something for nothing.


A considerable amount of effort goes into mitigating side channels precisely because it isn't for nothing.


The front door is already open. Let’s open the bedroom window if we want more fresh air there.


How about "One size doesn't fit all." ?




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: