What is in this repository
HMCryptoKit source code in Swift, that can be made into a framework by
swift build (macOS and Linux only), or through Xcode. Using the latter allows additionally to build for iOS, tvOS or watchOS.
In addition, if using this as a dependency with Swift Package Manager, the suitable architecture is handled by Xcode.
Lastly, there's a command-line tool for executing cryptographic commands related to High-Mobility's system.
For iOS, it's recommended to build the universal framework - thus enabling running on a simulator as well.
AppStoreCompatible.sh script for thinning the framework before submission to iTC.
For macOS and Linux, executing
swift build and using the product is recommended (use the
--show-bin-path option to get the output path).
For other Apple platforms, the universal framework can be made with
lipo from Xcode's simulator and device products. When creating a universal one, the module maps need to be copied as well.
./HMCryptoKitCLT [input] on the command-line.
Input must be in hex.
The tool outputs data if the inputs were suitable, an error is returned otherwise.
-h, --help: Print the help for a command
-d, --dev: Output hexadecimal array: 0xA1, 0xB2, 0xC3...
Help us keep the lights on
1.2.14 - Dec 2, 2019
Found a workaround for iOS 13 shared key generation. Fixes a crash on pre-13 devices.
1.2.13 - Oct 29, 2019
Fixed shared key generation on iOS 13.0+
1.2.12 - Oct 15, 2019
Fix for signature creation (Collection's mutation error).
Proper Xcode 11 release.
1.2.11 - Sep 17, 2019
Updated for Xcode 11 GM2. Added XCFramework building script (and removed the "old" universal scripts). Removed the HMECKey typealias (use SecKey now) to make the XCFramework usable.
1.2.10 - Sep 11, 2019
Updated for Xcode 11 GM and Swift 5.1