Skip to main content

Master Controller SDK - iOS Swift - v15.5

Release Notes for
KOBIL GmbH
Master Controller SDK - iOS
These notes are for internal and external usage

Requirements for current version

Operating system (Standard Support): iOS v16 [until 2025-03-31], v17, v18
Operating system (Purchased Extended Support):iOS v15 [until 2025-03-31], v16, v17, v18
SSMS: v2.12.x [until 2024-06-30], v3.7.x, v3.8.x
KOBIL Shift charts: v0.117.0+ [until 2024-11-30, MCSDK-1741], v0.144.0+
Development environment: Xcode v14.3. The developer is advised to follow Apple's requirements for App Store submission.

  • Note: The SDK does not support App-Thinning. To prevent error messages it is necessary to change the Build-Setting flag 'Enable Bitcode' to 'No'. This blocks the reduction of the binary codes, not the reduction of the GUI resources.

Test notes

Tested updates from mAST MS8b SDK (KOBIL Digitanium, KOBIL Digitanium+): v2.7.4009, v2.7.4012
Tested updates from MC SDK (KOBIL Digitanium, KOBIL Digitanium+): v10.0, v12.0, v13.4, v13.8, v14.0, v14.1, v14.2, v14.3, v14.4, v14.6, v14.7, v14.8, v14.9, v15.0, v15.1, v15.2, v15.3, v15.4
Tested updates from MC SDK (KOBIL Shift): v13.6, v13.8, v14.3, v14.4, v14.6, v14.7, v14.8, v14.9, v15.0, v15.1, v15.2, v15.3, v15.4

Documentation

See https://developer.kobil.com/docs/mcsdk-docs/introduction/kobil_app_security

Notes for SSL

  • AST protocol uses OpenSSL 3.0.0 (this is not the version we use) ciphers for "HIGH:!SSLv2:!SSLv3:!TLSv1:!aNULL:!eNULL:!3DES:@STRENGTH" (Added ciphers for TLS v1.3 protocol, but tests only done with TLS v1.2):
  • TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-DSS-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-CCM8:ECDHE-ECDSA-AES256-CCM:DHE-RSA-AES256-CCM8:DHE-RSA-AES256-CCM:ECDHE-ECDSA-ARIA256-GCM-SHA384:ECDHE-ARIA256-GCM-SHA384:DHE-DSS-ARIA256-GCM-SHA384:DHE-RSA-ARIA256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA256:ECDHE-ECDSA-CAMELLIA256-SHA384:ECDHE-RSA-CAMELLIA256-SHA384:DHE-RSA-CAMELLIA256-SHA256:DHE-DSS-CAMELLIA256-SHA256:RSA-PSK-AES256-GCM-SHA384:DHE-PSK-AES256-GCM-SHA384:RSA-PSK-CHACHA20-POLY1305:DHE-PSK-CHACHA20-POLY1305:ECDHE-PSK-CHACHA20-POLY1305:DHE-PSK-AES256-CCM8:DHE-PSK-AES256-CCM:RSA-PSK-ARIA256-GCM-SHA384:DHE-PSK-ARIA256-GCM-SHA384:AES256-GCM-SHA384:AES256-CCM8:AES256-CCM:ARIA256-GCM-SHA384:PSK-AES256-GCM-SHA384:PSK-CHACHA20-POLY1305:PSK-AES256-CCM8:PSK-AES256-CCM:PSK-ARIA256-GCM-SHA384:AES256-SHA256:CAMELLIA256-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:DHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-CCM8:ECDHE-ECDSA-AES128-CCM:DHE-RSA-AES128-CCM8:DHE-RSA-AES128-CCM:ECDHE-ECDSA-ARIA128-GCM-SHA256:ECDHE-ARIA128-GCM-SHA256:DHE-DSS-ARIA128-GCM-SHA256:DHE-RSA-ARIA128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA256:DHE-DSS-AES128-SHA256:ECDHE-ECDSA-CAMELLIA128-SHA256:ECDHE-RSA-CAMELLIA128-SHA256:DHE-RSA-CAMELLIA128-SHA256:DHE-DSS-CAMELLIA128-SHA256:RSA-PSK-AES128-GCM-SHA256:DHE-PSK-AES128-GCM-SHA256:DHE-PSK-AES128-CCM8:DHE-PSK-AES128-CCM:RSA-PSK-ARIA128-GCM-SHA256:DHE-PSK-ARIA128-GCM-SHA256:AES128-GCM-SHA256:AES128-CCM8:AES128-CCM:ARIA128-GCM-SHA256:PSK-AES128-GCM-SHA256:PSK-AES128-CCM8:PSK-AES128-CCM:PSK-ARIA128-GCM-SHA256:AES128-SHA256:CAMELLIA128-SHA256

Known issues

  • Digitanium Offline Function OTP: If MC triggers a RestartEvent internally i.e app will get a RestartResultEvent over the event bus (this can happen for example if there is some RuntimeErrorEvent), then the offline functions won't be supported and to mitigate the issue the app just needs to trigger a RestartEvent with the correct mc_config and offline functions will be available again.