Expiring Developer Certificates Causing Some Mac Apps to Refuse to Launch

A number of Mac apps failed to launch for users over the weekend because of a change to the way Apple certifies apps that have not been bought directly from the Mac App Store.

Several users of apps including Soulver and PDFPen who had downloaded the apps from the developers' websites all reported immediate crashes on launch. Developers of the apps quickly apologized and said that the issue was down to the apps' code signing certificates reaching their expiration date.

Apple issues developer signing certificates to assure users that an app they have downloaded outside of the Mac App Store is legitimate, comes from a known source, and hasn't been modified since it was last signed. In the past, the expiration of a code signing certificate had no effect on already shipped software, but that changed last year, when Apple began requiring apps to carry something called a provisioning profile.

provisioning profile app error
A provisioning profile tells macOS that the app has been checked by Apple against an online database and is allowed to perform certain system actions or "entitlements". However, the profile is also signed using the developer's code signing certificate, and when the certificate expires, the provisioning profile becomes invalid.

Victims of expired provisioning profiles over the weekend included users of 1Password for Mac who had bought the app from the developer's website. AgileBits explained on Sunday that affected users would need to manually update to the latest version (6.5.5), noting that those who downloaded 1Password from the Mac App Store were unaffected. The developers' surprise was explained in a blog post:

We knew our developer certificate was going to expire on Saturday, but thought nothing of it because we believed those were only necessary when publishing a new version. Apparently that's not the case. In reality it had the unexpected side effect of causing macOS to refuse to launch 1Password properly.

Currently, the common factor among affected apps appears to be those that were issued iCloud entitlements as part of their provisioning profile. Smile, developers of PDFpen and PDFpenPro, told TidBITS that users would need to manually download the latest updates to the apps to fix the problem.

Acqualia, developers of number-crunching app Soulver, also apologized for the problem and asked affected users to download an update to fix the issue.

As the above suggests, the immediate solution for developers with potentially affected apps is to renew their code signing certificates before they expire. AgileBits said the incident had given them "a new understanding of the importance of expiring provisioning profiles and certificates" and would be renewing its current certificate, due to expire in 2022, "far before then".

Popular Stories

iPhone SE 4 Vertical Camera Feature

iPhone SE 4 Rumored to Use Same Rear Chassis as iPhone 16

Friday July 19, 2024 7:16 am PDT by
Apple will adopt the same rear chassis manufacturing process for the iPhone SE 4 that it is using for the upcoming standard iPhone 16, claims a new rumor coming out of China. According to the Weibo-based leaker "Fixed Focus Digital," the backplate manufacturing process for the iPhone SE 4 is "exactly the same" as the standard model in Apple's upcoming iPhone 16 lineup, which is expected to...
iPhone 16 Pro Sizes Feature

iPhone 16 Series Is Just Two Months Away: Everything We Know

Monday July 15, 2024 4:44 am PDT by
Apple typically releases its new iPhone series around mid-September, which means we are about two months out from the launch of the iPhone 16. Like the iPhone 15 series, this year's lineup is expected to stick with four models – iPhone 16, iPhone 16 Plus, iPhone 16 Pro, and iPhone 16 Pro Max – although there are plenty of design differences and new features to take into account. To bring ...
iphone 14 lineup

Cellebrite Unable to Unlock iPhones on iOS 17.4 or Later, Leak Reveals

Thursday July 18, 2024 4:18 am PDT by
Israel-based mobile forensics company Cellebrite is unable to unlock iPhones running iOS 17.4 or later, according to leaked documents verified by 404 Media. The documents provide a rare glimpse into the capabilities of the company's mobile forensics tools and highlight the ongoing security improvements in Apple's latest devices. The leaked "Cellebrite iOS Support Matrix" obtained by 404 Media...
tinypod apple watch

TinyPod Turns Your Apple Watch Into an iPod

Wednesday July 17, 2024 3:18 pm PDT by
If you have an old Apple Watch and you're not sure what to do with it, a new product called TinyPod might be the answer. Priced at $79, the TinyPod is a silicone case with a built-in scroll wheel that houses the Apple Watch chassis. When an Apple Watch is placed inside the TinyPod, the click wheel on the case is able to be used to scroll through the Apple Watch interface. The feature works...
bsod

Crowdstrike Says Global IT Outage Impacting Windows PCs, But Mac and Linux Hosts Not Affected

Friday July 19, 2024 3:12 am PDT by
A widespread system failure is currently affecting numerous Windows devices globally, causing critical boot failures across various industries, including banks, rail networks, airlines, retailers, broadcasters, healthcare, and many more sectors. The issue, manifesting as a Blue Screen of Death (BSOD), is preventing computers from starting up properly and forcing them into continuous recovery...
Apple Watch Series 9

2024 Apple Watch Lineup: Key Changes We're Expecting

Tuesday July 16, 2024 7:59 am PDT by
Apple is seemingly planning a rework of the Apple Watch lineup for 2024, according to a range of reports from over the past year. Here's everything we know so far. Apple is expected to continue to offer three different Apple Watch models in five casing sizes, but the various display sizes will allegedly grow by up to 12% and the casings will get taller. Based on all of the latest rumors,...

