
NEW: 7/10/2018 classes replaced with structs, which are *much* faster (~50%).
Who knew? Unfortunately Swift performance (as of 4.2) continues to be 
crucified by its lack of support for short fixed length arrays allocated 
from the stack. Instead they are allocated as variable length from the heap, 
so the code spends more time doing garbage collection than doing crypto.

Each supported primitive is implemented inside of its own swift namespace. 

So for example to support both ed25519 and the NIST P256 curves, one
could import into a particular module both "ed25519" and "nist256"

Separate ROM files provide the constants required for each curve. Some
files (big.swift, fp.swift, ecp.swift) also specify certain constants 
that must be set for the particular curve.

--------------------------------------

To build the library and see it in action, copy all of the files in this 
directory to a fresh root directory. Then execute the python3 script 
config32.py or config64.py (depending om whether you want a 32 or 
64-bit build), and select the curves that you wish to support. Libraries 
will be built automatically including all of the modules that you will need.

As a quick example execute from your root directory

py config64.py

or

python3 config64.py

Then select options 1, 3, 7, 18, 20, 25, 26 and 27 (these are fixed for the 
example program provided). Select 0 to exit.

Then execute

swift -I. -L. -lamcl -led25519 -lnist256 -lgoldilocks -lbn254 -lbls383 -lbls24 -lbls48 -lrsa2048 TestALL.swift 

and

swift -I. -L. -lamcl -lbn254 -lbls383 -lbls24 -lbls48 TestBLS.swift 

and 

swift -I. -L. -lamcl -led25519 -lnist256 -lgoldilocks -lbn254 -lbls383 -lbls24 -lbls48 -lrsa2048 BenchtestALL.swift 

Also

swift -I. -L. -lamcl TestNHS.swift

(Alternatively compile using swiftc rather than swift. However to run the 
programs the individual libraries need to be moved to /usr/lib (or somewhere 
OS specific). Note that the regular swiftc compiler seems to be more robust 
than the JIT swift compiler (there is a known bug in swift 5.0)

So for example

swiftc -I. -L. -lamcl -lbn254 -lbls383 -lbls24 -lbls48 TestBLS.swift 

// sudo cp lib*.so /usr/lib/.

./TestBLS

)

