Recent

Author Topic: Important date for Notarization: 3 Feb 2020  (Read 2954 times)

trev

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2023
  • Former Delphi 1-7, 10.2 user
Important date for Notarization: 3 Feb 2020
« on: March 01, 2020, 05:23:53 am »
Just a heads up.

From 3 Feb 2020 Apple has started enforcing all of the prerequisites for successfully notarising applications and disk images. Until that date, notarisation would be successful even if the application was not hardened. No longer.

If notarization fails you can download the log file from Apple and discover the reason, eg:

Code: [Select]
...
"message": "The executable does not have the hardened runtime enabled.",
...

I've updated my Notarisation Wiki article to add the details of how to obtain the log file and to emphasise the full requirements for notarisation from 3 Feb. See: https://wiki.freepascal.org/Notarization_for_macOS_10.14.5+#Notarization_requirements

This also had some consequences for the verification of the code signing of disk images and so my Code Signing Wiki article has also been updated. See: https://wiki.freepascal.org/Code_Signing_for_macOS

jwdietrich

  • Hero Member
  • *****
  • Posts: 1232
    • formatio reticularis
Re: Important date for Notarization: 3 Feb 2020
« Reply #1 on: March 05, 2020, 01:31:46 am »
Thanks!
function GetRandomNumber: integer; // xkcd.com
begin
  GetRandomNumber := 4; // chosen by fair dice roll. Guaranteed to be random.
end;

http://www.formatio-reticularis.de

Lazarus 2.2.6 | FPC 3.2.2 | PPC, Intel, ARM | macOS, Windows, Linux

AL

  • Sr. Member
  • ****
  • Posts: 264
Re: Important date for Notarization: 3 Feb 2020
« Reply #2 on: March 10, 2020, 06:26:21 pm »
Is it still possible to distribute an app without Code Sign and Notarization?
I cannot afford to pay $100 per year to distribute a shareware that sell for $20!
Laz 3.1, fpc 3.2.2, Win10
Laz 3.1  fpc 3.2.2, MacOS Monterey running on VMWare/Win 10
Laz 3.1  fpc 3.2.2 Ubuntu 20.04

Thaddy

  • Hero Member
  • *****
  • Posts: 14381
  • Sensorship about opinions does not belong here.
Re: Important date for Notarization: 3 Feb 2020
« Reply #3 on: March 10, 2020, 06:43:55 pm »
For corporate solutions there is a mitigation, but I understand your problem.
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

trev

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2023
  • Former Delphi 1-7, 10.2 user
Re: Important date for Notarization: 3 Feb 2020
« Reply #4 on: March 10, 2020, 11:53:28 pm »
@AL: Yes, but you will either scare or confuse many of your users. See Notarization for macOS 10.14.5+ which gives you examples of the dialogs your user will see and the options they will have unless they know of the workaround which gives them the option to install.

