HNHacker News
TopNewBestAskShowJobs

wolfwyrd

168 karma · joined January 21, 2014

submissionscomments
wolfwyrd··on When random is not actually random enough
There is a series of blog posts[0] by Eric Lippert called "Fixing Random"[1] that starts at random and covers distributions, weights, noise and so much more. It's a fantastic deep dive into the subject.

[0] https://ericlippert.com/2019/01/31/fixing-random-part-1/

[1] https://ericlippert.com/tag/fixing_random/

wolfwyrd··on Travelers on Air Force One ordered to throw away gifts, phones after China trip
https://en.wikipedia.org/wiki/The_Thing_(listening_device)
wolfwyrd··on Jujutsu worktrees are convenient (2024)
Phil Haack has a neat script called tree-me[0] that takes a lot of the pain out of this in vanilla Git

[0] https://haacked.com/archive/2025/11/21/tree-me/

wolfwyrd··on Jujutsu (jj), a Git compatible VCS
Whatever I want because —amend is a thing?
wolfwyrd··on Ask HN: Video streaming is expensive yet YouTube "seems" to do it for free. How?
It's fiber interconnect between sites that is not actively visible to other people who are routing data around the world. Think of it as being pre-layed but not yet turned on/made available.

See: https://en.wikipedia.org/wiki/Dark_fibre

wolfwyrd··on Slack AI Training with Customer Data
The way it's written means this just isn't the case. They _MAY_ use it for what you have mentioned above. They explicitly say "...here are a few examples of improvements..." and "How Slack may use Customer Data" (emph mine). They also... may not? And use it for completely different things that can expose who knows what via prompt hacking.
wolfwyrd··on Barracuda urges replacing, not patching, its email security gateways
Shouldn’t[0] be able to. It’s all still fallible software written by humans.

[0] https://www.theregister.com/AMP/2022/06/02/conti_rasomware_i...

wolfwyrd··on The Rune Programming Language
This is a timing attack or timing oracle. Lets assume a mac represented in an array of 32 bytes. If we had a pseudocode method like:

    byte [32] (actualMac, expectedMac)
    for int x = 0..31
        if (actualMac[x] != expectedMac[x])
            return false;
        fi
    end
    return true;
We return false as soon as we hit an invalid byte in our calculated mac. If the time taken to execute one iteration of the loop is Y and the attacker is able to time this method accurately they will be able to tell what the value of actualMac is by feeding known inputs. They will know because the return time will be 2Y when they have bailed after the first byte. 3Y after the second, 4Y after the third etc.

This is why we should check the arrays in constant time - compare every byte in both arrays before returning. We do not return early so we can’t leak information

wolfwyrd··on Westinghouse sees a tech disrupter in its eVinci microreactor
If they're modular then they'll be intended to run more than one. You get the land, grid tie-in, permits and staff and then... stack 4 of these instead of 1. You use the same benefits from economies of scale to have as many of these as can be safely crammed into your building and go from there.
wolfwyrd··on Ask HN: What game do you wish existed?
Star Citizen
wolfwyrd··on Ask HN: What are some tools / libraries you built yourself?
I wrote a BDD style testing library. It builds on top of NUnit to make unit testing classes with dependencies super simple.

https://github.com/LeapingGorillaLTD/Testing

I was fed up of having to substitute every dependency manually whenever I wanted to write a test, finding it hard to apply clean software design principals to test suites.

wolfwyrd··on A regression is the kernel not giving the same result with the same user space
It's laid out further in the thread [1]. The key quote comes from Thorsten:

> All that afaics doesn't matter. If a new kernel breaks things for people > (that especially includes people that do not update their userland) > then it's a kernel regression, even if the root of the problem is in > usersland. Linus (CCed) said that often enough

[1] http://lkml.iu.edu/hypermail/linux/kernel/1710.3/02487.html

wolfwyrd··on Simple Techniques for Lowering the Cost of Zero-Energy Homes
This came from the Zero Energy Project[1] which also has floor plans.

[1] http://zeroenergyproject.org/2017/07/24/simple-techniques-lo...

wolfwyrd··on Anomalous keys in Tor relays [pdf]
https://news.ycombinator.com/item?id=14057955
wolfwyrd··on Show HN: “OK Google” – Explore Google Now voice commands
It's ok - it's made with <3
wolfwyrd··on Reality Check: Have Leave campaigners changed their minds?
They'll still get hit hardest. Weak pound means more expensive imports. UK imports ~40% of it's food [1]. That food will now cost more to import raising prices at the supermarkets. Poorer people spend a larger %'age of their income on essentials like food.

