<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: cyphar</title><link>https://news.ycombinator.com/user?id=cyphar</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 07 Nov 2026 16:22:39 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=cyphar" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by cyphar in "Firecracker VM Escape: PwnEscape Part 2"]]></title><description><![CDATA[
<p>I would've thought that you could actually have an incredibly strict seccomp policy for the jailer which would require you to find an LPE in something like open(2), which seems unlikely even in the "agent swarm" era.</p>
]]></description><pubDate>Fri, 06 Nov 2026 22:23:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=50399308</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50399308</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50399308</guid></item><item><title><![CDATA[New comment by cyphar in "Alpine Linux Security Advisory: OpenSSH-server password authentication bypass"]]></title><description><![CDATA[
<p>No, I get that -- my first point was meant to allude to that but maybe it wasn't phrased particularly well. The bit about constant-time strcmp() was about comparing the hashes afterwards, which was a classic attack to extract the password hash for offline cracking (though salts probably make it untenable?).<p>In any case, the fact you need access to an existing hash to not select something stupid like DES is all due to crypt(3) being a wacky API and while callers could work around it by selecting more reasonable defaults it's a pretty big foot gun.</p>
]]></description><pubDate>Fri, 06 Nov 2026 02:47:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=50387524</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50387524</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50387524</guid></item><item><title><![CDATA[New comment by cyphar in "OpenSSH 10.6p2 has been released with a workaround for a critical vulnerability"]]></title><description><![CDATA[
<p>To be fair (as the sshole site mentions) it is also necessary to fake a password hash check to avoid timing side channels revealing to remote clients whether users exist, so returning a sentinel value is not a horrifically unreasonable solution to make sure even naive code does approximately the right thing.<p>Though I am surprised that all of the code examples do not use constant-time strcmp(). Actually, I wonder if even constant-time strncmp() would still leak information about whether the account is disabled because in that case both arguments are much shorter? Food for thought.<p>But yeah, the crypt(3) API is very 80s C, the man page even features a lengthy description of a long-deprecated and utterly broken hashing algorithm using <i>DES</i> that is even implied to be broken in the text itself (and the warning message is so old it refers to "parallel computers" as though they were a new concept). Given that the default mode is to use a broken hashing algorithm, I'm shocked anyone actually uses the libc crypt(3) -- surely it's trivial to just write your own that isn't awful...?</p>
]]></description><pubDate>Thu, 05 Nov 2026 16:33:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=50381179</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50381179</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50381179</guid></item><item><title><![CDATA[New comment by cyphar in "A new Go API for JSON"]]></title><description><![CDATA[
<p><i>> In theory wouldn’t atrophied coding skills not matter if models are sufficiently good at coding? I mean isn’t whats left just design and architecture and testing?</i><p>No, because good understanding of design comes from programming experience. Atrophied skills mean you lose touch with the actual nuts and bolts of what you are building.<p>This is also the worst kind of lock-in you can imagine, by outsourcing all of your understanding of a codebase and your skills you are now completely at the mercy of LLM providers. Even if you switch to open weight models you're at the mercy of graphics cards producers and scalpers.<p><i>> Sure, if LLMs are producing shit code you need to have an understanding of what it should do instead. But I think that day is already gone.</i><p>Maybe your standards are too low. By my standard, they still produce shit code and require lots of iterations to get reasonable designs (I often end up just rewriting the bits that are obviously wrong rather than trying to figure out how to "prompt engineer" the right output).<p>They do often produce <i>passable</i> code but my experience is the longer you spend reading the code the more things you find wrong with it, almost like an uncanny valley.<p>At least that's my experience with Opus and Fable. Maybe it's too old-fashioned at this point to complain about code quality, but I find it very strange how many people have started proclaiming that their code quality is good.</p>
]]></description><pubDate>Wed, 04 Nov 2026 22:34:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=50372431</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50372431</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50372431</guid></item><item><title><![CDATA[New comment by cyphar in "Molly (Signal fork) has not been updated since 3 months and is vulnerable"]]></title><description><![CDATA[
<p>Sure, I guess it's more a question of degree.<p>I still think the original point I was replying to ("don't stand out") doesn't apply to systems with "soft" anonymity like Signal. Even more importantly, arguing that specific features like custom servers or non-Firebase notifications are problematic because they "stand out" is particularly silly -- those features are the exact kind that are already fingerprintable by virtue of Signal's inbox design. Even if the social graph is somewhat anonymised, Signal does not attempt to hide that <i>you</i> are using Signal. (You could argue custom servers leak some data about your social graph but I'm not sure it is much worse than the theoretical leaks we spoke about earlier. And it's kinda notable that when Moxie argued against federated servers as a concept, that wasn't among the arguments he made.)</p>
]]></description><pubDate>Mon, 02 Nov 2026 13:58:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=50336878</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50336878</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50336878</guid></item><item><title><![CDATA[New comment by cyphar in "Molly (Signal fork) has not been updated since 3 months and is vulnerable"]]></title><description><![CDATA[
<p>I am aware of sealed sender, I even mentioned it in my comment. ;)<p>My point is that <i>by construction</i> they are not an <i>anonymity</i> tool, no centralised server can be. They can add features to make it <i>less easy</i> to track users but that's not the same as providing anonymity, and it's important to not confuse the two.<p>To give an example: my email provider has a feature to auto-encrypt all inbound emails to a PGP public key. Is this a nice feature to make it harder for someone to read my past emails if someone gets access to their infrastructure? Sure. Does this make my emails end-to-end encrypted? Absolutely not. In a similar vein, Signal making social graph correlation harder is a welcome feature but is not the same as making it anonymous.</p>
]]></description><pubDate>Sun, 01 Nov 2026 04:44:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=50322777</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50322777</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50322777</guid></item><item><title><![CDATA[New comment by cyphar in "Molly (Signal fork) has not been updated since 3 months and is vulnerable"]]></title><description><![CDATA[
<p>This argument doesn't make sense, Signal is fundamentally not an <i>anonymity</i> tool. It's a <i>privacy</i> tool.<p>They intentionally store very little data about their users but their "mailbox" model explicitly means that the server (or an attacker) can figure out who is talking to whom. And that's fine! Signal isn't trying to be an anonymity network, so while stuff like sealed sender are nice features it's important to remember that anonymity breaks are explicitly not part of the Signal threat model.<p>"Don't stand out" only makes sense as advice for anonymity tools to avoid bifurcating the anonymity set -- it doesn't make much sense when you're taking about a service which links your account to your phone number and thus every server request is explicitly identifying you.</p>
]]></description><pubDate>Sat, 31 Oct 2026 15:36:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=50317143</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50317143</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50317143</guid></item><item><title><![CDATA[New comment by cyphar in "The $6.3B Binance hack was pulled off in just 20 minutes"]]></title><description><![CDATA[
<p>The Bitcoin genesis block literally contains the message:<p><i>> The Times 03/Jan/2009 Chancellor on brink of second bailout for banks</i><p>I would've thought the implication was kind of obvious? And I'm not sure why you mention Dodd-Frank -- there were many bailouts throughout 2007-2010 and the point of Dodd-Frank was to put <i>an end</i> to that scheme.</p>
]]></description><pubDate>Sat, 31 Oct 2026 02:29:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=50312677</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50312677</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50312677</guid></item><item><title><![CDATA[New comment by cyphar in "Node2Shell evolves to HTTP2Shell, blast radius affects many HTTP libs and apps"]]></title><description><![CDATA[
<p>This has been the case for more than a decade, Heartbleed was probably the one which really created the trend.</p>
]]></description><pubDate>Sun, 25 Oct 2026 06:59:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=50229005</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50229005</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50229005</guid></item><item><title><![CDATA[New comment by cyphar in "eMudhra to exit global SSL/TLS certificate business"]]></title><description><![CDATA[
<p>Is it not obvious that not every global .com website owner wants to use only have the choice of US-run CAs (which can be subject to National Security Letters)? If you permit some other countries to certify .com then you're back to the same political question of which countries are allowed to run CAs.<p>It's also not at all a given that website owners would prefer the national CAs -- as an obvious example, most Rust projects (foo.rs) would probably not trust the Serbian CAs as much as they would LetsEncrypt. Even for website owners that live in the country, it seems possible that Chinese website owners might prefer to use non-Chinese CAs. And again, if the solution is to just special-case one American legal entity then we have just moved back to the original VeriSign-signs-everything model.<p>The real issue is that the CA model has been obviously broken since at least the days of the Comodo hack -- the trust decision for who can certify the website identity is made by the website owner but really clients are the ones that actually care (it's their data at the end of the day) and they have no input. Moxie had a proposal in 2011 to fix this by letting clients decide the policies for how a certificate should be trusted[1] and I think it is a far more workable solution than the alternatives. If one of the LetsEncrypt intermediates was compromised none of the alternative proposals would have any real hope of providing a workable mitigation.<p>[1]: <a href="https://en.wikipedia.org/wiki/Convergence_%28SSL%29" rel="nofollow">https://en.wikipedia.org/wiki/Convergence_%28SSL%29</a></p>
]]></description><pubDate>Fri, 23 Oct 2026 04:42:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=50204597</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50204597</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50204597</guid></item><item><title><![CDATA[New comment by cyphar in "eMudhra to exit global SSL/TLS certificate business"]]></title><description><![CDATA[
<p>I think Moxie's "convergence" proposal from ~2011[1] has the most benefits with the least downsides -- in particular I think he really pointed out the crux of the issue: the fact that servers decide who is trustworthy enough to certify their certificates and clients have no input into that decision is a broken model.<p>This incident was obviously comically bad but the Comodo hack had a more painful impact on the mitigation that should give everyone pause -- their CA had signed a quarter of the internet's certificates so the trust couldn't just be revoked.  Imagine one of the LetsEncrypt intermediates got compromised -- our mitigation strategies really cannot cope with that kind of disaster scenario. Browsers would be in the unenviable position where they'd be forced to make huge portions of the internet go dark for potentially months.<p>[1]: <a href="https://en.wikipedia.org/wiki/Convergence_(SSL)" rel="nofollow">https://en.wikipedia.org/wiki/Convergence_(SSL)</a></p>
]]></description><pubDate>Thu, 22 Oct 2026 23:41:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=50202638</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50202638</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50202638</guid></item><item><title><![CDATA[New comment by cyphar in "mitmproxy adds --emudhra option"]]></title><description><![CDATA[
<p>I wonder if more CPU cycles would be spent in the transporting and other ancillary operations (hashing and signing) than would be spent if they "brute-forced" it. Crazy.</p>
]]></description><pubDate>Thu, 22 Oct 2026 02:30:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=50190452</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50190452</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50190452</guid></item><item><title><![CDATA[New comment by cyphar in "PHP 8.2.35"]]></title><description><![CDATA[
<p>This issue with the "official" Docker images is the reason why (when I was still at SUSE) we switched to pushing releases ourselves to our own project and then eventually to our own registry.<p>This push for centralisation without the infrastructure to back it up has always been the most frustrating aspect of Docker Inc over the past >10 years I've worked on container runtimes.</p>
]]></description><pubDate>Thu, 22 Oct 2026 00:15:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=50189419</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50189419</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50189419</guid></item><item><title><![CDATA[New comment by cyphar in "Show HN: The Zelda timeline to catch up before the Ocarina of Time remake"]]></title><description><![CDATA[
<p>There is a 2003 interview with Shigeru Miyamoto that suggests an "enormous" timeline document existed since at least 2002 and they took it into account when writing Wind Waker if not earlier games[1]:<p><i>> Shigeru Miyamoto: For every Zelda game we tell a new story, but we actually have an enormous document that explains how the game relates to the others, and bind them together. But to be honest, they are not that important to us. We care more about developing the game system… give the player new challenges for every chapter that is born.</i><p>So I don't think this is as clear cut as "a different group of people decades later make a timeline". The least charitable view might be that they never intended the unified timeline thing to became public and didn't consider it "lore", but I'm not sure I buy that either (since they talked about some details in other interviews, including the Victorious/Fallen Hero split most people object to).<p>[1]: <a href="https://www.nintendoforums.com/articles/40/super-play-magazine-interviews-shigeru-miyamoto-about-zelda" rel="nofollow">https://www.nintendoforums.com/articles/40/super-play-magazi...</a></p>
]]></description><pubDate>Sun, 18 Oct 2026 19:33:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=50144508</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50144508</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50144508</guid></item><item><title><![CDATA[New comment by cyphar in "Show HN: The Zelda timeline to catch up before the Ocarina of Time remake"]]></title><description><![CDATA[
<p>The timeline was obviously not a planned aspect of the story originally and I personally don't find it particularly great storytelling <i>but</i> there is evidence in interviews of a timeline document existing internally since at least 2002[1] (where Shigeru Miyamoto explicitly said they <i>do</i> take it into consideration when writing the game's story but primarily focus on the games individually).<p>Maybe they did release the timeline because of fan pressure but some sort of timeline did exist for at least a decade before they released it which doesn't fit your theory they just came up with something and released it in secondary media because of fan pressure.<p>[1]: <a href="https://www.nintendoforums.com/articles/40/super-play-magazine-interviews-shigeru-miyamoto-about-zelda" rel="nofollow">https://www.nintendoforums.com/articles/40/super-play-magazi...</a></p>
]]></description><pubDate>Sun, 18 Oct 2026 19:28:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=50144436</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50144436</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50144436</guid></item><item><title><![CDATA[New comment by cyphar in "Show HN: The Zelda timeline to catch up before the Ocarina of Time remake"]]></title><description><![CDATA[
<p>While I agree in spirit and think that was true for most of the games when written, there has been an official timeline published by Nintendo[1,2] since 2011 (and the idea was apparently around internally since 2002).<p>I would be surprised if it did not have some impact on the writing of the games, though of course there is (as of yet) no explicit reference to the timeline in the games.<p>[1]: <a href="https://zelda.fandom.com/wiki/The_Legend_of_Zelda_timeline" rel="nofollow">https://zelda.fandom.com/wiki/The_Legend_of_Zelda_timeline</a>
[2]: <a href="https://zelda.nintendo.com/about/" rel="nofollow">https://zelda.nintendo.com/about/</a></p>
]]></description><pubDate>Sun, 18 Oct 2026 19:18:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=50144337</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50144337</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50144337</guid></item><item><title><![CDATA[New comment by cyphar in "Butlerian Jihad"]]></title><description><![CDATA[
<p><i>> The Bene Gesserit woman knew it was healthy because of her abilities, and upon investigation it was found that the hospital’s AI had been running a eugenics program.</i><p>The irony. Perhaps the Bene Gesserit were just trying to "pace the frontier" of the eugenics market? Who can say?</p>
]]></description><pubDate>Sat, 17 Oct 2026 13:54:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=50131204</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50131204</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50131204</guid></item><item><title><![CDATA[New comment by cyphar in "I never authorized an integration that scans my secrets"]]></title><description><![CDATA[
<p>By "batching" I was referring to whether they deduplicate requests -- if they do one HTTP request for every password then you get some extra information about how passwords are shared that you would have to infer otherwise.<p>If you know someone with N logins has N passwords it's a decent indication they use a password manager and so passwords are unlikely to be weak, if they have 1 password it's probably shared elsewhere and weak.<p>I also wasn't responding to a question asking about practical exploits, I was responding to a question that claimed the k-anonymity model is "provably anonymous" and "harmless". Since it clearly leaks some information it's definitely not the former and one could argue it's not the later though the "harm" is minimal.<p><i>> My browser fingerprint leaks, what, thousands of times more information than that - surely fixing applications like Chrome ...</i><p>I fail to see how the privacy nightmare of modern browsers is relevant to a discussion on whether opt-out signalling to third-party services is a reasonable stance for an open source project? By that metric no privacy bug is worth reporting because Chrome continues to exist. If only there was a term for this kind of non-sequitur...</p>
]]></description><pubDate>Sat, 17 Oct 2026 03:39:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=50127695</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50127695</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50127695</guid></item><item><title><![CDATA[New comment by cyphar in "I never authorized an integration that scans my secrets"]]></title><description><![CDATA[
<p>Depending on how it's batched, this tells HIBP (and any MITM -- even one that can only see ciphertext) roughly how many unique passwords you use. Knowing the 5-character hash prefix also cuts down brute force attacks by a factor of a million -- though in practice this is only a real issue if you use one of the compromised passwords (there's only a few hundred candidates per prefix), in which case you're kind of screwed already because they're probably in dictionaries anyway.<p>I don't think these are /critical/ issues and the latter is basically just an argument against the HIBP service, but the point is that a user should opt-in to sharing their data in cases like this so they have a chance to make an informed decision. The k-anonymity design of the HIBP service has a <i>degree</i> of anonymity, it's not "provably anonymous" like homomorphic encryption or similar schemes would be.</p>
]]></description><pubDate>Sat, 17 Oct 2026 02:40:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=50127362</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50127362</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50127362</guid></item><item><title><![CDATA[New comment by cyphar in "Claude reveals ECDSA curve origins"]]></title><description><![CDATA[
<p>Almost all of the smaller values of n are not valid curve values, so they were searching "harder" but just for valid seeds. If you look at the generator output in [1], you'll see that:<p>1. Only a very small number of <i>valid</i> seeds were discarded when compared to the number of n values. It seems we don't yet know why about half of the valid seeds were discarded but the explanation of a buggy curve validity checker doesn't seem implausible to me.<p>2. Directly to your point, most of the prime192 and prime239 curves required larger n values to find a valid seed and they are both smaller and used an earlier timestamp.<p>[1]: <a href="https://words.filippo.io/seeds-solved/" rel="nofollow">https://words.filippo.io/seeds-solved/</a></p>
]]></description><pubDate>Sat, 17 Oct 2026 00:24:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=50126545</link><dc:creator>cyphar</dc:creator><comments>https://news.ycombinator.com/item?id=50126545</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50126545</guid></item></channel></rss>