CatCrypto alternatives and similar libraries
Based on the "Encryption" category.
Alternatively, view CatCrypto alternatives based on common mentions on social networks and blogs.
-
RNCryptor
CCCryptor (AES encryption) wrappers for iOS and Mac in Swift. -- For ObjC, see RNCryptor/RNCryptor-objc -
RSASwiftGenerator
Util for generation RSA keys on your client and save to keychain or convert into Data ๐ ๐
InfluxDB - Purpose built for real-time analytics at any scale.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of CatCrypto or a related project?
README
CatCrypto include a series of hashing and encryption functions and more functions in progress!
CatCrypto also contains Swift bindings of Argon2, the password-hashing function that won the Password Hashing Competition (PHC).
Content
- Content
- Requirements
- Support Functions
- Upcoming Functions
- Usage
- Installation
- Documentation
- Interacting
- License
Requirements
- Swift 4+
- iOS 8.0+
- macOS 10.10+
- tvOS 9.0+
- watchOS 2.0+
Support Functions
Upcoming Functions
- Advanced Encryption Standard (AES)
- Data Encryption Standard (DES)
- Triple DES (3DES)
Usage
Context
Context contains inputs and configures for function crypto.
Change hash length with SHA-2
function crypto:
let sha2Crypto = CatSHA2Crypto()
sha2Crypto.context.hashLength = .bit384
Hashing
Hash function used to map data of arbitrary size to data of fixed size.
Simply hashing string with MD6
function crypto:
let md6Crypto = CatMD6Crypto()
md6Crypto.context.hashLength = .bit512
print(md6Crypto.hash(password: "CatCrypto").hexStringValue())
// 3ad3003383633c40281bb5185424ee56a5a1c6dfa3a0e7c3a9e381c58d253323e146feb3f04cb9ebcde47186e042ce63109b8d19f3ca760ea00c90654eb2b272
Verification
Some hash function support to verify their hashed value.
Verifing with Argon2
function crypto:
let hash = "$argon2i$v=19$m=4096,t=3,p=1$Q2F0Q3J5cHRv$Ad6gXMVLvZ3uQOeTi6nCmU4Ns2/nPDfPD5B3yyebv8k"
let argon2Crypto = CatArgon2Crypto()
argon2Crypto.context.mode = .argon2i
argon2Crypto.context.salt = "CatCrypto"
print(argon2Crypto.verify(hash: hash, password: "CatCrypto").boolValue())
// true
Installation
CatCrypto is available through CocoaPods and Carthage.
CocoaPods
Add the following line to your Podfile:
use_frameworks!
pod 'CatCrypto'
Carthage
Add the following line to your Cartfile:
github "ImKcat/CatCrypto"
Documentation
Interacting
CatCrypto is always trying to support more functions and keep itself easy to use, please reading down below to interacting with CatCrypto.
Need Help
- Reading usage section and API Reference
- Searched in issues to find duplicated or related issues
- Ask question? Open a question type issue
- Report bug? Open a bug type issue
- Need new feature? Open a feature type issue
Contribute
If you want to contribute with CatCrypto, please reading Contribute Guidelines at first.
License
CatCrypto is available under the MIT license. See the LICENSE file for more info.
*Note that all licence references and agreements mentioned in the CatCrypto README section above
are relevant to that project's source code only.