The weak pound means importing oil (priced in USD) will be more expensive. This will affect Petrol prices (we're already seeing a 2-3p rise at the pumps). Poorer people spend a larger %'age of their income on essentials like fuel.

There are a number of knock-on effects from the weak pound. Yes it's good for exports but overall it's going to be a rough couple of years for the already disadvantaged.

Speaking to your point on competition as well - if the UK wishes to join the EU free market they will most likely need to accept freedom of movement. No treaty has ever been agreed with any country without this caveat (that covers the Swiss, Norway etc). It's possible that the UK may be an exception but it's unlikely.

[1] http://www.foodsecurity.ac.uk/issue/uk.html

wolfwyrd··on How to Safely Store Your Users' Passwords in 2016
hmac.compare_digest is constant time whereas == will return as soon as a mismatch is found. The difference in return time can be measured. The key phrase is a Timing Attack[0].

[0]https://en.wikipedia.org/wiki/Timing_attack

wolfwyrd··on Around the World in 33 Keyboards
ALT+3. Dead easy right~
wolfwyrd··on The password hash Argon2, winner of PHC
Here's a discussion on that[0]. Depending on how you do it you either weaken it to the strength of the weakest algorithm or alternatively gain nothing but may introduce a weakness. It's basically a bad idea.

https://security.stackexchange.com/questions/93730/why-not-m... [0]

wolfwyrd··on Obama Signs CISA Bill into Law
Sadly not. The US courts have already ruled that data held in other data centres are fair game for a US warrant [1]. In this case the data is held in the EU (in Dublin, Ireland to be precise) and MS was found in contempt of court for failing to hand the data over [2]. They're still fighting this case now - over a year later - and it's currently in the 2nd Circuit Court of Appeals [3].

This means that the precedent is already set. If the company operates in the US and is served a warrant, the US Govt wants ALL of the data WHEREVER it's held.

I'm rooting for MS on this one and hope their appeal is upheld.

[1] http://www.theguardian.com/technology/2014/apr/29/us-court-m...

[2] http://www.zdnet.com/article/microsoft-refuses-to-hand-over-...

[3] http://www.techweekeurope.co.uk/e-regulation/microsoft-resis...

wolfwyrd··on We Looked for Work as a Software Development Team
Already in consideration for SO - http://meta.stackoverflow.com/questions/307513/the-power-of-...
wolfwyrd··on Windows Drops Bing in China for Baidu
Here's the paper[1] from the University of Toronto showing that the attack originated from the Great Firewall. Given the firewall is operated by the Ministry of Public Security that points the finger pretty clearly at the government. The way the attack was orchestrated implies however that Baidu was an unwitting victim.

[1]https://citizenlab.org/2015/04/chinas-great-cannon/

wolfwyrd··on 14-Year-Old Boy Arrested for Bringing Homemade Clock to School
More discussion here - https://news.ycombinator.com/item?id=10226196
wolfwyrd··on React Native: Initial Thoughts
By that reasoning PHP must be amazing
wolfwyrd··on Obtaining local IP addresses via WebRTC STUN requests
This can be blocked in Chrome with a Plug-In[1]

[1]https://chrome.google.com/webstore/detail/webrtc-block/nphkk...

wolfwyrd··on Google's Dart doesn't support deserialising JSON (or anything) into Dart Types
I think the point of the author wasn't that libraries are bad per sé, it's more that why should a library be needed for something that's core to the purpose of the language.
wolfwyrd··on Show HN: Cockpit – Self-hosted API-driven CMS. Manage content once
Have you got this up on GitHub? Sounds like something I'd enjoy contributing to
wolfwyrd··on An Introduction to Reactive Programming
Lee Campbell's book/site is a good place to start - http://introtorx.com/
wolfwyrd··on 24, the Monster, and quantum gravity
It's also 42 backwards. Important I feel
wolfwyrd··on Microsoft must release email data held on Dublin server to US court
With the ruling in and MS being forced to release data from a server on foreign soil, what does this mean for other providers? Anybody offer up a good replacement for AWS/S3 or Google Cloud that isn't run by a US company?
Page 1 of 2Next →