apple-codesign 0.29.0

Pure Rust interface to code signing on Apple platforms
Documentation
```
$ rcodesign
? 2
Sign and notarize Apple programs. See https://gregoryszorc.com/docs/apple-codesign/main/ for more docs

Usage: rcodesign[EXE] [OPTIONS] <COMMAND>

Commands:
  analyze-certificate
          Analyze an X.509 certificate for Apple code signing properties
  compute-code-hashes
          Compute code hashes for a binary
  diff-signatures
          Print a diff between the signature content of two paths
  encode-app-store-connect-api-key
          Encode App Store Connect API Key metadata to JSON
  extract
          Print/extract various information from a Mach-O binary
  generate-certificate-signing-request
          Generates a certificate signing request that can be sent to Apple and exchanged for a signing certificate
  generate-self-signed-certificate
          Generate a self-signed certificate for code signing
  keychain-export-certificate-chain
          Export Apple CA certificates from the macOS Keychain
  keychain-print-certificates
          Print information about certificates in the macOS keychain
  macho-universal-create
          Create a universal ("fat") Mach-O binary
  notary-list
          List notarization submissions
  notary-log
          Fetch the notarization log for a previous submission
  notary-submit
          Upload an asset to Apple for notarization and possibly staple it
  notary-wait
          Wait for completion of a previous submission
  parse-code-signing-requirement
          Parse binary Code Signing Requirement data into a human readable string
  print-signature-info
          Print signature information for a filesystem path
  remote-sign
          Create signatures initiated from a remote signing operation
  sign
          Adds code signatures to a signable entity.
  smartcard-generate-key
          Generate a new private key on a smartcard
  smartcard-import
          Import a code signing certificate and key into a smartcard
  smartcard-scan
          Show information about available smartcard (SC) devices
  staple
          Staples a notarization ticket to an entity
  verify
          Verifies code signature data
  windows-store-export-certificate-chain
          Export CA certificates from the Windows Store
  windows-store-print-certificates
          Print information about certificates in the Windows Store
  x509-oids
          Print information about X.509 OIDs related to Apple code signing
  help
          Print this message or the help of the given subcommand(s)

Options:
  -C, --config-file <CONFIG_PATH>  Explicit configuration file to load
  -P, --profile <PROFILE>          Configuration profile to load
  -v, --verbose...                 Increase logging verbosity. Can be specified multiple times
  -h, --help                       Print help (see more with '--help')
  -V, --version                    Print version

```

```
$ rcodesign help
Sign and notarize Apple programs. See https://gregoryszorc.com/docs/apple-codesign/main/ for more docs

Usage: rcodesign[EXE] [OPTIONS] <COMMAND>

Commands:
  analyze-certificate
          Analyze an X.509 certificate for Apple code signing properties
  compute-code-hashes
          Compute code hashes for a binary
  diff-signatures
          Print a diff between the signature content of two paths
  encode-app-store-connect-api-key
          Encode App Store Connect API Key metadata to JSON
  extract
          Print/extract various information from a Mach-O binary
  generate-certificate-signing-request
          Generates a certificate signing request that can be sent to Apple and exchanged for a signing certificate
  generate-self-signed-certificate
          Generate a self-signed certificate for code signing
  keychain-export-certificate-chain
          Export Apple CA certificates from the macOS Keychain
  keychain-print-certificates
          Print information about certificates in the macOS keychain
  macho-universal-create
          Create a universal ("fat") Mach-O binary
  notary-list
          List notarization submissions
  notary-log
          Fetch the notarization log for a previous submission
  notary-submit
          Upload an asset to Apple for notarization and possibly staple it
  notary-wait
          Wait for completion of a previous submission
  parse-code-signing-requirement
          Parse binary Code Signing Requirement data into a human readable string
  print-signature-info
          Print signature information for a filesystem path
  remote-sign
          Create signatures initiated from a remote signing operation
  sign
          Adds code signatures to a signable entity.
  smartcard-generate-key
          Generate a new private key on a smartcard
  smartcard-import
          Import a code signing certificate and key into a smartcard
  smartcard-scan
          Show information about available smartcard (SC) devices
  staple
          Staples a notarization ticket to an entity
  verify
          Verifies code signature data
  windows-store-export-certificate-chain
          Export CA certificates from the Windows Store
  windows-store-print-certificates
          Print information about certificates in the Windows Store
  x509-oids
          Print information about X.509 OIDs related to Apple code signing
  help
          Print this message or the help of the given subcommand(s)

Options:
  -C, --config-file <CONFIG_PATH>
          Explicit configuration file to load.
          
          If provided, the default configuration files are not loaded, even if they exist.
          
          Can be specified multiple times. Files are loaded/merged in the order given.
          
          The special value `/dev/null` can be used to specify an empty/null config file. It can be used to short-circuit loading of default config files.

  -P, --profile <PROFILE>
          Configuration profile to load.
          
          If not specified, the implicit "default" profile is loaded.

  -v, --verbose...
          Increase logging verbosity. Can be specified multiple times

  -h, --help
          Print help (see a summary with '-h')

  -V, --version
          Print version

```