You can look through my comment history here, if you like, to see that I've been consistently banging the same drum at least since 2020, but unfortunately without connecting this profile to others I can't show you I've been on it for much longer. Internet evidence might go back as far as perhaps 2010, but before writing a word about it online I'd already had some years under my belt telling people in person that W's national security letters including a gag order was hideously wrong or that the DMCA and its exception list process was unacceptable on first amendment grounds. I assure you, regardless of who is being officially censored or "just" denied a platform or communication tool to which they would otherwise have claim but for the content of their speech, by any government or corporation in any nation in any decade, it is, was, and always will be wrong. It was even wrong to try to suppress ISIS recruitment drives, and if THAT doesn't convince you I'm principled about it I don't know what will. And again, I admit we're rare, but I tell not vanishingly so. In my real life circle I know two others and online several more. I think we're at LEAST as common as principled vegans.
HN user
kr99x
Not irrelevant. I'm responding directly to somebody saying people like me basically don't exist so that I am a data point. We do exist. We're rare, but not that rare.
Hello.
I would not trust any corporation (sometimes it's profitable to remove something so they retain control of some market) or government (sometimes it secures their power to keep people unaware of some facts about their actions) to only censor what is "truly" good for us to have censored. Why would anybody? The free exchange of ideas is a prerequisite for a just world. You cannot build one without it, because to build a just world you must change what is unjust. To change what is unjust, you must remove power from those who unjustly hold it. You can't do that if you can't communicate the injustice. If you place limits on the free exchange of ideas "just for this one really bad thing" then you have forfeited your own future ability to resist when a good and true idea is wrongfully labelled harmful by powerful and corrupt figures. Every single authoritarian regime in history has made speaking ill of the leadership a crime, because speech control is powerful. The power to ban information is too great to be entrusted to any authority at all. Depending on how thorough the "ban" (web text filter at the ISP level? mandatory AR implants at birth filtering banned content? worse?), it's anywhere from an abhorrent violation of human rights and the principles behind scientific inquiry all the way up through literally the most powerful weapon which could even theoretically be designed.
Must we burn this book? No. The answer is always no.
I am in favor of extremely strong free speech, legally and more importantly morally, because there is simply no acceptable alternative.
In my phrasing, 128k + 7 -> 81k + 5 for all positive integers k.
Pick a power of 3 n to be the coefficient for k on the right/reduced side, and then the left side will have at least one valid reducing form with coefficient power of 2 f(n) = ⌊n·log2(3)⌋+1. If there is more than one, they will have different constants. Each multiplication immediately has a division (you already got this part), and there must be a final division which is not immediately preceded by a multiplication because (3x + 1)/2 > x for all positive integers (that is, if you multiply once and then divide once, you will always be larger than just before those two things, so an "extra" division is needed to reduce). This means that there must always be at least one less multiplication than division, so the initial condition is one division and zero multiplications - the even case with n = 0. Then for n = 1 you need 2 divisions, which works because 2^2 > 3^1. Then for n = 2 you need 4 divisions, because 2^3 < 3^2 so 3 divisions is not enough. This is where f(n) comes in, to give you the next power of 2 to use/division count for a given n. When you do skip a power of 2, where f(n) jumps, you get an "extra" division, so at 16k + 3 -> 9k + 2 you are no longer "locked in" to only the one form, because there is now an "extra" division which could occur at any point in the sequence...
Except it can't, because you can't begin a reducing sequence with the complete form of a prior reducing sequence, or else it would "already reduce" before you finish operating on it, and it so happens that there's only one non-repeating option at n=2.
At n = 0, you just get D (division). At n = 1, you have an unsplittable M (multiply) D pair MD and an extra D. The extra D has to go at the end, so your only option is MDD. At n = 2, you appear to have three options for arranging your MD MD D and D: DMDMDD, MDDMDD, and MDMDDD. But DMDMDD starts with D so isn't valid, and MDDMDD starts with MDD so also isn't valid, leaving just MDMDDD.
At n = 3 there are finally 2 valid forms, 32k + 11 -> 27k + 10 and 32k + 23 -> 27k + 20, and you can trace the MD patterns yourself if you like by following from the k = 0 case.
The constants don't even actually matter to the approach. If there are enough 2^x k - > 3^y k forms when n goes off to infinity, which it sure looks like there are though I never proved my infinite sum converged, you have density 1 (which isn't enough to prove all numbers reduce) and this angle can't do any better.
I've been down that road, and it's unfortunately a dead end. You can generate an infinite number of reducing forms, each of which itself covers an infinite number of integers, like 4k + 5 → 3k + 4. Each one covers a fraction of the integers 1/(2^x) where x is the number of division steps in its reducing sequence (and the right hand side is always 3^y where y is the number of multiplying steps). You can't just make 1/2 + 1/4 + 1/8 and so on though (the easy path to full coverage) because sometimes the power of 3 overwhelms the power of 2. There is no 8k → 9k form, because that's not a reduction for all k, so you instead have to go with 16k → 9k. This leaves a "gap" in the coverage, 1/2 + 1/4 + 1/16th. Fortunately, when this happens, you start to be able to make multiple classes for the same x and y pair and "catch up" some, though slower. As an amateur I wrote a whole bunch about this only to eventually discover it doesn't matter - even if you reach 1/1th of the integers by generating these classes out to infinity, it doesn't work. An infinite set of density 1 implies a complementary set of density 0, but a set of density 0 doesn't have to be empty! There can still be finitely many non-reducing numbers which are not in any class, allowing for alternate cycles - you would only eliminate infinite growth as a disproof option.
Mind you, it's almost certain Collatz is true (generating these classes out to 3^20 nets you just over 99% coverage, and by 3^255 you get 99.9999999%) but this approach doesn't work to PROVE it.
There are indeed modern releases that live up to nostalgia for games of yore and they are... games that are incredibly similar to their predecessors. Game design has gone through a variety of eras and fashions and fads, and games "back then" (for whatever period you happen to be nostalgic for) were just built different. That doesn't necessarily mean better or worse, and maybe nostalgia is the reason people prefer games from the time period when their tastes were developing, but it's not just the games themselves. It's the way games operated.
I guarantee you that if Nintendo released "A Zelda in the mold of OoT but with a new set of dungeons and items and such" people who love OoT would go nuts for it. Look at what happened with Sonic Mania. For some reason, though, publishers/developers are very wary of doing this. Nintendo refuses to make a new Zelda that just reapplies the winning formula. Sega refuses to make Sonic Mania 2 - honestly, I was very pleasantly surprised they made the first one! I blame the late 2000s mantra of "innovation" and its presence/absence that seemed to be all the rage in critic circles.
UEFI is not a big bloat of closed source. UEFI is a spec that defines a newer, more feature-rich and easily-extensible way to boot than legacy BIOS. There is a common core, used by just about every single UEFI-based firmware out there, that is completely open source available here https://github.com/tianocore/edk2 and it's completely possible to ship a fully open UEFI system.
It happens to be the case that most organizations using UEFI-based firmware don't, and they keep everything beyond that core closed-source. This is not the fault of UEFI - those companies were closed source beforehand, and that trend continued. UEFI neither caused nor enabled them to be that way.
Now you may not want any of the things UEFI brings to the table, like GPT and booting to partitions larger than 2.2TB, or filepath based booting rather than sector based booting (or sector-booting into a boot manager and file booting from there). That's fine, but there's a difference between "X provides Y which I don't need" and "X causes Z which is bad" - UEFI causes almost none of the things people blame it for.
If you must blame UEFI for one thing, you can blame it for Secure Boot, as that wasn't (easily) possible with legacy BIOS. But neither is it mandated what keys it does or doesn't include, or even that it be implemented/enabled! UEFI has nothing to do with whether you should use Secure Boot - only that you can. The blame lies mostly with Microsoft for pushing so hard on vendors to ship with it enabled/locked/whatever.
Two "fun" examples:
1) System trying to boot would hang at seemingly random points. Could never be pinned down to a particular instruction, but could be caught doing it when stepping through with attached hardware debugger. It just wasn't consistent and never made any sense. Hang on an add. Hang on a call and never reach the first line of the thing being called. The hang would always be relatively late in the boot, but that's all that could be found.
Eventually I got it. It would hang the first time a timer interrupt triggered, which would only happen after that interrupt was enabled something like halfway into the boot.
Turns out there were disabled cores and the system was waiting trying to park those cores before servicing the interrupt, but they'd never respond/ack/say "I parked" and so we'd hang.
Disable the interrupt and there was no problem.
2) Operating in Cache-As-RAM mode early in boot, no "real" memory, just the L2 cache mapped as memory. Two valid/available address ranges could not both be written to. Writing to 0xA and then 0xB, or 0xB and then 0xA, would hang the system. Data being written didn't matter. Writes didn't need to be back to back. Just couldn't play nice.
Knowing it's a hardware problem spoils the fun of trying to debug that. Bad cache, couldn't properly convert addresses to cache lines, wrapped back on itself and panicked. Solution - move and resize "usable" cache region to exclude the overlapping ranges.
I'm "lucky" enough to deal with buggy hardware on a semi-regular basis (I start writing firmware before the hardware is finalized and run on prototypes), so I really do get bugs where the the input data and the logic are all completely correct and the hardware is at fault. You get to an add instruction with immediate data/no pointers, and somehow it gives you back bad data or hangs.
On the one hand, yay, not my fault! On the other hand, HELL to debug. On the worst hand, it dramatically increases my willingness to SAY it must be a hardware problem, which is not always the case!
I think there's lots of information that should be censored, and if I were made data czar of the world I would surely not be corrupt and do a diligent and thoughtful job removing only what must be removed for the good of the world.
But I would not trust any corporation (sometimes it's profitable to remove something so they retain control of some market) or government (sometimes it secures their power to keep people unaware of some facts about their actions) to do the same. Would you?
Voluntary removal of one's own information does not, in theory go against the free exchange of ideas, but it's a difficult path to follow. How do you grant removal powers to only the owner of something? If you hold a private key, that's easy enough to work something out. I am completely fine with somebody using a key to put something out there and later using the same key to remove it. It's theirs.
...but that's not always the case. If your information has been copied against your will in a way that removes that key (which is incredibly hard to prevent, see the "analog hole" problem in video DRM), you have to have some sort of central authority or master key to be able to remove it, and then you're again falling right back into trusting that central authority with the power to remove whatever they deem fit. What if the central authority decides you don't own the information and not to remove it? What if they claim ownership of something they want removed that isn't theirs?
It just doesn't work. Information removal is a superpower I do not trust any large organization to wield responsibly.
No, no information should ever be banned from any public/commons - the end. You want to ban certain information from a particular place you control? Go nuts. The wider public? No.
The power to ban information is too great to be entrusted to any authority at all. Depending on how thorough the "ban" (web text filter at the ISP level? mandatory AR implants at birth filtering banned content? worse?), it's anywhere from an abhorrent violation of human rights and the principles behind free exchange and scientific inquiry all the way up through literally the most powerful weapon which could even theoretically be designed.
This is not a road worth going down, for any amount of harm reduction. The cost today may be worth it. The cost long term is potentially too great to even consider risking. There is no guarantee of who holds the ban hammer tomorrow.
People saying that we should not bother colonizing Mars at all are clearly wrong. I can buy the argument that we should not yet do it, but come on.
The Earth will one day be dust, whether by astronomical disaster or by the sun's natural lifecycle moving to later stages. We live on the Earth. If we do not go elsewhere, we will be dust at that time. So for self-preservation, we'll need to go elsewhere eventually.
Mars is elsewhere, and is much easier to reach/terraform/colonize than say... Proxima Centauri B. Mars is a good "practice" shot at being elsewhere.
So obviously, we should go to Mars. It's just a question of when.
Firstly, this article and the discussions on this page are about Signal, it's hardly irrelevant. For the particular case of the company Signal, there are many actors claiming that censorship is needed. Signal for now disagrees, but even on this page you'll find people that support that. Just because the way Signal is implemented today resists the model doesn't mean that's a guarantee into the future.
Secondly, there is no reason we cannot have it both ways. A single communications company with content-neutral policies is helping the world more than one with content-sensitive policies. Two communications companies with content-neutral policies in competition with one another may be better yet, but that does not make Twitter choosing to censor its users the right thing for them to do. I have not said the government should tell Twitter what to do, only that they should choose not to censor because that makes the world a better place.
There is a growing contingent of people, especially younger people, who do not understand how free communication underlies the ability to make any change at all. Who do not see that creating the tools to censor conversations harms the future. They see immediate benefits in clamping down on this or that harm (temporarily ignoring that they're making themselves the arbiters of right and wrong and giving them the power to declare what is or is not a harm in the first place) but not grasping that they will not be in control of those tools in perpetuity.
You prove to still be misunderstanding. Firstly in that "Signal's Audience" is not a thing under contention - it's willing parties who are already both using Signal being prevented from using that tool to talk about [x] with one another. It's constraining communication by content once you've already granted someone the tools that is the problem.
Even so, I agree you have neither a constitutional nor a moral right to anything of Signal's in any case. And yet, the world would be a better place - for all people, Signal's staff and shareholders included - if they gave it freely. Nobody is obligated to spend their own time or effort to improve the world, but if we want the world to be a better place then somebody has to.
The more accessible unfettered communication is, the better the world is able to become. Full stop. Restrained communication is less capable of improving the world, because restrained communication is less capable of changing the world at all, because those invested in the status quo have incentive to restrain communication which could make change.
You are badly misunderstanding the situation. A world with 3 TV networks is a world of limited airtime, so of course people will not give their slots up freely for others. That is not the world we are in now. It costs no "space" to let messages of any kind go through your platform. It costs (nearly) no bandwidth. It is generally profitable. The only reason messages are being restricted is because those who control the platform don't like them. A TV network wouldn't give airtime to any old wacko because it was a limited resource. Signal choosing not to give use of their platform to somebody they don't like is categorically different.
Again I lament the falling respect for and understanding of free speech as a principle that helps us all. Only when communication between two willing parties is unhindered is it even possible to build a just world. The power to clamp down on voluntary communication is a power no authority should ever be trusted with, because there are no examples in the history of mankind where that power is only used for good - arguably there can be no such examples, what with power being a vector for corruption.
So you're okay giving someone else the power to declare something "a threat" and sacrificing your rights to neutralize it? China is perfectly happy to declare all kinds of opinions threats to their way of life and disallow them from being spread. What's different?
You are not thinking it through. An imperfect analogy to help make the point: You can't put a backdoor in encryption "just for the good guys" because there's no way to prevent that backdoor being used by other actors. Similarly, you can't put restrictions on speech "just for the really bad things" because there's no way to prevent things being labeled as "really bad things"!
I'm going to skip over defamation for now, both because I'm not a lawyer and because it's slightly more complicated. You can tell that's different because nobody preemptively censors defamation - it's a suit brought after-the-fact and then argued. Skipping it...
No. If "real danger Democracy can be lost" is your measuring stick, then whatever "Democracy" you have in charge is free to defend itself against any speech that may fight it. It's free license for the government to shoot down dissent and not reasonable.
Think of it this way. There is a lot of harmful speech which, in a perfect world, we could prevent. But because power corrupts, we cannot afford to give out the power to prevent speech because it is too easily abused. The benefit of preventing [harmful speech x] is not worth the cost of granting the government the power to jail you for speaking counter to what it believes is right.
You're thinking I'm upset specifically about reddit banning the group because that's the article I posted it on. That's sensible, and on me somewhat for not being quite clear enough.
I'm upset at the broader topics that are always brought up when articles like this are posted. I also have an opinion about what reddit should or shouldn't do, but the post you're responding to is not it.
I've been having this argument more and more lately. People keep coming around to "surely, we must prevent *THIS* content?" and every time the answer is no. Somehow, we seem to be forgetting how free speech benefits us all, but only when it is categorically FREE and there are not exceptions "just this one time"
Why just the other day, I had friends blow up on me for daring to suggest that a particular type of bigoted speech should remain legal.
The free exchange of ideas is a prerequisite for a just world. You cannot build one without it. If you place limits on the free exchange of ideas, "just for this one really bad kind of thing", then you have forfeited your own future ability to resist WHEN - not if, but WHEN - a good and true idea is wrongfully labelled harmful and banned by the same mechanisms.
Every single authoritarian regime in history has made speaking ill of the leadership a crime. Every last one.
No! God, I don't understand why people keep falling into this mindset. Do not hide/remove/censor/block/stop speech because of its content, ever, for any reason! Let all speak their piece, and let all hear what they choose to hear. There are a zillion and one reasons this is the right way to do things that people in first-world countries are forgetting.
Here's the easiest one to grasp: if you create the tools to suppress an idea and willingly let some party make use of them, then you have fulfilled all the preconditions for suppressing good ideas and true ideas except for "who holds the button" - but guess what? You can never guarantee button-holding status in the future! It is dangerous to enable, allow, or normalize speech suppression because you are doing the future bad guys' job for them in the process and making it easier to enact horrifying human rights abuses in the future.
I'll just repeat again what I've said a few times in comment sections on UEFI-related articles:
UEFI is not Secure Boot. Secure Boot is a feature that is implemented by UEFI-compliant systems these days, but UEFI systems originally shipped completely without the feature and it's still perfectly possible to do so.
Complaints about Secure Boot are generally valid complaints to have. Complaints about UEFI that are actually just complaints about Secure Boot are... just complaints about Secure Boot. Valid complaints about UEFI that are unrelated to Secure Boot are rare.
The three "biggest deals" here are all... a lot less important than they look. Clarifying info on all three:
"Did Intel get hacked?" I can't confirm the exact mechanism by which these files got out, but I do know that these files are things which get shared externally already with Intel's customers under NDA. If security in general is lax, that's one thing and future hacks of more sensitive stuff could be expected. If security in general is fine, but for some NDA customer sharing channel is lax, don't expect to see anything juicier.
"Intel123 is an awful password." Yes it is, but... it's not for security. Intel123 is the password used to bypass executable/script filtering systems that overzealous IT put in place to "protect" employees. Employee A wants to share a zip with employee B. There are many channels they can use to do this, because the contents of the zip are not encrypted or restricted. None of these channels require encryption, but either A or B doesn't like/understand them, so they agree on email. Whoops, the filter says that executable could be harmful and out it goes. Zip-via-email doesn't work. Unless... well, if they put a password on it, the filter doesn't catch it. Good. Problem solved. This is so common that the convention Intel123 arose and solidified for exactly this purpose.
"I see the word 'backdoor' in there!" Sure. Bad name choice. That's not the kind of backdoor you're thinking. There are a lot of things in the firmware that take this exact same form and don't use the word backdoor. It's a signal the low level firmware is keeping an eye out for, and if received, it will trigger some other piece of firmware to do some task in SMM. If that other piece of code takes input parameters and fails to verify them, then you may have a vulnerability on your hands - in fact, this was a very common kind of vulnerability before. Intel has fixed a lot of these over the years. Odds are they're mostly gone by now. If input parameters are verified (or none taken), the worst you could do is maybe a DoS by spamming that signal to keep the CPU clogged/stuck in SMM.
The number one (by a wide margin) reason for Intel123 is that somebody is trying to email a zip to somebody else, but a mandatory filter notices "bad files" (oh no, executables!) inside the zip and removes it to keep people "safe". So the zip gets a common, known password, and the recipient gets their files in peace. It's not a security measure at all. It's a workaround for braindead IT "solutions" hindering day-to-day operations. The files can be shared via any number non-encrypted channels just fine, but the particular employees trying to share happen to be most familiar with email and the filter doesn't know or care if there are secrets - there are EXECUTABLES! Those are dangerous, don't you know?
CloseR, yes. Close? No. For one, memory init code differs from product gen to product gen and pulls in platform/board specific libraries and inputs to set up some parameters. The bigger problem though is just how big and messy the memory init code is. It would take a substantial number of people a substantial amount of time to unwind and understand what's going on, let alone do a sane and/or clean-room implementation of it all.
FastBoot just caches a bunch of known things that your system was able to boot with and then doesn't bother re-initializing/re-training/re-discovering various bits and bobs in the hardware.
It's not taking away some 90% of what UEFI does - it's letting UEFI do its thing, writing down what was done for your hardware configuration and the location of your boot image, and then reusing exactly that again on each boot.
That's simple optimization - not a fundamental change to UEFI. Though it is good optimization which certainly could have been baked in from the start.
The intrusive parts that you see in a lot of firmware today fall into two categories.
One is like Intel ME. It supports use cases you as an end user do not give one single damn about and could easily do without, if given the option. Clean and remove as much as possible with no remorse.
The other is like SMM. Believe it or not, it's only accidentally the intrusive and insecure monster it has become. The point was exactly what it says on the tin. System Management Mode. The OS would ask the 'system' to do something it didn't know how to do, like change some power configuration in a laptop, and the firmware would handle it and then give control back. But these operations were delicate and needed to not be interrupted. And the hardware involved was delicate and needed to not be touched in the wrong way, lest the system hang or even fry. So it was locked away where the OS couldn't touch it. And then people started noticing they could use an untouchable special execution mode in other ways, and, well, here we are. The unfortunate thing is that because of how it started, you would feel some pain on most systems today trying to get rid of it. Your OS does not have drivers to change the CPU thermal characteristics properly and in accordance with silicon design (because the vendor did not develop one or make the information available to the outside world). So removing SMM will make many 'nice' features stop working. You may lose the ability to suspend and resume. Your power draw may be stuck too high or too low. It's possible on some systems you would be fine, but on others not so much.
Like the people demanding that graphics vendors provide open source drivers rather than binary blobs in the hope of making things better, really what's needed here is advocates pushing for the tasks performed in SMM today to be migrated to OS drivers, and from there to open source drivers.
You as a single tinker today aren't likely to get all this stuff working with the non-existent documentation.
Blame the silicon vendor for doing things in the most scary, back-door-ish way possible. UEFI didn't make them do that. The same crappy business practices that drive all bad proprietary software decisions did.
The only firmware code running after boot that UEFI mandates is not below ring 0 and is fully optional - called only if and when the OS asks for it. The UEFI runtime services table is not a kernel and is parked in ordinary memory waiting to be jumped to/called.
SMM is supported but not mandated, which is exactly how any hardware feature should be treated. Blame those enabling the SMM code you don't like. Or blame the hardware manufacturer for putting the feature in at all.
UEFI is not your enemy. Its only sin is being overly complicated, which is (somewhat) debatable given the complexity of systems and OSes needing to be bootable.
Patches existing for the firmware vulnerabilities of major manufacturers is good (I'll take your word for it, having not looked recently, but I know that a few years back this was not the case and known vulnerabilities could be found easily on shipping products).
The pathway from the patch existing to the patch being applied is overgrown with flammable brush. Infrequently traveled. Not healthy. There are efforts to fix this, but they don't have too much momentum at the moment.