Note: The $US 99  -- $A 152 in the LAN downunder :( -- may be worth paying once you have finalised your shareware app (is software ever finalised?). Even if you do not renew it after the first year, the app will remain signed and notarised. You do also get two "free" TSIs (Technical Support Incidents) for the money -- response time was around a week, but the response was comprehensive -- as well as the bunch of Apple certificates for signing.

AL

  • Sr. Member
  • ****
  • Posts: 264
Re: Important date for Notarization: 3 Feb 2020
« Reply #5 on: March 11, 2020, 01:29:12 am »
OK so, IT IS possible to run unsigned software.  My understanding was that in Catalina the Ctrl-Click was not possible.
You'r right it is probably scaring for a Mac user that is not used to such warning.
Laz 3.1, fpc 3.2.2, Win10
Laz 3.1  fpc 3.2.2, MacOS Monterey running on VMWare/Win 10
Laz 3.1  fpc 3.2.2 Ubuntu 20.04

VTwin

  • Hero Member
  • *****
  • Posts: 1215
  • Former Turbo Pascal 3 user
Re: Important date for Notarization: 3 Feb 2020
« Reply #6 on: March 11, 2020, 02:00:58 am »
Many thanks.

I write free scientific software. This makes me want to stop supporting Mac, unfortunately not a realistic option. I suppose I will dip into my own pocket and try to figure out code signing.

On the other hand my users are now used to Gatekeeper work arounds, and my software has a good reputation in the scientific community. I'll wait and see for now.
« Last Edit: March 11, 2020, 02:14:25 am by VTwin »
“Talk is cheap. Show me the code.” -Linus Torvalds

Free Pascal Compiler 3.2.2
macOS 12.1: Lazarus 2.2.6 (64 bit Cocoa M1)
Ubuntu 18.04.3: Lazarus 2.2.6 (64 bit on VBox)
Windows 7 Pro SP1: Lazarus 2.2.6 (64 bit on VBox)

440bx

  • Hero Member
  • *****
  • Posts: 4064
Re: Important date for Notarization: 3 Feb 2020
« Reply #7 on: March 11, 2020, 02:10:29 am »
Is it still possible to distribute an app without Code Sign and Notarization?
I cannot afford to pay $100 per year to distribute a shareware that sell for $20!
That makes me think about the concept in Economics of "barriers to entry", many being artificial simply to keep competition away.  Got to love Apple's "concern" for its users by forcing talented programmers to _pay_ for the "privilege" of "competing" with corporation supported mediocre ones. 

You have talent ?... no problem, we're going to make you pay for it.   What a world. <chuckle>
(FPC v3.0.4 and Lazarus 1.8.2) or (FPC v3.2.2 and Lazarus v3.2) on Windows 7 SP1 64bit.

VTwin

  • Hero Member
  • *****
  • Posts: 1215
  • Former Turbo Pascal 3 user
Re: Important date for Notarization: 3 Feb 2020
« Reply #8 on: March 11, 2020, 02:28:50 am »
Back in the day Apple relied on hackers to write cutting edge software. It is a different world.
“Talk is cheap. Show me the code.” -Linus Torvalds

Free Pascal Compiler 3.2.2
macOS 12.1: Lazarus 2.2.6 (64 bit Cocoa M1)
Ubuntu 18.04.3: Lazarus 2.2.6 (64 bit on VBox)
Windows 7 Pro SP1: Lazarus 2.2.6 (64 bit on VBox)

trev

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2023
  • Former Delphi 1-7, 10.2 user
Re: Important date for Notarization: 3 Feb 2020
« Reply #9 on: March 11, 2020, 03:52:54 am »
I suppose I will dip into my own pocket and try to figure out code signing.

The figuring out at least has already been done (and recently updated to be current):

* Code Signing for macOS
* Notarization for macOS 10.14.5+.

VTwin

  • Hero Member
  • *****
  • Posts: 1215
  • Former Turbo Pascal 3 user
Re: Important date for Notarization: 3 Feb 2020
« Reply #10 on: March 11, 2020, 02:29:07 pm »
The figuring out at least has already been done (and recently updated to be current):

* Code Signing for macOS
* Notarization for macOS 10.14.5+.

Thanks for your work on this.
“Talk is cheap. Show me the code.” -Linus Torvalds

Free Pascal Compiler 3.2.2
macOS 12.1: Lazarus 2.2.6 (64 bit Cocoa M1)
Ubuntu 18.04.3: Lazarus 2.2.6 (64 bit on VBox)
Windows 7 Pro SP1: Lazarus 2.2.6 (64 bit on VBox)

ASBzone

  • Hero Member
  • *****
  • Posts: 678
  • Automation leads to relaxation...
    • Free Console Utilities for Windows (and a few for Linux) from BrainWaveCC
Re: Important date for Notarization: 3 Feb 2020
« Reply #11 on: March 11, 2020, 05:02:03 pm »
Is it still possible to distribute an app without Code Sign and Notarization?
I cannot afford to pay $100 per year to distribute a shareware that sell for $20!

If you search a bit, you can find options that bring that price down to ~US$50 or US$60 per year.

https://aboutssl.org/cheap-code-signing-certificate-providers/   (one such search)

I do see everyone's concerns about the costs here, but there is a potential security implication for unsigned software.   And not just on the Mac, but on Windows also.

That's why I opted to go the code signing route for my scripting utilities, even though they are FREE.   It's one less concern that users and enterprises have, and one less chance to be mistakenly quarantined by antimalware apps.

But I make the money back in technology consulting, and this won't be true for everyone, so I do understand the concerns...
-ASB: https://www.BrainWaveCC.com/

Lazarus v2.2.7-ada7a90186 / FPC v3.2.3-706-gaadb53e72c
(Windows 64-bit install w/Win32 and Linux/Arm cross-compiles via FpcUpDeluxe on both instances)

My Systems: Windows 10/11 Pro x64 (Current)

trev

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2023
  • Former Delphi 1-7, 10.2 user
Re: Important date for Notarization: 3 Feb 2020
« Reply #12 on: March 12, 2020, 12:09:23 am »
Is it still possible to distribute an app without Code Sign and Notarization?
I cannot afford to pay $100 per year to distribute a shareware that sell for $20!

If you search a bit, you can find options that bring that price down to ~US$50 or US$60 per year.

NO, NO, NO.

Gatekeeper does not accept non-Apple signing certificates. See, for example:

* https://stackoverflow.com/questions/11833481/non-apple-issued-code-signing-certificate-can-it-work-with-mac-os-10-8-gatekeep
* https://stackoverflow.com/questions/33373425/do-third-party-ca-code-signing-certificates-work-on-os-x

Yes, you can code sign using any certificate, but it will not be accepted by Gatekeeper.

trev

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2023
  • Former Delphi 1-7, 10.2 user
Re: Important date for Notarization: 3 Feb 2020
« Reply #13 on: March 12, 2020, 05:43:44 am »
I wrote a brief Wiki article  recently on the various certificates that come with Apple developer membership and the use of each one.

MoCityMM

  • Jr. Member
  • **
  • Posts: 72
Re: Important date for Notarization: 3 Feb 2020
« Reply #14 on: March 12, 2020, 10:55:28 am »
I don't interface with the Mac side of the house (corporate environment) all too much, it's handled by the Jamf team.

I am assuming that an internal CA resolves these potential issue(s) and this is related to a 'side loading' an application i.e. download from external source?

 

TinyPortal © 2005-2018