163 Commits

Author SHA1 Message Date
Christian Paquin
db6639687d Added Picnic sig to Visual Studio. 2018-01-25 10:23:53 -05:00
Vlad Gheorghiu
65a8db3ea8 Issue 187 and 207 (#214)
* Add minimal kex and sig example file showing the api usage

* Fix regular expression

* update

* Update global namespace regex

* Further updates to gloabalnamespace script

* added minimal_sig/kex_oqs as test cases

* commit

* commit

* commit

updated tabs to spaces

* commit

make prettyprint

* commit

replaced macros with functions

* commit

changed print_hex_string to disp_hex_string to comply to the coding
standards

* updated regex

* Remove spurious regex updates

* commit

* Added back _ntt_double and _rec in regex

Otherwise gcc fails on travis

* commit
2018-01-24 20:56:48 -05:00
Christian Paquin
872c68a796 Picnic update and direct code commit (vs. being a submodule) (#212)
* Updated the picnic library, and removed it as a patched submodule and instead committed the code direclty.

* Added previously ignored config file, and added exception to gitignore.

* Removed the mention about recursive cloning in the readme.
2018-01-21 20:30:04 -05:00
Christian Paquin
4eee16d144 Removed the mention about recursive cloning in the readme. 2018-01-12 13:09:47 -05:00
Douglas Stebila
ae488e69bf Merge branch 'paquin_add_sike' of https://github.com/christianpaquin/liboqs into christianpaquin-paquin_add_sike 2018-01-11 22:40:51 -05:00
Tancrède Lepoint
5fd3475ed4 Remove old version of Kyber (#211) 2018-01-10 15:08:34 -05:00
Christian Paquin
bc3e9ff1a8 Removed SIDH CLN16 implementation (replaced with SIDH MSR). Added new datasheet. Fixed refs to SIDH header. 2018-01-08 12:36:46 -05:00
Christian Paquin
76201b0f7e Merge remote-tracking branch 'upstream/master' into paquin_add_sike
Merged upstream/master.
2018-01-05 16:22:32 -05:00
Christian Paquin
6b9e5751f4 Added SIDHv3/SIKE from https://github.com/Microsoft/PQCrypto-SIDH. test_kex pass.
Still some refactoring needed.
2018-01-05 16:19:40 -05:00
Christian Paquin
e4ed17372f Removed old info about Picnic in README (#201)
* Removed old info about picnic in the README.
2018-01-02 14:09:00 -05:00
Christian Paquin
6fee71699a Added optimized version of Picnic (#190)
* Replaced the implementation of Picnic with the optimized version of https://github.com/IAIK/Picnic.git.

Some notes:
 - Picnic is now a git submodule, built separately (build_picnic.sh) and linked into OQS.
 - The params are part of the Picnic library, no need to generate them separately.
 - The Picnic params have been renamed
 - Picnic has been disabled in the Visual Studio build (until the library supports VS)

* Deleted script to download old picnic implementation.

* Added picnic build commands to the configure script.

* Updated travis to build new picnic lib.

* Added note that clone must be recursive (to get picnic submodule).

* Removed dependency on m4ri and added picnic build instruction in travis (since apparently the configure scrip is not run as usual).

* Changed build_picnic.sh script invocation.

* install cmake3.8

Fix for PR 190

* commit

* commit

* Pulled down update to picnic submodule.

* pulled picnic update fixing compat macros failure

* Added openssl lib to test_sig linker if openssl is enabled.

* Disable Picnic on gcc < 5.

* Fixed travis.yml syntax error.

* Pulled updates to Picnic submodule (fixing build error on MacOS).

* Removed banned-functions test that only checks for bzero. For some strange reason, it doesn't work on travis while building picnic, even if bzero is not in the code.

* prettyprint

* Changed prettyprint's picnic exclusion dir.

* external lib changes

* Disable LTO in Picnic that prevents lib merging.

* Changed mode on build_picnic.sh.

* Added newline at the end of the file.

* Updated version of Picnic.

* Added patch to picnic to satisfy the global functions namespace convention.

* Added force option to patch to avoid error when rebuilding.

* Updated picnic-related entries, and added cmake files (obtained by travis).

* Updated ignore patch for picnic.

* Ignore mods (patched files) in 3rd party picnic library.

* Changed return code if no sig algs are configured, from error to success.
It's not really an error, and this makes the Travis build fail otherwise.

* Updated external picnic, and modified how it is patched and built (to avoid multiple patching).

* disabled Picnic on gcc 4

* Silenced picnic's dry-run patching (to avoid error messages if lib has already been patched).

* added comments to script

* Ignore (patched) submodule when checking for modified files.
Also delete a "grep -v" for picnic that meant to do the same thing, but
was in the wrong place after refactoring.

* Added --ignore-submodules to second call to git status

* Add temp/ to gitignore, to prevent Travis style-check failure on mac.
2017-12-20 09:54:45 -05:00
smashra
160a739a39 Patch-based approach for adding NewHope AVX2 (#176)
* Original newhope avx2 code and a patchfile

* Integrate AVX2 into kex

* Makefile.am is needed whether the algorithm is enabled or not

* Updated patch

style-check

update

update

Life is painful

update

* Update Documentation - How to integrate external implementations

* Remove binary files

* brew update for mac

* Makefile.am included

* Remove patch functionality from travis test

* Revert patch

* Rename files.

* Rename file.
2017-12-11 21:33:41 -05:00
Christian Paquin
f62bb02104 Enabled and documented building on ARM32 (Raspberry Pi). (#179)
* Enabled and documenented building on ARM32 (Raspberry Pi). A hardcoded 'defined ARM' in ds_benchmark.h must be removed (and integrated in the build system) before merging this branch.

* Now uses a macro set by the compiler to detect ARM. Also modified README enabling more algs.

* Prettyprint.
2017-12-11 14:39:38 -05:00
smashra
9dab6f6d2c Flags for configured algorithms generated in config.h (#177)
* Flags for configured algorithms generated in config.h

* Fix issue 168

* Separate artifacts for windows build and Non-windows build
2017-12-11 14:38:11 -05:00
Vlad Gheorghiu
a5b239d532 Updated README (#191) 2017-11-20 08:50:18 -05:00
Christian Paquin
40ffb4eb38 Updated Windows build (added sig, fixed warnings, 2017 update) (#169)
* Updated Visual Studio solution to 2017 version, fixed build warnings (issue #159), added signature and Picnic support.

* commit

treat warnings as errors

* Fix ENABLED_PICNIC macro in sig_picnic.

* Prettyprint

* Try to fix Travis error or macOS.
2017-10-18 16:50:24 -04:00
Vlad Gheorghiu
a329060696 Update README.md (#178)
* Update README.md

* Update README.md
2017-09-25 11:07:39 -04:00
Vladimir Valyukh
fcbd0f35b8 KEX memory benchmarks (#171)
* added benchmark options

* added memory benchmarking module

* removed comment

* memory bech script added; TODO: clean it up a bit

* small fix in bench-memory script

* fixed prettyprint

* fixed tabs in help options

* updated documentation

* updated documentation
2017-09-11 10:53:14 -04:00
Vladimir Valyukh
b9854b400f Arm compilation (#170)
* liboqs crosscompiles for android

* andriod compilation cleanup

* andriod compilation cleanup wip

* cc working, TODO: merge back what was removed..

* put back error output

* renamed android-build.sh to configure-android

* android compilation done

* removed the use of generic SIDH implementation if optimizied version was available

* added correct CFLAGS for android

* added ARM64 assembly optimizations for sidh

* sidh arm assembly opitimizations wip

* ARM64 optimimizations for SIDH done

* added android build documentation

* fixed prettyprint issue

* removed asm opimizations for darwin
2017-09-11 09:44:49 -04:00
Douglas Stebila
f3e24e1e66 Link to algorithm data sheets. 2017-09-10 17:04:37 -04:00
boson-lepton
04d7eaa4ea Enable or disable each algorithm (#158)
* Enable or disable each algorithm

* Enable disable tests in travis and silencing warnings
2017-08-03 09:33:49 -04:00
Christian Paquin
498756396e Add sig api with picnic (#120)
* Added sig API and Picnic signature algs.

* Removed ifdef around Picnic defines, to avoid modifying calling apps.

* Some clean-ups: updated Picnic reference in Readme, made download script executable, added TODO in test_sig.

* Removed const-removing cast since Picnic API now uses const.

* Revamped test_sig, cleaned-up sig and sig_picnic.

* Enables setting location of picnic params through an env variable (vs. hardcoded).

* Minor change.

* Enable travis test for picnic

* Fix yml error

* Fix yml error

* Fix apt package error

* Fix include for picnic

* Exit on first error

* Setup picnic external

* Fix a typo

* c99 mode for picnic matrices file in picnic

* update .gitignore

* Remove warnings from picnic

* Typo

* Another typo

* add picnic build for mac

* formatting

* Updated README after Picnic refactoring.

* Update and uniformization of README.md

* Minor typos in README.md

* Fix merge mistake.

* Fix M4RI_DIR path

* Undo README changes.

* Removing merge artifacts

* File not being used anywhere
2017-07-31 21:32:00 -04:00
Douglas Stebila
461b563f5e AppVeyor badge should point to master branch. 2017-07-25 14:40:00 -04:00
Vlad Gheorghiu
2a058c507e Windows continuous integration (#155)
* Added appveyor build status icon

Windows continuous integration

* added appveyor.yml

* Integrate AppVeyor into project build settings

When I tried to add AppVeyor to the project settings so that it shows up in pull requests etc., it asked me to link with my GitHub account, so I'm switching to that.
2017-07-24 22:46:15 -04:00
Tancrède Lepoint
4d28c38a8a Enabling NTRU by default, minor cleaning of configure.ac (#142)
* Minor modifications configure.ac

* Remove optional for NTRU #135 and order by alphabetical order in several places

* Minor

* make prettyprint
2017-07-10 09:11:17 -04:00
Tancrède Lepoint
30743c2a2e Doc for Kyber 2017-07-05 21:15:14 -04:00
Andrew Darqui
2fecc3ba37 Typo: s/director/directory (#133) 2017-06-29 10:49:17 +02:00
Mark Szabo
15d96d96b9 Update Readme with Ubuntu commands (#124)
* Readme updated with Ubuntu specific commands

* Fixing a typo, changing example ciphers to default ones
2017-05-23 09:30:43 -04:00
Justin Noah
3a2b7230a5 README: fixed rand.h link (#121) 2017-05-12 09:54:45 +02:00
Douglas Stebila
d0ec688e33 Fix build problems on macOS. (#114) 2017-02-27 23:24:55 -05:00
Tancrède Lepoint
83c40e954f Missing libtool package (#104) 2017-02-27 18:16:29 -05:00
ka7
c4645a2ffb spelling fixes (#109) 2017-02-27 13:31:56 -05:00
Douglas Stebila
c6da8e5af0 Update README with brew instructions on macOS. 2017-02-08 22:40:23 -05:00
Douglas Stebila
09cff0d2fd Autotools (#99)
* Autotools infrastructure

* update for autotools

* Readme update

* More gitignore updates

* Make prettyprint.

* Formatting in README.

* Makefile cleanups
2017-02-08 12:16:28 -05:00
Christian Paquin
8a09a124ef Enable ntru on windows (#95)
* Enabled NTRU on Windows. The library must be obtained separately to be compiled in; see README.
2017-01-30 09:52:57 +10:00
Alex Parent
94a49529a6 Add option to build with NTRU (#85)
* Enable NTRU

* Add NTRU to Travis build.

* prettyprint

* Rename build script

* Try to avoid Travis failure

* Add NTRU to build on macOS and change linking.

* Fix Travis build for NTRU.

* Add NTRU to README.md (and update some other aspects too).
2017-01-12 13:49:07 -05:00
Tancrède Lepoint
091b1882a5 Add test_aes to README (#82) 2016-12-30 16:58:55 -05:00
Christian Paquin
88d18d7d49 Enable McBits on Windows (#78) 2016-12-22 11:27:29 -05:00
Alex Parent
6098c7f32b Add wrapper around mcbits. (#67) 2016-12-20 21:38:45 -05:00
Alex Parent
73b35017eb Add quiet and bench options for test_kex. (#74)
Closes #71
2016-12-13 22:48:30 -05:00
Christian Paquin
7babc31f8b Integrates MSR's SIDH library into OQS (#59) 2016-11-24 16:13:50 -05:00
Douglas Stebila
76a3480df5 Update README.md. 2016-11-23 12:35:55 -05:00
Douglas Stebila
9705212671 Update README.md. 2016-11-23 11:08:06 -05:00
Christian Paquin
7fcf29d37f Integrates MSR's RLWE Latticecrypto library into OQS. (#58) 2016-11-23 11:06:54 -05:00
Douglas Stebila
087dc7215a Add LWE-Frodo to liboqs. (#33) 2016-10-22 01:04:32 -04:00
Douglas Stebila
ff907b7ed1 LICENSE and README updates for NewHope. 2016-10-17 21:43:06 -04:00
Douglas Stebila
962eaae281 Switch to HTTPS domain. 2016-10-05 22:01:55 -04:00
Douglas Stebila
aa1532c759 Link to new website. 2016-10-04 21:44:19 -04:00
Douglas Stebila
76b1904791 Update organization of README.md. 2016-10-03 21:26:30 -04:00
Douglas Stebila
8cc0de8002 Add travis-ci build status to README. 2016-10-01 16:21:00 -04:00