Apple has been working on making notarization faster and easier to use for developers. - Overview of the Notary service - Introducing notarytool - Using notarytool Overview of the Notary service: Notarization is for app developers who distribute software outside of Apple's App Store. Session is aimed at those who are currently using the "altool" command line tool to work with the Notary Service. If using Xcode to notarize, that workflow has no changes with regards to notarization between macOS Big Sur and macOS Monterey. Using the Notary Service - Build your software - Submit your software to the Notary Service prior to distribution of the software - Apple checks for malicious components and takes one of the following actions: 1. If everything checks out, Apple applies notarization 2. If there are problems found, Apple does not notarize and provides information on what caused the app to be rejected Notarization was first introduced in macOS Mojave 10.14.x and has been helping to protect Apple customers for the past couple of years. For more details about notarization, see the WWDC 2019 "All about Notarization" session video: https://developer.apple.com/videos/play/wwdc2019/703/ A Notary Service workflow demonstration can be seen at 1:26 in the session video. Apple is committed to completing this process within fifteen minutes for at least 98% of Notary submissions. Most should complete in under five minutes. Introducing notarytool One line command to submit and wait for notarization: ------ username@computername ~ % notarytool submit /path/to/thing_to_notarize.zip --wait ------ Notary Service Since it is mission-critical now for developers to be able to notarize their apps in a timely manner, Apple implemented the following for the Notary Service: - Made it Highly Available - Built a dedicated service backend - Improved the upload speed A notarytool demonstration can be seen at 3:56 in the session video. To run notarytool with your own information: ------ username@computername ~ % notarytool submit /path/to/thing_to_notarize.zip --wait --key "$KEY_PATH" --key-id "$KEY_ID" --issuer "$ISSUER" ------ As soon as notarization completes, notarytool will display the results of your submission. To use notarytool to get the notarization log: ------ username@computername ~ % notarytool log "$SUBMISSION_ID" notary-log.json ------ Webhook notifications - get a server callback once notarization completes ------ username@computername ~ % notarytool submit /path/to/thing_to_notarize.zip --webhook https://www.example.com ------ This allows integration of notarization with CI workflows by automatically retrieving the result and Notary log when the notification is received. notarytool is distributed with Xcode 13 and later. altool is now deprecated for use with Notary.