Using Themis in Swift #
SwiftThemis wrapper provides access to features of Themis cryptographic library for Apple platforms:
- Key generation: securely generate strong key pairs and symmetric keys.
- Data storage at rest: encrypt sensitive data for storage with symmetric cryptography.
- Authenticated messaging: exchange messages which are readable only by the recipent using asymmetric cryptography, or sign messages with your private key to prove identity.
- Protect data in motion: establish a session between a client and a server for secure data exchange with perfect forward secrecy guarantees.
- Secret comparison: verify that the other party has the same shared secret as you have — without disclosing anything about the secret to anyone — using zero-knowledge proofs.
Themis can also be used with Objective-C and React Native.
Important: If your application uses Themis and you want to submit it to the Apple App Store, there are certain requirements towards declaring use of any cryptography.
Read about US export regulations on cryptography for Themis to find out what to do.
Supported platforms #
SwiftThemis supports all current versions of macOS, iOS:
- macOS 10.12–10.15, 11
- iOS 10–14
SwiftThemis is tested with Swift 4 and Swift 5.
Getting started #
Follow these instructions to install SwiftThemis.
Here are other things that might interest you:
- browse code samples to get a feel of SwiftThemis API
- read feature guides to learn how to use SwiftThemis effectively