Hacker News new | ask | show | jobs
by FractalParadigm 1803 days ago
Isn't that a large part of the open-source nature? Audit the code or hardware designs yourself, determine their trustworthiness from that. It's much harder to trust something when you can't examine the inner workings of it.
1 comments

Ok thanks, I get that. But how many people can do that? Like 0.001% of the population?
I think its fair to call it 0%. Auditing a large, modern code base is going to be impossible for a single person. For example, the Linux kernel is 27.8M lines of code (as of Jan 2020, [0]). Yes, a lot of that code is for drivers you wont use, or platforms you aren't running on. But still, no one person is going to be able to get through all of it with enough attention to detail to notice things like subtle race conditions, especially if they were inserted maliciously.

[0] https://www.phoronix.com/scan.php?page=news_item&px=Linux-Gi...

How many people can authenticate a dollar bill? How many people can validate a cryptographic signature? How many people can direct a blockbuster action movie?

The point is, right now, nobody can audit these things. Once someone -- anyone! -- can, everyone else can benefit.

There's also the matter of traceability.

Even if there is no direct audit of the code, once a vulnerability is discovered it can be traced back to the person(s) who introduced it.

With a closed system, only the owner of the source code history can do that. With open source, any person in the world can, and can start a discussion to understand whether it was malicious or not, if the person(s) should be banned from pushing code, new code security standards to be adopted, etc. You lean on the world's expertise at that point.

Bad things happen. It's important to have the ability to understand why and mitigate for the future.

Nope, it can be traced back to a random nickname on the Internet, using a computer somewhere in the globe.
That may be so, but it's usually been through code reviews, pull requests and whatnot - which means a maintainer somewhere has approved that code.

In any case, "a random nickname on the Internet, using a computer somewhere in the globe" is a lot more information than none.

Finding out that that's the case for a given project is part of traceability.

How do ensure it wasn't a malicious maintainer?

That information is meaningless if traces back to an empty room.

I guess you have never had commit rights to any Linux distribution or such?

You don't get commit rights as a random person, so yes, a commit can usually be traced back to a person. Sure, the committer could have received a patch from a unknown person, but then he's still responsible for the commit.

I guess you are a security expert that knows how every single FOSS project that might be used as dependency works.
>How many people can authenticate a dollar bill? [...] nobody can audit these things.

USGOV has a pretty comprehensive guide on how to validate them:

https://www.uscurrency.gov/sites/default/files/downloadable-...

There is also plenty of documentation and books to learn coding and start auditing if you want to.

Fake validation is less like coding as to catch a really well made fake you would need years of experience seeing all sorts of fakes , while coding needs only experience to see what is good code to able to catch most issues

> coding needs only experience to see what is good code to able to catch most issues

If that were true, the software industry would have a much smaller problem re: bugs and errors than they currently do.

Less bugs would be there if the industry wanted it and paid for it.

Sadly the problem is good enough is how the industry sees everything, constant cost cutting , off shoring or replacing senior talent with fresh graduates , inadequate focus on security, debt is all too common, unless/until something affects bottomline there is no pressure.

Please note the entire absence of the dollar bill from that document.
> Please note the entire absence of the dollar bill from that document.

A fair point. I took "dollar bill" to be the generic "US currency" rather than specifically "the $1 bill". But this page covers everything from $1 to $100 (although it seems the $1 and $2 have barely any.)

https://www.uscurrency.gov/denominations/