Swiftpack.co - Swift Packages by leif-ibsen

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.

Packages published by leif-ibsen

leif-ibsen/SwiftECC 5.3.0
Swift Elliptic Curve Cryptography (ECIES, ECDSA and ECDH)
⭐️ 70
🕓 8 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release 5.3.0
8 weeks ago
About SwiftECC release 5.3.0: 1) The functionality and API is unchanged from release 5.2.0 2) The documentation has been restructured
11 weeks ago
About SwiftECC release 5.2.0: 1) The functionality and API is unchanged from release 5.1.0 2) Some minor documentation inaccuracies are fixed
12 weeks ago
About SwiftECC release 5.1.0: 1) Functionality and API is unchanged from release 5.0.0 2) The documentation is build with Apple's DocC tool. It is available at the link https://leif-ibsen.github.io/SwiftECC/documentation/swiftecc and in the SwiftECC.doccarchive file
18 weeks ago
About SwiftECC release 5.0.0: SwiftECC has been refactored to use the Digest package instead of having its own implementation of the digest functions. The functionality is unchanged. The API is unchanged, except that the 'MessageDigestAlgorithm' enumeration which was defined in the SwiftECC package is now the 'MessageDigest.Kind' enumeration defined in the Digest package.
Release 4.0.0
36 weeks ago
About SwiftECC release 4.0.0: The Hybrid Public Key Encryption (HPKE) functionality is removed from SwiftECC. In order to achieve a cleaner division of functionality it is now implemented in its own package SwiftHPKE. The remaining functionality in SwiftECC is unchanged. SwiftECC release 3.9.0 which includes HPKE still exists.
39 weeks ago
About SwiftECC release 3.9.0: 1) Release 3.9.0 implements the new HPKE (Hybrid Public Key Encryption) standard, which is specified in RFC 9180 2) Release 3.9.0 is backwards compatible with release 3.8.0
45 weeks ago
New in release 3.8.0: 1) There is a new ECPrivateKey method 'sharedSecret(pubKey:cofactor:)' which implements the basic Diffie-Hellman key agreement primitive. It multiplies another party's public key (a curve point) by our own private key (an integer), and return the resulting point's x-coordinate as result. The method was there all the time as an internal helper method, but now it is public. 2) The deprecated ECPrivateKey method 'keyAgreement' is removed, but it still exists under the name 'x963KeyAgreement'
Release 3.7.0
46 weeks ago
New in release 3.7.0: 1) The private key method 'keyAgreement' has been renamed to 'x963KeyAgreement'. The functionality is the same only the name has changed. The method with the old name 'keyAgreement' still exists, but it has been deprecated and will eventually be removed. 2) There is a new private key method 'hkdfKeyAgreement' which performs Diffie-Hellman key agreement. It is similar to 'x963KeyAgreement', but it uses the mechanism from RFC 5869 - HMAC-based Extract-and-Expand Key Derivation Function (HKDF) The method is compatible with Apple's CryptoKit method 'hkdfDerivedSymmetricKey'
Release 3.6.0
1 year ago
About SwiftECC release 3.6.0: 1) The functionality and API is the same as in the previous release 2) Apple has removed the function swift package generate-xcodeproj in Xcode 14.3. This means that it is no longer possible to generate a Swift Package and then turn it into an Xcode project, in order to define testability. Since there is now no Xcode project where testability can be enabled, the line @testable import SwiftECC must be inserted in every test file, in order to still be able to run the testsuite. This has been done in release 3.6.0 The testsuite must be run in release mode, otherwise it takes forever. This can be done from the command line with swift test -c release -Xswiftc -enable-testing The above considerations are only relevant for the development of SwiftECC, not for people who just use SwiftECC.
1 year ago
Changes in release 3.5.3: Fixed a number of typos in the documentation discovered by rex4539/Dimitris Apostolou
iOS macOS watchOS
leif-ibsen/BigInt 1.17.0
Arbitrary-precision integer arithmetic in Swift
⭐️ 40
🕓 7 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release 1.17.0
8 weeks ago
About BigInt release 1.17.0: 1) The functionality and API is unchanged from release 1.16.0 2) The documentation has been restructured
Release 1.16.0
10 weeks ago
About BigInt release 1.16.0: The functionality and API is unchanged from release 1.15.0 Some minor documentation inaccuracies are fixed
13 weeks ago
About BigInt release 1.15.0: 1) The functionality and API is unchanged from release 1.14.0 2) The documentation is build with Apple's DocC tool. It is available at the link https://leif-ibsen.github.io/BigInt/documentation/bigint and in the BigInt.doccarchive file
30 weeks ago
New in release 1.14.0: 1) Continued fractions are supported: A BFraction instance can be created from a continued fraction represented as a sequence of integers. A continued fraction (a sequence of integers) can be created from a BFraction instance. 2) A new BFraction static function computes harmonic numbers, like 1 + 1/2 + ... + 1/n. 3) General improved performance in BFraction arithmetic.
Release 1.13.1
41 weeks ago
Release 1.13.1 is a bugfix release. Bill James (wjamesjr) reported a bug in the Burnikel-Ziegler division function. It gave wrong results for certain inputs. He also provided test data that helped fix the bug, thanks. The bug is fixed in release 1.13.1
48 weeks ago
New in release 1.13.0: 1) A new BFraction constructor from a string representation public init?(_ x: String) for example BFraction("3.1415") // = 6283 / 200 BFraction("123E-3") // = 123 / 1000 BFraction("abc") // = nil 2) A new BFraction 'mod' method to compute the value modulo an integer public func mod(_ m: BInt) -> BInt? public func mod(_ m: Int) -> Int? for example BFraction(13, 3).mod(5) // = Optional(1) because 3^(-1) mod 5 = 2 and (13 * 2).mod(5) = 1 Returns nil if the denominator and modulus are not coprime 3) The BFraction method 'asDecimalString' has a new API public func asDecimalString(precision: Int, exponential: Bool = false) -> String where precision is the number of significant digits and exponential determines whether to use exponential or plain notation. For example BFraction(712, 11001).asDecimalString(precision: 5, exponential: false) // = "0.064721" BFraction(712, 11001).asDecimalString(precision: 5, exponential: true ) // = "6.4721E-2" 4) A new static BFraction method 'bernoulliSequence' public static func bernoulliSequence(_ n: Int) -> [BFraction] BFraction.bernoulliSequence(n) computes the n even indexed Bernoulli numbers B(0), B(2) ... B(2 * n - 2) This is much faster than computing the same numbers individually.
52 weeks ago
About BigInt release 1.12.0: 1) There is a new CRT structure which implemnts The Chinese Remainder Theorem. It contains constructors to create an instance from given moduli and a 'compute' method to compute the CRT value for a given set of residues. The same instance can be used again for other input data. 2) The newly introduced 'bernoulli' method to compute Bernoulli numbers had poor performance. Its implementation is now changed to something more performant. For example 'bernoulli(1000)' now runs more than 250 times faster than it did before.
1 year ago
About BigInt release 1.11.0: 1) The functionality and API is the same as in release 1.10.0 2) Apple has removed the function swift package generate-xcodeproj in Xcode 14.3. This means that it is no longer possible to generate a Swift Package and then turn it into an Xcode project, in order to define testability. Since there is now no Xcode project where testability can be enabled, the line @testable import BigInt must be inserted in every test file, in order to still be able to run the testsuite. This has been done in release 1.11.0 The testsuite must be run in release mode, otherwise it takes forever. This can be done from the command line with swift test -c release -Xswiftc -enable-testing The above considerations are only relevant for the development of BigInt, not for people who just use BigInt.
1 year ago
New in release 1.10.0: 1) General performance improvements. In particular the 'modInverse' function has become faster. If the modulus is a power of 2, it typically runs 10 times faster than it did before. 2) The BFraction structure has a new static method 'bernoulli', which computes Bernoulli numbers. For example print(BFraction.bernoulli(60)) print(BFraction.bernoulli(60).asDouble()) would print -1215233140483755572040304994079820246041491 / 56786730 -2.1399949257225335e+34 The largest Bernoulli number that can be represented as a Double is bernoulli(258)
Release 1.9.0
1 year ago
New in release 1.9.0: The addition, subtraction, multiplication and shift operations have been modified to use the 'withUnsafeMutableBufferPointer' function in order to avoid that the compiler generates - in this case unneccesary - array index bound checks. This speeds up the execution. For example, the BigInt testsuite runs about 8 - 10% faster than it did before. Thanks to Jack Leow for suggesting the use of 'withUnsafeMutableBufferPointer'.
leif-ibsen/ASN1 2.5.0
Abstract Syntax Notation One (ASN1) subset in Swift
⭐️ 6
🕓 8 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release 2.5.0
8 weeks ago
About ASN1 release 2.5.0: 1) The functionality and API is unchanged from release 2.4.0 2) The documentation is restructured
11 weeks ago
About ASN1 release 2.4.0: 1) The functionality and API is unchanged from release 2.3.0 2) Some minor documentation inaccuracies are fixed
13 weeks ago
About ASN1 release 2.3.0: The functionality and API is unchanged from release 2.2.0 The documentation is build with Apple's DocC tool. It is available at the link https://leif-ibsen.github.io/ASN1/documentation/asn1 and in the ASN1.doccarchive file
25 weeks ago
About release 2.2.0: 1) The dependency on BigInt is changed so that ASN1 depends on the newest BigInt version - 1.14.0 2) The functionality and API is unchanged
Release 2.1.0
1 year ago
About ASN1 release 2.1.0: 1) The functionality and API is the same as in the previous release 2) Apple has removed the function swift package generate-xcodeproj in Xcode 14.3. This means that it is no longer possible to generate a Swift Package and then turn it into an Xcode project, in order to define testability. Since there is now no Xcode project where testability can be enabled, the line @testable import ASN1 must be inserted in every test file, in order to still be able to run the testsuite. This has been done in release 2.1.0 The testsuite must be run in release mode, otherwise it takes forever. This can be done from the command line with swift test -c release -Xswiftc -enable-testing The above considerations are only relevant for the development of ASN1, not for people who just use ASN1.
1 year ago
Richard Moats reported a bug that caused ASN1 to erroneously throw an exception on certain inputs. He also devised a solution which is now implemented.
Release 2.0.2
1 year ago
Changed the dependency on BigInt to release 1.4.0
Release 2.0.1
2 years ago
Changes in release 2.0.1: Minor code cleanup to avoid annoying compiler warnings
Release 2.0.0
2 years ago
Improved error detection and error handling. ASN1BitString initializer throws if given a wrong 'unused' value ASN1Integer initializer throws if given empty input ASN1ObjectIdentifier initializer returns 'nil' if given wrong input The 'length' part of ASN1 values is checked properly
1.2.1
3 years ago
Changed dependency to BigInt 1.1.2
leif-ibsen/SwiftChaChaPoly 2.4.0
Swift ChaCha20 / Poly1305 authenticated encryption implementation
⭐️ 3
🕓 8 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release 2.4.0
8 weeks ago
About SwiftChaChaPoly release 2.4.0: 1) The functionality and API is unchanged from release 2.3.0 2) The documentation has been restructured
Release 2.3.0
11 weeks ago
About SwiftChaChaPoly release 2.3.0: 1) The functionality and API is unchanged from release 2.2.0 2) Some minor documentation inaccuracies are fixed
12 weeks ago
About SwiftChaChaPoly release 2.2.0: 1) Functionality and API is unchanged from release 2.1.0 2) Corrected some minor documentation inaccuracies
Release 2.1.0
13 weeks ago
About SwiftChaChaPoly release 2.1.0: 1) The functionality and API is unchanged 2) The documentation is build with Apple's DocC tool. It is available at the link https://leif-ibsen.github.io/SwiftChaChaPoly/documentation/swiftchachapoly and in the SwiftChaChaPoly.doccarchive file
Release 2.0.0
32 weeks ago
About SwiftChaChaPoly release 2.0.0: 1) The ChaChaPoly constructor throws an exception if its key or nonce parameters have wrong size. In the previous release this would cause a precondition to fail 2) API and functionality is otherwise unchanged 3) A number of project Wycheproof test cases added 4) Updated documentation
Release 1.1.0
1 year ago
About SwiftChaChaPoly release 1.1.0: 1) The functionality and API is the same as in the previous release 2) Apple has removed the function swift package generate-xcodeproj in Xcode 14.3. This means that it is no longer possible to generate a Swift Package and then turn it into an Xcode project, in order to define testability. Since there is now no Xcode project where testability can be enabled, the line @testable import SwiftChaChaPoly must be inserted in every test file, in order to still be able to run the testsuite. This has been done in release 1.1.0 The testsuite must be run in release mode, otherwise it takes forever. This can be done from the command line with swift test -c release -Xswiftc -enable-testing The above considerations are only relevant for the development of SwiftChaChaPoly, not for people who just use SwiftChaChaPoly.
Release 1.0.1
3 years ago
Minor code cleanup
Release 1.0.0
3 years ago
First release of SwiftChaChaPoly
leif-ibsen/SwiftRSA 2.4.0
RSA Cryptography in Swift
⭐️ 3
🕓 8 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release 2.4.0
8 weeks ago
About SwiftRSA release 2.4.0: 1) The functionality and API is unchanged from release 2.3.0 2) The documentation has been restructured
11 weeks ago
About SwiftRSA release 2.3.0: 1) The functionality and API is unchanged from release 2.2.0 2) Some minor documentation inaccuracies are fixed
12 weeks ago
About SwiftRSA release 2.2.0: 1) Functionality and API is unchanged from release 2.1.0 2) Corrected some minor documentation inaccuracies
12 weeks ago
About SwiftRSA release 2.1.0 1) The functionality and API is unchanged from release 2.0.0 2) The documentation is build with Apple's DocC tool. It is available at the link https://leif-ibsen.github.io/SwiftRSA/documentation/swiftrsa and in the SwiftRSA.doccarchive file
Release 2.0.0
18 weeks ago
About SwiftRSA release 2.0.0: SwiftRSA has been refactored to use the Digest package instead of having its own implementation of the digest functions. The functionality is unchanged. The API is unchanged, except that the 'RSA.MessageDigestAlgorithm' enumeration which was defined in the SwiftRSA package is now the 'MessageDigest.Kind' enumeration defined in the Digest package.
25 weeks ago
About release 1.2.0: The dependency on ASN1 and BigInt is changed so that SwiftRSA depends on the newest ASN1 version - 2.2.0 and the newest BigInt version - 1.14.0 The functionality and API is unchanged
Release 1.1.0
1 year ago
About SwiftRSA release 1.1.0: 1) The functionality and API is the same as in the previous release 2) Apple has removed the function swift package generate-xcodeproj in Xcode 14.3. This means that it is no longer possible to generate a Swift Package and then turn it into an Xcode project, in order to define testability. Since there is now no Xcode project where testability can be enabled, the line @testable import SwiftRSA must be inserted in every test file, in order to still be able to run the testsuite. This has been done in release 1.1.0 The testsuite must be run in release mode, otherwise it takes forever. This can be done from the command line with swift test -c release -Xswiftc -enable-testing The above considerations are only relevant for the development of SwiftRSA, not for people who just use SwiftRSA.
Release 1.0.1
2 years ago
This is the initial release of SwiftRSA
leif-ibsen/SwiftEdDSA 3.4.0
Swift Edwards Digital Signature Algorithms
⭐️ 2
🕓 8 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release 3.4.0
8 weeks ago
Removed an erroneous dependency in the Package.swift file
Release 3.3.0
8 weeks ago
About SwiftEdDSA release 3.3.0: 1) The functionality and API is unchanged from release 3.2.0 2) The documentation has been restructured
11 weeks ago
About SwiftEdDSA release 3.2.0: 1) The functionality and API is unchanged from release 3.1.0 2) Some minor documentation inaccuracies are fixed
12 weeks ago
About SwiftEdDSA release 3.1.0 1) It is possible to generate non-deterministic signatures. The 'sign' method has got an extra boolean parameter 'deterministic' with a default value of 'true'. Setting it to 'false' will generate a non-deterministic signature. 2) The documentation is build with Apple's DocC tool. It is available at the link https://leif-ibsen.github.io/SwiftEdDSA/documentation/swifteddsa and in the SwiftEdDSA.doccarchive file
18 weeks ago
About SwiftEdDSA release 3.0.0: SwiftEdDSA has been refactored to use the Digest package instead of having its own implementation of the digest functions. The functionality and API is unchanged.
25 weeks ago
About release 2.3.0: The dependency on ASN1 and BigInt is changed so that SwiftEdDSA depends on the newest ASN1 version - 2.2.0 and the newest BigInt version - 1.14.0 The functionality and API is unchanged
Release 2.2.0
32 weeks ago
About SwiftEdDSA release 2.2.0: 1) The public and private keys have a new computed property 'der' that contains the DER encoding of the keys 2) API and functionality is otherwise unchanged 3) New test cases for sign and verify from Project Wycheproof 4) Updated documentation
Release 2.1.0
1 year ago
About SwiftEdDSA release 2.1.0: 1) The functionality and API is the same as in the previous release 2) Apple has removed the function swift package generate-xcodeproj in Xcode 14.3. This means that it is no longer possible to generate a Swift Package and then turn it into an Xcode project, in order to define testability. Since there is now no Xcode project where testability can be enabled, the line @testable import SwiftEdDSA must be inserted in every test file, in order to still be able to run the testsuite. This has been done in release 2.1.0 The testsuite must be run in release mode, otherwise it takes forever. This can be done from the command line with swift test -c release -Xswiftc -enable-testing The above considerations are only relevant for the development of SwiftEdDSA, not for people who just use SwiftEdDSA.
Release 2.0.0
2 years ago
Changed the ASN1 dependency to ASN1 release 2.0.0 and the BigInt dependency to BigInt release 1.2.5
1.0.1
3 years ago
Fixed a typo: SwiftEd => SwiftEdDSA

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics