An Elegant crypto toolkit in Swift.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
CommonCrypto
SwiftSSL.xcodeproj
SwiftSSL
SwiftSSLTests
.gitignore
LICENSE
README.md

README.md

SwiftSSL

SwiftSSL is an Elegant crypto toolkit in Swift, based on CommonCrypto.

How To Get Started

  • Add SwiftSSL as submodule

     git submodule add https://github.com/SwiftP2P/SwiftSSL.git SwiftSSL
  • Add SwiftSSL.xcodeproj as subproject

  • Configure your project

    • Add relative path for file module.map in your project Build Settings / Swift Compiler - Search Paths / Import Paths
  • Done!

Sample Code

SwiftSSL try to do things in swift way, so it doesn't just transfor code from openssl or other lib.

If you wanna digest String or NSData, you can do it just like this:

import SwiftSSL

let plainText: String = "This is plain text."
var digestString = plainText.digest(SwiftSSL.DigestAlgorithm.MD5)

Just that simple!

Wanna sign a message?

import SwiftSSL

let message: String = "This is your message."
let passphrase: String = "Your passphrase"
var signature = message.sign(SwiftSSL.HMACAlgorithm.SHA512, key: passphrase)

Have fun!

About

SwiftSSL is still on the way. It has provided:

  • Crypto
    • Digest
      • MD2
      • MD4
      • MD5
      • SHA1
      • SHA224
      • SHA256
      • SHA384
      • SHA512
    • HMAC
      • MD5
      • SHA1
      • SHA224
      • SHA256
      • SHA384
      • SHA512

References

License

Cypraea is released under the MIT license. See LICENSE for details.