A lightweight Objective-C library for AES encryption/decryption, hashing (MD5, SHA family), and encoding/decoding (Base64, Hex).
CocoaSecurity is an Objective-C library that provides cryptographic functions for iOS and macOS apps. It handles AES encryption and decryption, hashing with MD5 and SHA algorithms (including HMAC variants), and encoding/decoding in Base64 and Hex formats. It solves the need for a simple, integrated solution to implement basic security features in Apple ecosystem applications.
iOS and macOS developers who need to add encryption, hashing, or data encoding to their Objective-C or Swift (via bridging) applications without relying on lower-level cryptographic APIs.
Developers choose CocoaSecurity for its straightforward API, comprehensive feature set covering common cryptographic needs, and ease of integration via CocoaPods or manual installation. It abstracts complexity while providing flexibility for key and IV management.
Encrypt/Decrypt: AES. Hash: MD5, SHA(SHA1, SHA224, SHA256, SHA384, SHA512). Encode/Decode: Base64, Hex.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a straightforward interface with methods like [CocoaSecurity md5:@"kelp"], abstracting cryptographic complexity for easy adoption.
Implements MD5, SHA1 through SHA512, and their HMAC variants, covering a wide range of data integrity and verification needs as shown in the README examples.
Includes CocoaSecurityEncoder and CocoaSecurityDecoder for seamless conversion between Base64 and Hex formats, simplifying data handling in cryptographic workflows.
Returns a CocoaSecurityResult with properties like .hex and .base64, allowing easy access to output in multiple formats without manual conversion.
Includes MD5 and SHA1, which are cryptographically weak and deprecated for secure applications, posing a security risk if used inappropriately.
Designed exclusively for iOS and macOS, making it unsuitable for projects targeting other platforms or requiring server-side compatibility.
As an Objective-C library, it necessitates bridging headers or manual integration in Swift projects, adding complexity for modern development teams.