Граф коммитов

219 Коммитов

Автор SHA1 Сообщение Дата
jeffspel-crypto 7b681513f6
Pre computations (#259)
* This is the first step of the implementation to use precomputed values to encrypt a ballot. There is are two queues in a global (PrecomputedBufferContext) and the queues are populated with a populate method and stopped with a stop_populate method. Then in encryptSelection (encrypt.cpp) if precomputed values are available in the queues then those values are used to generate the encrypted selection.

* More changes for precomputed values.

* Add testing for the precompute buffers change.

* Add benchmarking tests for the new precomputed values APIs.

* Update to the benchmarking tests.

* Clean up missing xml documentation for exceptions

* precompute integration

* Making sure calling stop_populate after calling populate in tests.

* Fix issue with setting of max queue size.

* fixing integration

* Remove the dependency on async.hpp.

* Updated the code to fix a number of issues pointed out during PR review.

* Satisfy rule of 5

* Remove the TripleEntry and QuadrupleEntry objects and store the Triple and Quadruple entries in the queue.

* Removed sleeps in test code and in the PrecomputeAPI.

* add lock_guards to the precompute

* created const for default precompute buffer size.

* adding resend for completed events

* Moved the assert to the bottom of the tests to get the rest of the results checked first

* Adding an init method to the PrecomputeBufferContext.

* Created new init function to have the api call to know when it is ready.

* updating version number for nuget

Co-authored-by: Jeff <spelmaa@wwu.edu>
Co-authored-by: SteveMaier-IRT <steve.maier@infernored.com>
2022-04-18 09:25:15 -04:00
Steve Maier 46b1e706ad
Fix/ctor perf (#257)
* Created new benchmark to replicate and test the performance for context make with json

* Change the public key to a fixed base.

* Add benchmarks for encrypting contests

* Made benchmark make command work for Windows

* Updated version number for release

* Fixed issue with benchmarks on non-Windows machines

* typo in the makefile
2022-04-09 14:29:29 -04:00
Steve Maier d26b36aa28
Add stub for testing the precompute API. (#255)
* Add stub for testing the precompute API.
Unit tests created for precompute
nuget package version up to 0.1.7

* Cleanup from comments from review
2022-04-06 11:26:20 -04:00
Steve Maier f9fe443f25
Fix/extended data serialization (#246)
* Fixed DLL entrypoint issue for NativeInterface method

* Add serialization for extended data for JSON/BSON

* Add unit test to verify extended data is serialized

* Renamed the field in the test code that is saved to extended data
2022-03-29 14:55:52 -04:00
Lee Richardson 2a84b94a91
🐛 Replace console writing with exceptions (#244)
* Create ElectionGuardException

* Fix namespace warnings

* Replace console.writelines in ballot with exceptions

* Replace remaining console.writelines with throw exceptions

* Default to Release for electionguard.dll to fix VS test runner

* Fix warnings

* Revert "Default to Release for electionguard.dll to fix VS test runner"

This reverts commit 36b39536e8.
2022-03-29 14:41:54 -04:00
Steve Maier 838472b152
Updated the XML documentation for the C# binding (#241) 2022-03-10 17:44:18 -05:00
Steve Maier 3c9ae745b2
Add constructors and methods to allow managed calls to be able to create ContestDescriptions with PartyIds (#239) 2022-02-28 12:36:51 -05:00
AddressXception a4eec6451f increment version
update compiler version in release build


use windows 2019
2022-02-25 11:32:03 -05:00
AddtessXception 486ea2e2ba
🧮. Precompute Exponentiations (#235)
* add const time versions of exp functions

add hacl bench

* Add exponentiation lookup tables

add a class instance to hacl bignum wrapper so that montgomery precompute can be used. use the montgomery context throughout for mod and modexp operations where possible. modify g_pow_p to ue the exponentiation tables. use random numbers when benchmarking.

* add lookuptablecontext

add overloads fgor using fixed base table. update tests to specify to use fixed base at key creation. add c interface

* temporarily add some hardcoded values

* pin cpm version

* add missing includes

* copy sample data to output directory

* update spdlog

* add pow_mod_p to c interface

fix double initialization in lookup table, cleanup log messages.

* reset sample data

* adjust bench

* adjust sample route

* adjust sample route

* add export to hacl constants

* Added an offset path where the sample data is extracted so that the tests can be run.

* Converting to other slash for linux builds

* fixed cpp manifest location

* add encryption functions for benchmarks

clean up benchmarks

* Converted all of the Console.Writeline for error handling

fix compiler warnings for most xml docs

* remove explicit copy operation

* only run netstandard x86  tests on windows

* update doctest to latest version

* fix transcription error

* add mod_p bench

Co-authored-by: SteveMaier-IRT <steve.maier@infernored.com>
2022-02-24 16:21:55 -05:00
AddtessXception f7e0155fb3
Feature/optimized proofs (#231)
* Add overload of disjunctive proof

add the new disjunctive computation method as an overload

* add make function that uses the new proof scheme

* add new member to the C interface

* Add new C# member

* load manifests from file
2022-01-04 13:20:40 -05:00
AddtessXception bc110ef14a
Feature/context extendeddata (#230)
* Add extendedData to CiphertextElectionContext

* Add a simple linked list implementation

* use c style type names

* return error codes

* add election context C test

rename refactor linked list to remove electionguard from function names

* add external api exports and get function

* rework tests

* move logic into code file

* move struct implement to c file

make the external typedef struct opaque to the caller. add more api methods. refactor tests

* refactor C function name

add api documentation.

* Add C# native interface for LinkedList

add the C# facade class and unit tests.

* Add ExtendedData to C# CiphertextElectionContext

add the native interface binding, add the new field to the existing c# facade. add unit test.

* add stdint to header

* fix assertion use in main lib

* add missing comma

* address pr feedback

* increment version
2021-12-22 17:35:05 -05:00
AddtessXception e1d4325700
fix crash on overvote (#228)
* move mocks to generators namespace

* add configurable sample tests

* handle error codes when encrypting

* unzip sample data

* try unzip sample data

* try rename zip file

* overwrite existing files
2021-12-17 13:16:13 -05:00
Matt Wilhelm e9803d0a4c
add platform property (#215)
* add platform property

fix assignment error

* add bench, add methods to safehandle

* replace c interface uses of size_t with uint64_t

* clean up uses of long in c# classes

* fix a few missed size_t

* missed another one

* explicitly state calling convention for native api's

* fix compiler warnings

* add a targets file and explicitly place package output

* do not error on old style cast

* fix typo
2021-10-25 10:01:53 -04:00
Avinal Kumar a29c8b4a2b
Fix Build warning C4068 for MSVC (#221)
- GCC pragma is not a valid pragma in MSVC, thus produces warning C4068:
unknown pragma 'GCC'.
- The workaround is to encapsulate the GCC pragma in if GNUC defined
block.

Signed-off-by: Avinal Kumar <avinal.xlvii@gmail.com>
2021-10-22 11:15:14 -04:00
Pradumna Saraf 5daa8531b9
📝 Added Repo Relative Link (#220)
* Added Repo Relative Link

* Update README.md
2021-10-21 15:21:34 -04:00
Matt Wilhelm 99788bc9fb
update package reference (#214) 2021-10-13 14:05:51 -04:00
Matt Wilhelm da452f68f1
Add missing constructors (#213)
* Add missing constructors

* update version numbers
2021-10-13 10:02:14 -04:00
Matt Wilhelm 708e8c4ebc
Feature/c sharp manifest (#210)
* add manifest interfaces

internationalized text, language, etc.

* add more c interfaces

gp units and ballot style, etc.

* add some manifest classes

* Add missing C# interface members

* Add missing documentation

* fix missing free

* remove commented out code

* address pr feedback

* fix missing free
2021-10-11 16:43:00 -04:00
Matt Wilhelm fe0286a25c
Add (nearly) complete ballot interface (#206) 2021-09-23 10:26:28 -04:00
Keith Fung 60e9668a51 Adjust Contributing and Add templates 2021-09-20 15:19:46 -04:00
Jayita Pramanik f22ffbca00
Adding ElectionGuard Badge (#205) 2021-09-20 15:13:54 -04:00
Keith Fung 779cd99206
🆙 Upgrade package to 1.2.0 (#203) 2021-09-15 11:06:43 -04:00
Matt Wilhelm 61a36b75fa
🐛. Fix electionguard duplicate dll upload. (#201)
* 🚧 Adjust to Single Project

Shift project towards new csproj for C# project and away from Shared Setup.

Remove the shared project setup and start with .net standard 2.0 and .net framework 4.8 with the goal of adding more pieces including .net core. 

Fix tests

* 🙈 Ignore Test with Memory Address Issues

*  Create Release Workflow

*  Add links to README

* ♻️ Update Make

* 🚀 Add so, dylib, and dll to Release

* respect configuration when loading binaries

* use truncated manifest

replace the hardcoded manifest with one that is not affected by #176

* update readme and build tasks

* Remove msys package target

* try run netstandard tests

* only run netstandard tests on macos for now

* add chaum pedersen to C interface

* Add C# chaum pedersen proofs

* update version numbers

* rename x86 file

* do not upload 32 bit

* remove try

Co-authored-by: Keith Fung <keith.robert.fung@gmail.com>
Co-authored-by: Keith Fung <keith.fung@infernored.com>
2021-09-15 10:30:55 -04:00
Matt Wilhelm f3153665ce
Feature/c sharp interface (#200)
* 🚧 Adjust to Single Project

Shift project towards new csproj for C# project and away from Shared Setup.

Remove the shared project setup and start with .net standard 2.0 and .net framework 4.8 with the goal of adding more pieces including .net core. 

Fix tests

* 🙈 Ignore Test with Memory Address Issues

*  Create Release Workflow

*  Add links to README

* ♻️ Update Make

* 🚀 Add so, dylib, and dll to Release

* respect configuration when loading binaries

* use truncated manifest

replace the hardcoded manifest with one that is not affected by #176

* update readme and build tasks

* Remove msys package target

* try run netstandard tests

* only run netstandard tests on macos for now

* add chaum pedersen to C interface

* Add C# chaum pedersen proofs

* update version numbers

* rename x86 file

Co-authored-by: Keith Fung <keith.robert.fung@gmail.com>
Co-authored-by: Keith Fung <keith.fung@infernored.com>
2021-09-15 10:16:36 -04:00
Matt Wilhelm 8765428ddb
📐 Add to C# Interface (#199)
* 🚧 Adjust to Single Project

Shift project towards new csproj for C# project and away from Shared Setup.

Remove the shared project setup and start with .net standard 2.0 and .net framework 4.8 with the goal of adding more pieces including .net core. 

Fix tests

* 🙈 Ignore Test with Memory Address Issues

*  Create Release Workflow

*  Add links to README

* ♻️ Update Make

* 🚀 Add so, dylib, and dll to Release

* respect configuration when loading binaries

* use truncated manifest

replace the hardcoded manifest with one that is not affected by #176

* update readme and build tasks

* Remove msys package target

* try run netstandard tests

* only run netstandard tests on macos for now

* add chaum pedersen to C interface

* Add C# chaum pedersen proofs

* update version numbers

Co-authored-by: Keith Fung <keith.robert.fung@gmail.com>
Co-authored-by: Keith Fung <keith.fung@infernored.com>
2021-09-15 09:58:02 -04:00
Matt Wilhelm f716332fdc
Add benchmark project (#198) 2021-09-13 12:20:56 -04:00
Keith Fung 41c05bfc3f
🚀 Nuget Packaging and Release Workflow (#192)
* 🚧 Adjust to Single Project

Shift project towards new csproj for C# project and away from Shared Setup.

Remove the shared project setup and start with .net standard 2.0 and .net framework 4.8 with the goal of adding more pieces including .net core. 

Fix tests

* 🙈 Ignore Test with Memory Address Issues

*  Create Release Workflow

*  Add links to README

* ♻️ Update Make

* 🚀 Add so, dylib, and dll to Release

* respect configuration when loading binaries

* use truncated manifest

replace the hardcoded manifest with one that is not affected by #176

* update readme and build tasks

* Remove msys package target

* try run netstandard tests

* only run netstandard tests on macos for now

* dont run tests

* 🧹 Update Test Project references

* 🧹 Quick Cleanup

Co-authored-by: Matt Wilhelm <github@addressxception.com>
2021-09-13 10:00:13 -04:00
Matt Wilhelm 0bad662f3c
Update constants (#190)
* Update constants

add a second set of test primes and validate that the prime numbers can be swapped out.

* cast to size

* cast

* disable warning
2021-08-31 15:55:31 -04:00
Matt Wilhelm 4086c6465a
Feature/bench win (#187)
* Add ElectionGuard.Bench project

* Add spdlog

clean up log messages

* clean up includes

* Add multi threading support

* add sequenceOrder to ciphertext ballot

ensure c tests run in release mode

* clean up resources on terminate

wait for the thread queue to finish and clean up the threads when the thread pool finalizer runs

* add sequenceOrder to netframework api

* use the header only version of spdlog

* address pr feedback

add default deletes for rule of 5 for async things
2021-08-11 09:52:01 -04:00
Matt Wilhelm a9956fc8ee
Feature/benchmark (#182)
* add benchmarks

* Add new HACL code

* Use hacl facade in group

* Add benchmarks for group hash and nonces

* Add option to manually export internal headers for release mode

* add encryptBallot benchmark

* fix compiler errors

change default build to release mode

* compile benchmark with c++ 17

use target flag when building tests

* cdo not automatically export internals in debug

* remove inline modifiers for implementation methods

* add bench to pr template

* clean up makefile. tests build in release mode

* update codeql

* export internals when running sanitizer
2021-06-09 10:56:14 -04:00
Matt Wilhelm 1981b2f13f
Add ballot constructor (#178) 2021-06-01 12:58:19 -04:00
Matt Wilhelm 52b88eda89
Feature/netframework api (#175)
* Add manifest c++/cli wrapper.  redefine internal constructors

add copy constructor for some types.  Add tests

* add ballot and encrypt interfaces

* Add isValid checks

* Add programmatic and serialization examples

* refactor election generator to manifest

link in date library

* fix test compilation issues

* Match manifest and encryption output to python

* fix windows compilation issues
2021-05-20 09:43:09 -04:00
Matt Wilhelm 654bb55d45
Initial .net framework examples (#172)
* Add interfaces required to encrypt

* Add examples working with property accessors

* format file

* run linting on all files
2021-04-30 09:52:42 -04:00
Matt Wilhelm 12d984c8f7
Feature/msvc (#166)
* Compile for MSVC

Update HACL to the latest version to support MSVC. 
 Add a .net framework 4.8 binding library and demonstrate an API example (TestElGamal.cs).

* update PR template to include msvc

* fix template issue

* fix makefile

* try fix broken build
2021-04-16 13:53:46 -04:00
Matt Wilhelm 3723fd8f6b
add submitted ballot (#167) 2021-04-16 09:57:55 -04:00
Matt Wilhelm 0a6c535c67
Fix/refactor tracker (#165)
* move words into tests

* remove c# functions

* Refactor Tracker to BallotCode

* add win export modifiers

* remove words completely

* fix ballot code naming

remove wording that implies ballot chaining

* refactor hash suffix where possible

* use ballot_id instead of ballot_style where possible

* refactor ElectionDescription to manifest

* move refactor Manifest to its own file

* Update api documentation

* install clang-9

because IWYU wants it

* try fix iwyu
2021-04-06 09:41:11 -04:00
Matt Wilhelm fe8445d9f6
Encrypt CompactPlaintextBallot (#162)
* Encrypt CompactPlaintextBallot

Add functions to convert between plaintext and compact plaintext ballots.  Add functions to convert between ciphertext and compact ciphertext ballots.  Complete implementation of encrypt functions to parallel python (e.g. handling manifests with multiple ballot styles).  modify encrypt ballot to explicitly use the nonce passed in so that the encryption can be rehydrated properly.

add some documentation and migrate the cpm download into cmake

* Add C Tests

factor out the Test Generators into a library that can be referenced from either test project.  Add facades for relevant generator functions in C.  Add documentation.

* add compact encrypt methods to mediator c interface

* Add C# interface

* clean up compiler warnings

* add array deletion

* add access modifiers

* Use int for key in extended data

* refactor ballot compact

* fix static analysis warnings

* refactor c# interface

* Add Xamarin Android tests

* check for IWYU prior to running

* address some PR feedback

* refactor compact test cases to use a fixture model

* add sort pr cleanup

* move the android project
2021-03-29 15:18:07 -04:00
Matt Wilhelm bf2c8390e6
Feature/decrypt with secret (#159)
* Refactor PlaintextBallotSelection to use an int instead of a string

add documentation to interfaces.  Add C++, c and C# tests

* Use ElectionguardSafeHandle for plaintext ballots

* update templates

* fix spelling errors and add comments

* Add Ciphertext Accumulation to CiphertextBallotContest

Add documentation to ballot API's.  Add clone methods to some objects like DisjunctiveChaumPedersenProof.  Add simple Encryption tests.  Refactor C# Native Interface to use the SmartHandle pattern.

* Try fix windows compilation errors

* Fix some compiler warnings


Fix some compiler warnings

* Try fix windows compilation errors

* fix constness

* Add Commitment Hash to CiphertextElectionContext

* add missing noexcept

* add noexcept

* Add ElGamal types to C# interface

* add docs

* PR review
2021-02-25 15:02:13 -05:00
Matt Wilhelm c87230128e
Feature/hash guardian commitments (#155)
* Refactor PlaintextBallotSelection to use an int instead of a string

add documentation to interfaces.  Add C++, c and C# tests

* Use ElectionguardSafeHandle for plaintext ballots

* update templates

* fix spelling errors and add comments

* Add Ciphertext Accumulation to CiphertextBallotContest

Add documentation to ballot API's.  Add clone methods to some objects like DisjunctiveChaumPedersenProof.  Add simple Encryption tests.  Refactor C# Native Interface to use the SmartHandle pattern.

* Try fix windows compilation errors

* Fix some compiler warnings


Fix some compiler warnings

* Try fix windows compilation errors

* fix constness

* Add Commitment Hash to CiphertextElectionContext

* add missing noexcept

* add noexcept
2021-02-25 12:45:45 -05:00
Matt Wilhelm 692a9d98f4
Feature/missing contest total (#154)
* Refactor PlaintextBallotSelection to use an int instead of a string

add documentation to interfaces.  Add C++, c and C# tests

* Use ElectionguardSafeHandle for plaintext ballots

* update templates

* fix spelling errors and add comments

* Add Ciphertext Accumulation to CiphertextBallotContest

Add documentation to ballot API's.  Add clone methods to some objects like DisjunctiveChaumPedersenProof.  Add simple Encryption tests.  Refactor C# Native Interface to use the SmartHandle pattern.

* Try fix windows compilation errors

* Fix some compiler warnings


Fix some compiler warnings

* Try fix windows compilation errors

* fix constness

* add missing noexcept
2021-02-25 11:55:19 -05:00
Matt Wilhelm b4be03f568
Feature/vote to int (#152)
* Refactor PlaintextBallotSelection to use an int instead of a string

add documentation to interfaces.  Add C++, c and C# tests

* Use ElectionguardSafeHandle for plaintext ballots

* update templates

* fix spelling errors and add comments

* Try fix windows compilation errors

* Try fix windows compilation errors
2021-02-23 14:48:14 -05:00
Jonathan Protzenko cac21fd548
Update README.md (#148)
This is INRIA, not INRA. INRA is also a thing, and also a French government research agency, but it's the French Research Institute for Agronomics :-D (https://en.wikipedia.org/wiki/Institut_national_de_la_recherche_agronomique)
2021-02-08 10:50:38 -08:00
rc carter 206002a887
copyedit tweaks 2021-02-05 12:29:36 -08:00
Matt Wilhelm 9f5920fe9c
Feature/election c api (#146)
* Use HMAC DRBG

* Increment Version Number

* Add missing API functions for plaintext and ciphertext ballots

Add the plaintext and ciphertext versions of property getters for several functions missing on the ballot.h interface.  Add a C test to demonstrate traversing some of the property getters.

* Add netstandard unit test shared project

* Add missing C# ballot objects and interface stubs

* Add missing property accessors

add c# unit tests for ios

* remove debug line

* Compile for Windows

- cleanup EG_API declarations, clean up Makefile, 
- add windows documentation, 
- add a c++ facade around HACL functions used in tests (using an internal api exposed in debug builds).  
- Fix string literal values in ballot nonce serialization.
- statically link  in libstdc++
-

* stub windows action test runner

* TABS OVER SPACES

* only statically link on windows for now

minor adjustments to the CI workflow

* use test command on osx, adjust system path for msys2


try using msys2 explicit shell invocation


try installing msys2 with choco

* try using the official msys github action

* remove pacman commands


set github path, only run msys on windows


try fix windows run


try modify path


Try shell change

* Use cmake to copy the windows dll to the output directory

* remove demo app

* Implement Placeholder selections, add ElectionDescription

Add the missing ElectionDescription and verify that a manifest can be serialized.  Add ContestDescriptionWithPlaceholders and generate the placeholder selections when an InternalElectionDescription is instantiated.  Add documentation to classes touched.  Refactor namespace usage to use explicit calls in public headers.  Move refactor ballot and election generation tot he generators folder.  Add tests for verifying serialization.

Note: this PR is still very lightly tested.  See: #95

* Try update codeQL

* fix some compiler warnings

* fix use of gmtime

* Rename Repo, Update Docs

rename the repository references within the code base and update the documentation.  Fix issue with targeting .net 4 in the nuget package.

* update text

* Add methods to expose json conversion for election manifest to the C api

propagate the changes to the C api into the .net api.

* update docs, PR self-review

* Fix getDescriptionHash() return value type

* edit review of PR 146

Co-authored-by: rc <rocarter@microsoft.com>
2021-02-05 12:10:41 -08:00
Matt Wilhelm 7ec5c02189
Bug/placeholder selections (#140)
* Use HMAC DRBG

* Increment Version Number

* Add missing API functions for plaintext and ciphertext ballots

Add the plaintext and ciphertext versions of property getters for several functions missing on the ballot.h interface.  Add a C test to demonstrate traversing some of the property getters.

* Add netstandard unit test shared project

* Add missing C# ballot objects and interface stubs

* Add missing property accessors

add c# unit tests for ios

* remove debug line

* Compile for Windows

- cleanup EG_API declarations, clean up Makefile, 
- add windows documentation, 
- add a c++ facade around HACL functions used in tests (using an internal api exposed in debug builds).  
- Fix string literal values in ballot nonce serialization.
- statically link  in libstdc++
-

* stub windows action test runner

* TABS OVER SPACES

* only statically link on windows for now

minor adjustments to the CI workflow

* use test command on osx, adjust system path for msys2


try using msys2 explicit shell invocation


try installing msys2 with choco

* try using the official msys github action

* remove pacman commands


set github path, only run msys on windows


try fix windows run


try modify path


Try shell change

* Use cmake to copy the windows dll to the output directory

* remove demo app

* Implement Placeholder selections, add ElectionDescription

Add the missing ElectionDescription and verify that a manifest can be serialized.  Add ContestDescriptionWithPlaceholders and generate the placeholder selections when an InternalElectionDescription is instantiated.  Add documentation to classes touched.  Refactor namespace usage to use explicit calls in public headers.  Move refactor ballot and election generation tot he generators folder.  Add tests for verifying serialization.

Note: this PR is still very lightly tested.  See: #95

* Try update codeQL

* fix some compiler warnings

* fix use of gmtime
2021-02-05 09:05:08 -05:00
Matt Wilhelm 12115225f1
Compile for Windows using MSYS2 (#121)
* Use HMAC DRBG

* Increment Version Number

* Add missing API functions for plaintext and ciphertext ballots

Add the plaintext and ciphertext versions of property getters for several functions missing on the ballot.h interface.  Add a C test to demonstrate traversing some of the property getters.

* Add netstandard unit test shared project

* Add missing C# ballot objects and interface stubs

* Add missing property accessors

add c# unit tests for ios

* remove debug line

* Compile for Windows

- cleanup EG_API declarations, clean up Makefile, 
- add windows documentation, 
- add a c++ facade around HACL functions used in tests (using an internal api exposed in debug builds).  
- Fix string literal values in ballot nonce serialization.
- statically link  in libstdc++
-

* stub windows action test runner

* TABS OVER SPACES

* only statically link on windows for now

minor adjustments to the CI workflow

* use test command on osx, adjust system path for msys2


try using msys2 explicit shell invocation


try installing msys2 with choco

* try using the official msys github action

* remove pacman commands


set github path, only run msys on windows


try fix windows run


try modify path


Try shell change

* Use cmake to copy the windows dll to the output directory

* remove demo app
2021-02-02 17:22:51 -05:00
Matt Wilhelm fb0116c167
Feature/property accessors (#118)
* Use HMAC DRBG

* Increment Version Number

* Add missing API functions for plaintext and ciphertext ballots

Add the plaintext and ciphertext versions of property getters for several functions missing on the ballot.h interface.  Add a C test to demonstrate traversing some of the property getters.

* Add netstandard unit test shared project

* Add missing C# ballot objects and interface stubs

* Add missing property accessors

add c# unit tests for ios

* remove debug line

* Fix typo

* update PR workflow linux runners
2021-01-22 09:55:11 -05:00
Matt Wilhelm ffa9409ae3
Use HMAC DRBG (#109)
* Use HMAC DRBG

* Increment Version Number
2021-01-11 12:19:18 -05:00
Matt Wilhelm db42f5f0bc
Sanitize tracker word list (#108) 2020-11-02 20:08:13 -05:00
Matt Wilhelm f3261e7f51
Feature/nullable nonces (#107)
* Initial CI test

* only cpp for now

* fix typo

* use self-allocation on gmtime_r call

* use explicit version

* add back error exclusion

* test coverage

* add variables, reformat

* use explicit version


add back error exclusion


test coverage


add variables, reformat


shorten test loop, add coverage target


tests on mac, sanitizers on linux


test add GCC


add debug/release folders for builds.  add gcc/clang for linux


adjust paths


find android


adjust paths


see


ugh


Comment out android for now

* Build CI

* use console debug on dotnet

* New HACL v9

Add new HACL library

* Add boolean flag to remove nonces from serialization

* increment version number

* remove undefined sanitizer for now

* try use explicit max


use explicit limit

* remove coverage
2020-11-02 10:05:18 -05:00