SipHash
SwiftyRSA
Our great sponsors
SipHash | SwiftyRSA | |
---|---|---|
3 | - | |
593 | 1,254 | |
- | 1.4% | |
1.4 | 2.8 | |
about 1 year ago | about 2 months ago | |
C | Swift | |
Creative Commons Zero v1.0 Universal | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
SipHash
-
does math.randomseed() let you use letters, or only numbers?
Very fast with security guarantees. These are faster than full cryptographic hashes and fulfill some but not all of the security guarantees. That's not to say that they're weaker, but that they're designed for certain usecases where they are perfectly adequate and others where they fail miserably. Example: SipHash2-4 https://github.com/veorq/SipHash
-
Implementing Hash Tables in C
Note that if you have untrusted input, you may want to use a defensive option for hashing involving a private key, such as SipHash[1]. Otherwise, an attacker who knows your hash functions can just pre-generate a large number of colliding elements and reduce your hash function to a linked list; given enough attacker-controlled elements, this can effectively amount to a DoS attack[2].
[1] https://github.com/veorq/SipHash
[2] https://www.aumasson.jp/siphash/siphashdos_29c3_slides.pdf
-
Getting unique items from a list. Why do they come out in a random order?
Sets are internally ordered by items' hash (rather, the first few bits of it, depending on the # of elements in the set), and strings are hashed with a pseudorandom algorithm.
SwiftyRSA
We haven't tracked posts mentioning SwiftyRSA yet.
Tracking mentions began in Dec 2020.
What are some alternatives?
OpenSSL - TLS/SSL and crypto library
CryptoSwift - CryptoSwift is a growing collection of standard and secure cryptographic algorithms implemented in Swift
Lua - Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.
SwCrypt - RSA public/private key generation, RSA, AES encryption/decryption, RSA sign/verify in Swift with CommonCrypto in iOS and OS X
OpenSSL - Swift OpenSSL for OS X and Linux
RNCryptor - CCCryptor (AES encryption) wrappers for iOS and Mac in Swift. -- For ObjC, see RNCryptor/RNCryptor-objc
cityhash - Automatically exported from code.google.com/p/cityhash
SweetHMAC - A tiny and easy to use Swift class to encrypt strings using HMAC algorithms.
Obfuscator-iOS - Secure your app by obfuscating all the hard-coded security-sensitive strings.
cocoapods-keys - A key value store for storing per-developer environment and application keys
AES256CBC
SwiftMD5 - A pure Swift implementation of MD5