Top Rated Comments

MagnusVonMagnum Avatar
97 months ago
Very, very poor show from the developers. No excuse for their laziness/lack of awareness.
That's got to be the saddest reply I've seen this year. Go blame the developers for Apple's BULLCRAP NONSENSE. :rolleyes:

Software you have already installed and was already validated should NEVER STOP WORKING. PERIOD. There is NO EXCUSE for what Apple did as this will invalidate any software that authors stop updating.

What happens if an author dies or stops developing Mac software? Your older software should just stop working? What a load of crap and even more so for someone defending Apple.

As far as I'm concerned it's just another reason NOT to upgrade to Sierra. Apple is doing its damn best to screw the pooch for everyone when it comes to open software development. They clearly want the tools in place to invalidate your entire software library at the push of a button like they can already do on iOS devices and slowly keep heading in that direction with every Mac OS update.

Lets not forget last year's BS where Apple forgot to renew THEIR OWN certificates which caused total HAVOC with App Store Applications! My god was that a fracking mess! And did Apple do anything to make up for it? Yeah, they made Sierra even more bonkers nuts. Great job Apple. INFERIOR products is sadly becoming par for the course with Apple. (Wasn't that just a week ago I ready about black paint chipping off brand new iPhones?) :confused:
Score: 46 Votes (Like | Disagree)
Fuzzi Avatar
97 months ago
Amateur hour. Devs are happy to bemoan Apple taking their 30% - but can't even be bothered to sort this out?
The Apple documentation says


* Developer ID Application Certificate and Developer ID Installer Certificate (Mac applications)
If your certificate expires, users can still download, install, and run versions of your Mac applications that were signed with this certificate. However, you will need a new certificate to sign updates and new applications. If your certificate has been revoked, users will no longer be able to install applications that have been signed with this certificate.

https://developer.apple.com/support/certificates/

I think this is definitely an Apple bug. Developers were just relying on the information given by Apple, which turned out to be false.
Score: 11 Votes (Like | Disagree)
Fuzzi Avatar
97 months ago
N
"We knew our developer certificate was going to expire on Saturday, but thought nothing of it because we believed those were only necessary when publishing a new version."

Seems to me Apple was very clear, while the developer in this care decided not only to ignore it, but to admit it....
no, the developers didn't think anything of it because Apples documentation clearly states that the apps will continue to work.

https://developer.apple.com/support/certificates/
Score: 5 Votes (Like | Disagree)
theluggage Avatar
97 months ago
I was pointing out if the developer or company walks away from the app (or dies), then that app may very well stop working due to other circumstances like OS updates.
Yes, even without this certificate issue, an abandoned app may stop working. Or it may not - responsible OS developers don't introduce app-breaking changes lightly, and you can always choose to hold off major OS updates for a year or two until you've found a new solution.

With this issue, an abandoned app will stop working when the certificate expires. Like clockwork (you don't know when D-day is, so it will come without warning for you, but it is pre-ordained) For a totally avoidable (and, in this case, apparently undocumented) reason. Even if you don't upgrade the OS.

The certificate needs to have been valid when the app was signed. There's absolutely no security reason to do more than pop up a warning if it has expired (as opposed to revoked) when the app is run.

This is either a bug or a prime example of "defective by design".
Score: 4 Votes (Like | Disagree)
gnasher729 Avatar
97 months ago
The page you linked clearly talks ONLY about MAS apps....and MAS purchases were not affected...don't see your point.

EDIT:
If your certificate has been revoked, users will no longer be able to install applications that have been signed with this certificate.

An expired certificate is..."revoked"
Wrong, wrong, wrong. Expired and Revoked are completely different things. "Expired" means "this is a perfectly fine certificate and always was, but unfortunately it is now out of date". "Revoked" means "this is a highly dodgy certificate that should have never been trusted in the first place. Unfortunately we only found out just now. So don't trust anything signed with this certificate".
Score: 4 Votes (Like | Disagree)
gnasher729 Avatar
97 months ago
Expired certificate is no longer trusted. Revoked certificate is no longer trusted, although it did not expire yet. In terms of certificate management, both lead to the same status: cert is not trusted. Hence the described issue.
Completely different. Expired certificate was trusted. It was used to verify the app, therefore the app can be trusted. Expiration doesn't matter: The app was verified with a trusted certificate, so it can be trusted, 100 years after expiration of the certificate.

A revoked certificate has just been found out to be untrustworthy. It should never have been trusted in the first place. The app was verified with a certificate that should never have been trusted, therefore the app cannot be trusted.

It's like the difference between a child minder who let his certification slip, and a child minder who you just found is a multiple child killer. You don't trust either, but there is just that tiny little difference... And of course if you had been using a child minder for a year and his certification runs out, it's still the same person so you can trust them just as much as the day before.
Score: 3 Votes (Like | Disagree)