OpenBSD Moving Towards Signed Packages — Based On D. J. Bernstein Crypto 232
ConstantineM writes "It's official: 'we are moving towards signed packages,' says Theo de Raadt on the misc@ mailing list. This is shortly after a new utility, signify, was committed into the base tree. The reason a new utility had to be written in the first place is that gnupg is too big to fit on the floppy discs, which are still a supported installation medium for OpenBSD. Signatures are based on the Ed25519 public-key signature system from D. J. Bernstein and co., and his public domain code once again appears in the base tree of OpenBSD, only a few weeks after some other DJB inventions made it into the nearby OpenSSH as well."
Very surprised that it took this long (Score:5, Insightful)
Re:Very surprised that it took this long (Score:5, Insightful)
Re: (Score:2)
But they likely want to keep it being just ONE floppy.
Not bloat it like NetBSD which require TWO floppies.
(FreeBSD seem to be even worse! ..)
Re: (Score:2)
You think that's bad, try Kings Quest 5, the last version offered on floppy disk. Shit's ridiculous, and then one of the floppies goes bad.
Re: (Score:3)
Nah. the floppy discs work just fine. I remember getting them with cereal boxes in the mid to late 90s. You could do about anything other then fold them in half and they would still work for a while. After about 20 uses, you needed another though.
http://en.wikipedia.org/wiki/Chex_Quest [wikipedia.org]
Here is an example. I think they were made of cardboard but some were made out of the plastic like what you would see on a floppy cutting board. Usually they were part of the box and you needed to cut them out in order to use
Re: (Score:2)
I thought "disc" was how people from Montreal spelled "disk".
Live and learn.
Or maybe I'm thinking of "disque"
Either way, floppy disks? Really?
Re: (Score:2, Informative)
Re: (Score:3)
disc = cd/dvd/... ... (disc in a box, if you want so)
disk = hard disk, floppy disk,
Re: (Score:2)
3 kilometres of air
I'm sorry, that is not something that the average American will understand. Next time, write "3.2 Kilometers of air" and we can translate it with "2 Statute Miles of air" :)
Re: (Score:2)
Re: (Score:2)
That's backwards.
"Disc" is a non-trademarkable dictionary word for any round, flat object.
"Disk" is a shortened form of "Diskette", which was an IBM trademark for 8" floppy disks (and later their 5.25" and 3.5" descendants).
Re: (Score:2)
Re: (Score:2, Interesting)
OpenBSD is security by arrogance: nobody cares much to pay any attention to it, and anyone who comes with good intentions gets shouted down.
Distributing unsigned packages in 2014 shows such a lack of concern for even the most basic risks facing administrators and end users that I can only assume it was intentional.
Re:Very surprised that it took this long (Score:5, Informative)
Wrong. Using binary package is just considered not the right way to do things, in OpenBSD land.
What you do is, check out the source repository, which does make sure the data you get hasn't been tampered with, then build it from source.
For mass deployments, you can then create binary packages from the result (secure distribution to other machines is your job, however. although that typically isn't much of a concern since it usually happens on the local network.
IOW, your comment is pure BS.
Re:Very surprised that it took this long (Score:4, Insightful)
And how exactly do you get the OS and compilers to build the source code with?
Re: (Score:2)
Re: (Score:2)
I fail to see why a BIOS would use the kernel of a general-purpose operating system.
Nevertheless that is what coreboot [coreboot.org] does. It used to be known as LinuxBIOS.
Re: (Score:2)
Coreboot doesn't use linux at all. Coreboot just initalises hardware, then loads a payload from ROM. That payload can be a Legacy BIOS service provider (SeaBIOS), an EFI environment (TianoCore), a bootloader (U-Boot, GRUB2), a Linux kernel, or pretty much any x86 code that does not require any BIOS/EFI services present.
Re: (Score:2)
Re: (Score:3)
What you do is, check out the source repository, which does make sure the data you get hasn't been tampered with, then build it from source.
Actually, it doesn't. OpenBSD is still using CVS for revision control. After the FreeBSD cluster compromise a couple of years ago, we found that the CVS repository was the one thing whose integrity we could not verify. The current FreeBSD CVS repository was created by exporting from subversion (which could be verified) and validating it against git (which also can be verified).
Oh, and OpenBSD does recommend getting the binary packages over using ports (but they don't release security fixes for binary
Re: (Score:2)
Re: (Score:2)
Reading the OpenBSD FAQ, it in fact seems to recommend using binary packages, unsigned, transmitted over an insecure channel, which, frankly is retarded and should be fixed, unless signify is really really near.
Re: (Score:2)
What the heck? What you say makes sense, but it's wrong.
Looking closer, the FAQ is wrong here.
A "package" is defined as a binary executable, and a "port" is defined as the source (using OpenBSD's terminology).
Yes. This is about who builds the package, though. It's a bit vague terminology, but for my purposes, 'using a port' means building it yourself and installing the resulting package, while 'using a binary package' means fetching the prebuilt package from somewhere else.
With this out of the way..
And, I quote, http://www.openbsd.org/faq/faq15.html#PkgVsPorts [openbsd.org]
"In general, you are highly advised to use packages over building an application from ports.
Well frankly I have no idea why there's such utter BS in the FAQ.
It essentially tells us we're ``highly advised'' to fetch unsigned tarballs over plaintext ftp, when the alterna
Re: (Score:2)
Can you give some better reason than 'everyone does it'?
Why exactly would you prefer an insecure transmission channel over a reasonably secure one, for the software you install? How does that even remotely fit the OpenBSD mindset?
Even for the kernel itself, it is highly recommended for non-developers to only run the binary snapshots.
This sounds just as stupid, and I'm tempted to believe it's only recommended to raise the signal-to-noise in crash reports. Crash dumps from custom kernels are harder to analyze for other developers than if the ge
Re: (Score:2)
(besides, that's not that much more secure, since the ports tree itself isn't signed, either).
Checking out the ports tree via cvs+ssh means i can be reasonably sure that i get in fact the right thing, including distfile hashes.
So yeah, it is much more secure.
As for the ``but it's so hard to compile ports'' argument, i have to admit i was only infering from what I'm used to from Net- and FreeBSD.
So, what exactly is the big deal with compiling ports on OpenBSD? Now i'm honestly curious.
Re: (Score:2)
Try something new for a change: Think for yourself *gasp*, and explain why exactly the FAQ encourages this, and the security implications of it.
Re: (Score:2)
Re:Very surprised that it took this long (Score:4, Insightful)
So, do you have a timeline for when other *BSD and Linux distributions switched to signed packages? It looks to me that FreeBSD only started that move at the end of October, and doesn't appear to be there yet. I don't think I would call that a "crushing" lead.
There wouldn't happen to be some trolling going on with your post, is there? Especially the "security by arrogance" bit?
Thu Oct 31 02:10:33 UTC 2013 [freebsd.org]
Pkg 1.2 will be released in the coming month which will bring many
improvements including officially signed packages. FreeBSD 10's pkg
bootstrap now also supports signed pkg(8) installation.
Re:Very surprised that it took this long (Score:5, Informative)
Majority of Linux installations use RPM or APT, and those had GPG signing since ~2005.
Re: (Score:2)
Majority of Linux installations use RPM or APT, and those had GPG signing since ~2005.
Actually, Red Hat's RPM usage included gpg signing of each of the packages individually since before 2000 :)
Debian has had it for a while (Score:4, Informative)
I'm not as familiary with RedHat or SuSe archives, but I did a little digging over at debian.org.
The debian-archive-keyring package changelog shows an initial release on 10 January 2006, or eight years ago.
Digging deeper, the devscripts changelog shows the signchanges program (now called debsign) was added in July 1999. The changelog entry implies that it was to aid an already existing signing system, so Debian has had it for about 15 years, possibly longer.
Now consider that Debian has a reputation as a late adopter.
Re: (Score:2)
Debian don't sign the binary packages directly (they do sign source packages but that is more as a conviniance to users who get a source package from somewhere other than the repo). Both the upload and download sides of things are now protected by GPG signatures but the two systems are seperate and one is much newer than the other
The "upload" (developer--->repo) side of things is secured by a signature on the "changes" file which describes the upload. The changes file in turn contains secure hashes* of t
Re: (Score:2)
FreeBSD systems traditionally built their own packages from the ports tree. The shipped packages are really just the ones that go on the install media, which are typically out of date by the time you get around to installing it. With the new pkg(7) infrastructure, we are properly supporting binary packages and part of the requirement for this was that we'd sign them and distribute the keys out of band. The signing keys are currently distributed using freebsd-update, which was designed to do binary update
Posting by arrogance? (Score:2)
A lot of people use ports instead of packages. Packages are seen as the convenient alternative that is the inflexible and insecure way to install things.
Re: (Score:2)
It doesnt have to be secure, nobody uses openbsd outright.
It exists solely for the purpose of begging for donations while at the same time letting big corporations take its code and include in their products without giving back.
Re: (Score:2)
I don't know, surely de Raadt has a reputation, but those guys have done a great thing in general. Having that attitude is what helps getting stuff done most of the time instead of happy hand holding, we are all good friends kind of attitude. Not signing packages and not wanting to use gnupg is kind of absurd, but I have seen weirdest attitudes in the free software world, like sticking with Vi instead of quick edit and easier tools like nano, or this whole thing about gnu info vs man pages.
I have been using
Re: (Score:2)
Comment removed (Score:5, Interesting)
Re: (Score:2)
Re:Very surprised that it took this long (Score:5, Insightful)
Theo is the same that he's been for the last 20 years, on the one hand he's militant about the BSD license which gives away all the code to multi-billion corporations then a giant crybaby when the same corporations take the code and give him nothing but a cold shoulder in return. Oddly enough he's managed to gather a small following which barely keeps OpenBSD alive, usually by threatening to shut down OpenSSH development which is their only true success but this is neither the first nor the last time he's making such ultimatums.
If Linus is the benevolent dictator for life, Theo is the not-so-benevolent dictator for life. He started OpenBSD so he could run the show and any oppositition is harshly cut down. Don't argue with him about how the project's managed, what costs are necessary, everything is as Theo has decided it should be and he's only complaining that nobody is willing to fund his masterpiece. Your input is not wanted, just your wallet and he treats everyone from the smallest individual contributor to giant corporations the same. He's got balls of steel and an ego the size of a planet, but in the end he'll always be going around with a beggar's cup.
Re: (Score:2)
Actually, for the comments, one has to go pretty deep, so here it is [marc.info]
Yeah, I too think that OS won't be around too long, so it will be down to FreeBSD and NetBSD. On the Linux side of things, even distros like Debian have discontinued support for things like HP PA-RISC, which is less ancient than VAX. FreeBSD has dropped support for DEC Alpha. That's what not just companies, but even volunteer organizations do when a platform is no longer in circulation. Yet that rack had a number of ancient boxes like
Re: (Score:2)
I'm surprised that this wasn't implemented a long time ago. Even Windows has had signed code for quiet some time.
Having code signed by a central CA seems to be again what OpenBSD and FreeBSD are trying to do. They don't want to play god and gate keeper. They held off as long as they could to see if a new distributed public key system could have came out. Unfortunately, a new public key system has not come out and the security benefit is too grate, even if against their ideology.
First thought upon seeing the headline: (Score:5, Funny)
What does openBSD have to do with tattooing your Johnson?
Re: (Score:2)
They don't have much of a budget for advertising.
Re: (Score:3)
That's why it has to fit on a floppy.
Floppy disks? (Score:3, Interesting)
Being limited by floppy disk support requirement sounds like a bad joke. Is that really relevant for any computer which is not hopelessly antiquated in 2014? For reference, Apple stopped shipping floppy disk drives by default in 1998.
Re: (Score:3, Insightful)
And when you want to use a hopelessly antiquated computer for something, OpenBSD will be there for you.
Re: (Score:2)
Re: (Score:2)
Well, I haven't followed the discussion, but I do know that one of OpenBSD's major markets is basically semi-embedded systems: Firewalls and routers. It's likely they won't have much in the way of external storage attachment, or much in the way of internal storage at all. Given that, it might make sense. I don't know.
Re:Floppy disks? (Score:5, Insightful)
No, it won't make much sense even with that in mind. Even less, in fact.
Embedded systems are usually factory-installed. In the factory, they don't do the installs via floppies. Most OpenBSD installs today are done off their (very good!) CD-ROM media, or maybe even more, by USB.
Floppy disks are used for a tiny percentage of installs (yes, even of *their* installs). Alright, they don't want to dump very old architectures that are known to work and have no other acceptable bood medium, but in the end... Basing the entire OS in the least common denominator takes a toll on the general usability of the system in everyday settings.
Re: (Score:2)
I said semi-embedded for a reason: I'm more thinking of hobiest/custom firewalls and routers. The ones from the factory tend to run a version of Linux or PFSense - But you can get similar devices from manufacturers without an OS that you can install your own OS onto.
Not that I'm sure I disagree with you. Just trying to think of a rational reason and give them the benefit of the doubt. However hard that is.
Re: (Score:3)
Re: (Score:2)
As far as OpenBSD is concerned, "the general usability of the system in everyday settings" is the bottom priority.
No, in fact the lack of general usability is a goal OpenBSD strives for.
Be grateful they aren't still using punched paper tape for installs.
Re: (Score:2)
Re:Floppy disks? (Score:5, Informative)
In a recent interview I can't find right now, Theo gave a perfectly good reason for this insane legacy support: OpenBSD is a volunteer project, and some of the most valuable contributors want this stuff to remain. Dumping the legacy systems would most likely mean losing those contributors. If they are important enough to the project, then the legacy support is the price it pays to keep them around.
Re: (Score:2)
Re: (Score:2)
Why are you making it then? Out of the dozen machines I've put *bsd on there is only one that had a floppy disk drive. I installed via USB on that one just like all the others.
1991 called... (Score:2)
Nah, too easy.
2020 called (Score:2)
It will take than long to get a greatly improved MS system win10, Windows RAP or whatever they want to call it.
It makes a grown man cry.
Re: (Score:2)
1987 called to say the Archimedes will spank any 386SX.
RISC OS is a footnote but ARM is in great shape.
djb switching? (Score:1)
it won't fit? (Score:3)
I call bullshit: /usr/bin:
Copied right from
"-rwxr-xr-x. 1 person staff 744K Nov 11 2010 gpg"
Packed with upx --best: (note this runtime unpacks, there is no loader library etc)
"-rwxr-xr-x. 1 person staff 327K Jan 19 05:40 gpg"
I should note this is a static binary.
You're wrong. (Score:2)
-rwxr-xr-x 1 root wheel 892K Jan 19 06:09
$ file !$
file `which gpg`
$ ldd !$
ldd `which gpg`
-lintl.1 =>
-lgcc_s.1 =>
-lc.12 =>
-lz.1 =>
-lbz2.1 =>
Re: (Score:2)
Re: (Score:2)
Also important is: which version are you looking at? The 1.4 series (still updated) is intended for smaller/embedded installs, while the 2.x series is intended for mainstream (especially desktop) usage
It's also important to ask why they are even looking at the main gpg executable and not gpgv?
gpgv is a stripped-down version of gnupg which is only able to check signatures. It is smaller than the full-blown gnupg and uses a different (and simpler) way to check that the public keys used to make the signature are trustworthy.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
gpg (GnuPG) 1.4.15
(good call, broken_chaos)
Re: (Score:2)
Even giving it the benefit of the doubt, what would break the process so horribly if a separately packed floppy disk installer does not check signatures (link gpgv to /bin/true for instance) while the other installers do? Floppy users don't lose or gain anything while the rest get the benefit of an untampered source assurance. Or are they also trying to argue that adding signatures won't let the regular installation packages fit on floppy disks?
Re: (Score:2)
So by your own admission it's now 'security that *ahem* silently Just Fails to Work on *all* installation media'? Awesome. Having it work on all - 1 (actually all - see below, but what's 1 between internet strangers) will definitely be a huge step back.
Besides, nobody said anything about 'silently failing' - you can put a big red warning sign about it on the download page. Also, you should still check the image signature for that itty bitty tiny floppy install to validate its integrity (as one would do wit
Overly paranoid (Score:5, Interesting)
I started using OpenBSD in 1998. It was a viable, timely competitor to Linux at the time, especially for building firewalls as such.
OpenBSD is a great example of what happens when you make life too difficult for end users and administrators in the name of Security. OpenBSD has never embraced the most recent release of anything -- if it's new, by definition it's insecure and it can't be trusted. Ergo, if you have to demonstrate the latest technology in whatever you're doing, you start with a Linux distribution.
From the article: "We wanted a tool that would fit on installation media, which meant minimizing code size and external dependencies." That's the breakage mode, in a nutshell. NO ONE in the world has been clamoring for an OpenBSD signing tool that runs on a floppy. But the designers are imagining the user requirements based on their own biases. This way lies the death of any commercial or open source software product.
Re: (Score:2)
How can it be possible to be "overly paranoid" when it comes to machines hooked up to the Internet?
Re: (Score:3)
When you can't run the software that your job requires on them.
Re: (Score:2)
You put that "software" on less secure machines behind reverse-proxies, WAP, traffic analysis software, firewalls etc. which run on OSes designed by overly paranoid people.
Re: (Score:2)
Re: (Score:3)
Run whatever software you need on Qubes. [qubes-os.org] Even then your system is likely to be more secure than OpenBSD.
Re: (Score:2)
Re: (Score:2)
This is utter bullshit. Do you know how easy it is to connect to a WPA2 network with # ifconfig ? Do you know how easy it is to activate a proven secure httpd, named and other unix services including deployments such as access points and firewalls. Do you really believe iptables is easier than pf? Do you really think selinux is easy? Do you jump on every bandwagon like everyone else and now have all your tweets stored on the library of congress and all your information in the hands of facebook mark "th
Re: (Score:2)
Yes, and people are developing games for the Sega Dreamcast as well. Existence is not the same as professional viability.
Re:Overly paranoid (Score:4, Funny)
Okay, so what are you going to do about that paranoia? Use OpenBSD? That's too bad, because the NSA has already inserted cryptospy code into the distribution without Theo's knowledge. Oh, so you'll just compile it yourself from the sources, and read and review them all yourself? Too bad because your compiler has code in it that secretly inserts itself when it detects compilation of the OpenBSD kernel. Oh, but you're going to review all the compiler source code yourself and do a Canadian cross to build a clean compiler which you will then use to build a clean OpenBSD kernel from source? Too bad, because Bernstein has been paid gold in a secret numbered bank account in Thailand to insert a bug that will only manifest when it checks the installation of a new kernel on your machine.
Eventually, you have to put your tinfoil hat away and figure out how to get some work done on that there computer. Paranoia has a useful limit.
Re: (Score:2)
Bingo! And the fact that you couldn't perceive that is entirely hilarious.
Re: (Score:2)
It's about being certain that the system is secure.
To ensure system security, install this software on the system.
Then unplug all cables from it that would allow usage of the system by anyone ever, because you cannot ensure the system is secure while users still have access to it.
Re: (Score:2)
Most updates are for security fixes.
OTOH, security by correctness all by itself never prevented resourceful attackers from compiling their own databases of zero-day exploits. Infrequent updates just means the list is somewhat larger. I can't agree with this concept of security.
I've been using Qubes OS [qubes-os.org] to enhance security and though it incorporates Linux it uses a clever Xen configuration instead of SELinux to harden the system. No rules to maintain, just straightforward domains. The upshot is I can even run
Re: (Score:2)
Its a philosophical difference: Qubes' approach leans toward security by isolation where the attack surface is greatly reduced. That reduction is enforced by silicon and a baremetal hypervisor. So where correctness is concerned, Qubes needs much less of it to enforce security.
OTOH, OpenBSD is probably not as good at security by correctness as Qubes is at isolation. And if there were ever a need to elevate the standard for correctness to, say, mathematical proofs, a Qubes architecture would take a fraction o
Floppy discs and the programmers who use them! (Score:5, Funny)
Many members are up in arms over the large new utility: "Programmers these days with their fancy new computers and their gigantic 'five and a quarter' new-age magnetic spinning discs are constantly looking down on us 'old-fashioned' punch-card programmers. Why can't they write a new utility that supports six rows of 8-bit EBCDIC? Laziness. This just proves that OpenBSD don't care about small, home-built systems. Sixty four bytes is big enough for anybody."
Re: (Score:2)
You know they aren't really writing large programs since they haven't been forced to use 8" floppies [wikipedia.org].
Re: (Score:2)
Re: (Score:2)
Let's pretend your are right about the Millitary/Government having antiquated expensive equipment using OpenBSD that only has a floppy drive.
Why do they they need to install the newest version on it?
Dupe? (Score:2)
Re: (Score:3)
It's not a dupe, it's just that everyone installs from source on OpenBSD, so signing the binary never made much sense.
Re: (Score:2)
It's not a dupe, it's just that everyone installs from source on OpenBSD, so signing the binary never made much sense.
Yeah, because its realistic for people to be their own code auditors for a whole OS, and for each install and update.
I'm sorry, but this makes OpenBSD users sound like morons. IMO, they shouldn't try to justify the myopia that has lead to this situation.
Re: (Score:2)
If I compile from source, I can ensure that the binary I have is unlike any other in the world. That has protected my machines in the past so I will keep doing it.
Re: (Score:2)
Probably for bootable CDs (Score:5, Informative)
This is probably because they want the signature checker to fit in the CD boot loader. For historical reasons [mit.edu], bootable CDs imitate a floppy during the initial boot process, and contain an image of a 1.44MB floppy with a FAT file system. When you boot an PC-type x86 machine from CD, that simulated floppy (the file "floppy54.fs" for OpenBSD) is read by the BIOS and a file from it is executed.
This process is so retro that the initial program loaded is executed in 16-bit X86 mode.
Re: Probably for bootable CDs (Score:4, Insightful)
But, if you are booting from CDs, and the CD has the rest of the media, why do you need the utility for verifying signatures on the boot media (1.44MB image)? Bootstrap the installation image from the iso9660 part of the CD (or network in the case if a network install)? and have that contain the signature verification utility.
Hint: RPM-baswd distro have been doing this since rpm 3.x, or about 1999.
Really, who uses floppies for installation these days? Sure, maybe floppy emulation on a DRAC or iLO or ILOM, but they all
-support CDROM or DVD emulation
-PXE boot (with relatively large images possible via TFTP)
If none of these are options, just write the whole (hybrid) ISO image to a 4GB USB flash disk and be done with it.
I personally haven't used an actual CD-RW or DVD to install a syatem in about 5 years. Either network install booted via PXE for servers, or USB flash disk for laptops.
Re: (Score:2)
This is probably because they want the signature checker to fit in the CD boot loader. For historical reasons [mit.edu], bootable CDs imitate a floppy during the initial boot process, and contain an image of a 1.44MB floppy with a FAT file system.
Bootable CDs can emulate a floppy during boot but that is not the only supported boot method.
This process is so retro that the initial program loaded is executed in 16-bit X86 mode.
That's just PC BIOS booting in general though, not really much different from booting off any other media. It does mean your first state bootloader has to be small though
Re: (Score:2)
Soon enough if they don't get donations totalling $20,000 to pay their power bill.
http://bsd.slashdot.org/story/14/01/15/1719244/openbsd-looking-at-funding-shortfall-in-2014 [slashdot.org]
Re: (Score:2)
Its dead to me. I've turned my back on more than one project (security software, no less) because the author demanded I take a leap of faith with unsigned code.
Whatever you're talking about, it seems to have little to do with the matter being discussed.
Re: (Score:2)
Re: (Score:2)
Many Steno Machines used by court reporters us Floppies.