Skip to content

Swift Elliptic Curve Cryptography (ECIES, ECDSA and ECDH)

License

Notifications You must be signed in to change notification settings

leif-ibsen/SwiftECC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SwiftECC

SwiftECC provides elliptic curve cryptography in Swift. This encompasses:

  • Creating, loading and storing public and private keys
  • Encryption and decryption using the ECIES algorithm based on the AES block cipher and six different block modes
  • AEAD (Authenticated Encryption with Associated Data) encryption and decryption using the ECIES algorithm with the ChaCha20/Poly1305 or the AES/GCM cipher
  • Signature signing and verifying using the ECDSA algorithm, including the option of deterministic signatures
  • Secret key agreement using the Diffie-Hellman key agreement algorithm - ECDH
  • Ability to create your own domains
  • General elliptic curve arithmetic

SwiftECC requires Swift 5.0. It also requires that the Int and UInt types be 64 bit types.

Its documentation is build with the DocC plugin and published on GitHub Pages at this location:

https://leif-ibsen.github.io/SwiftECC/documentation/swiftecc

The documentation is also available in the SwiftECC.doccarchive file.

About

Swift Elliptic Curve Cryptography (ECIES, ECDSA and ECDH)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages