From 494799a19e436d81ac38ca547da898231e40846a Mon Sep 17 00:00:00 2001
From: Dmitry Puzyrkov <dmitry.puzyrkov@demlabs.net>
Date: Thu, 25 Jul 2024 15:36:11 +0000
Subject: [PATCH] Feature xkcp prebuild

---
 crypto/XKCP/CMakeLists.txt                    |  66 ++++----
 crypto/XKCP/libdap-xkcp-armv8.build           |   4 +-
 .../armv7/libdap-XKCP-armv7-native.a          | Bin 13460 -> 0 bytes
 .../KeccakHash.h                              | 125 ---------------
 .../KeccakP-1600-SnP.h                        |  50 ------
 .../KeccakSponge.h                            |  70 ---------
 .../SimpleFIPS202.h                           |  79 ----------
 .../align.h                                   |  33 ----
 .../brg_endian.h                              | 143 ------------------
 .../config.h                                  |   5 -
 .../armv8/libdap-XKCP-armv8-native.a          | Bin 16970 -> 0 bytes
 .../KeccakHash.h                              | 125 ---------------
 .../KeccakP-1600-SnP.h                        |  39 -----
 .../KeccakSponge.h                            |  70 ---------
 .../SimpleFIPS202.h                           |  79 ----------
 .../align.h                                   |  33 ----
 .../brg_endian.h                              | 143 ------------------
 .../config.h                                  |   5 -
 .../x86_64/libdap-XKCP-x8664-native.a         | Bin 20940 -> 0 bytes
 .../KeccakHash.h                              | 125 ---------------
 .../KeccakP-1600-SnP.h                        |  62 --------
 .../KeccakSponge.h                            |  70 ---------
 .../SimpleFIPS202.h                           |  79 ----------
 .../align.h                                   |  33 ----
 .../brg_endian.h                              | 143 ------------------
 .../config.h                                  |   5 -
 26 files changed, 28 insertions(+), 1558 deletions(-)
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakHash.h
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakP-1600-SnP.h
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakSponge.h
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/SimpleFIPS202.h
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/align.h
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/brg_endian.h
 delete mode 100644 crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/config.h
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakHash.h
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakP-1600-SnP.h
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakSponge.h
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/SimpleFIPS202.h
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/align.h
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/brg_endian.h
 delete mode 100644 crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/config.h
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakHash.h
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakP-1600-SnP.h
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakSponge.h
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/SimpleFIPS202.h
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/align.h
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/brg_endian.h
 delete mode 100644 crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/config.h

diff --git a/crypto/XKCP/CMakeLists.txt b/crypto/XKCP/CMakeLists.txt
index 18dad53dc..03a785e63 100644
--- a/crypto/XKCP/CMakeLists.txt
+++ b/crypto/XKCP/CMakeLists.txt
@@ -6,20 +6,14 @@ project (dap_crypto_XKCP)
 
 add_library(${PROJECT_NAME} STATIC IMPORTED GLOBAL)
 
-option(DAP_CRYPTO_XKCP_USE_PREBUILDS "Use prebuilded optimizations" ON)
 option(DAP_CRYPTO_XKCP_REFERENCE "Use xkcp reference implemintation" OFF)
 
-IF (DAP_CRYPTO_XKCP_USE_PREBUILDS)
-    #all prebuilds are done with gcc, it support -march=native
+#if building from src - check for compiller support
+include(CheckCCompilerFlag)
+unset(COMPILER_SUPPORTS_MARCH_NATIVE CACHE)
+CHECK_C_COMPILER_FLAG(-march=native COMPILER_SUPPORTS_MARCH_NATIVE)
+if(COMPILER_SUPPORTS_MARCH_NATIVE)
     SET(TARGET_POSTFIX "-native")
-else()
-    #if building from src - check for compiller support
-    include(CheckCCompilerFlag)
-    unset(COMPILER_SUPPORTS_MARCH_NATIVE CACHE)
-    CHECK_C_COMPILER_FLAG(-march=native COMPILER_SUPPORTS_MARCH_NATIVE)
-    if(COMPILER_SUPPORTS_MARCH_NATIVE)
-        SET(TARGET_POSTFIX "-native")
-    endif()
 endif()
 
 
@@ -38,37 +32,29 @@ endif()
 IF (DAP_CRYPTO_XKCP_REFERENCE)
     SET(XKCP_TARGET libdap-XKCP-ref${TARGET_POSTFIX}.a)
     message("[!] XKCP: Force use reference impl for ${TARGET_ARCH}")
-    set(DAP_CRYPTO_XKCP_USE_PREBUILDS OFF) 
 endif()
 
-IF (NOT DAP_CRYPTO_XKCP_USE_PREBUILDS)
-
-    SET(XKCP_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/xkcp_build_src/)
-    message("[*] XKCP build from src")
-    message("[*] XKCP target: ${TARGET_ARCH} ${XKCP_TARGET}")
-    message("[*] XKCP build dir: ${XKCP_BUILD_DIR}")
-    message("[*] XKCP make command: ${CMAKE_MAKE_PROGRAM}")
-    message("[*] XKCP make CC: ${CMAKE_C_COMPILER}")
-    message("[*] XKCP make AR: ${CMAKE_AR}")
-    message("[*] XKCP compiller supports -march=native: ${COMPILER_SUPPORTS_MARCH_NATIVE}")
-    message("[*] XKCP SYSROOT: ${CMAKE_OSX_SYSROOT}")
-
-    
-    file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${XKCP_BUILD_DIR})
-    add_custom_target(BuildXKCP ALL
-        COMMAND ${CMAKE_COMMAND}  -E env AR=${CMAKE_AR} CC=${CMAKE_C_COMPILER} SDKROOT=${CMAKE_OSX_SYSROOT}  ${CMAKE_MAKE_PROGRAM} -C ./xkcp_build_src ${XKCP_TARGET}
-    )
-
-    SET(XKCP_BUILD_INCLUDES ${XKCP_BUILD_DIR}/bin/${XKCP_TARGET}.headers/)
-    SET(XKCP_BUILD_LIB ${XKCP_BUILD_DIR}/bin/${XKCP_TARGET})
-    file(MAKE_DIRECTORY ${XKCP_BUILD_INCLUDES})
-
-    add_dependencies(${PROJECT_NAME} BuildXKCP) 
-else()
-    message("[*] XKCP use optimized prebuilds for ${TARGET_ARCH}")
-    SET(XKCP_BUILD_LIB ${CMAKE_CURRENT_SOURCE_DIR}/prebuilds/${TARGET_ARCH}/${XKCP_TARGET})
-    SET(XKCP_BUILD_INCLUDES ${CMAKE_CURRENT_SOURCE_DIR}/prebuilds/${TARGET_ARCH}/${XKCP_TARGET}.headers/)
-endif()
+SET(XKCP_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/xkcp_build_src/)
+message("[*] XKCP build from src")
+message("[*] XKCP target: ${TARGET_ARCH} ${XKCP_TARGET}")
+message("[*] XKCP build dir: ${XKCP_BUILD_DIR}")
+message("[*] XKCP make command: ${CMAKE_MAKE_PROGRAM}")
+message("[*] XKCP make CC: ${CMAKE_C_COMPILER}")
+message("[*] XKCP make AR: ${CMAKE_AR}")
+message("[*] XKCP compiller supports -march=native: ${COMPILER_SUPPORTS_MARCH_NATIVE}")
+message("[*] XKCP SYSROOT: ${CMAKE_OSX_SYSROOT}")
+
+
+file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${XKCP_BUILD_DIR})
+add_custom_target(BuildXKCP ALL
+    COMMAND ${CMAKE_COMMAND}  -E env AR=${CMAKE_AR} CC=${CMAKE_C_COMPILER} SDKROOT=${CMAKE_OSX_SYSROOT}  ${CMAKE_MAKE_PROGRAM} -C ./xkcp_build_src ${XKCP_TARGET}
+)
+
+SET(XKCP_BUILD_INCLUDES ${XKCP_BUILD_DIR}/bin/${XKCP_TARGET}.headers/)
+SET(XKCP_BUILD_LIB ${XKCP_BUILD_DIR}/bin/${XKCP_TARGET})
+file(MAKE_DIRECTORY ${XKCP_BUILD_INCLUDES})
+
+add_dependencies(${PROJECT_NAME} BuildXKCP) 
 
 #hack to create a path for INTERFACE_INCLUDE_DIRECTORIES, with will be populated later
 
diff --git a/crypto/XKCP/libdap-xkcp-armv8.build b/crypto/XKCP/libdap-xkcp-armv8.build
index 9e405d2c9..ee8a334f7 100644
--- a/crypto/XKCP/libdap-xkcp-armv8.build
+++ b/crypto/XKCP/libdap-xkcp-armv8.build
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
 <group>
-	<target name="libdap-XKCP-armv8.a" inherits="FIPS202 K1600-ARMv8A"/>
-	<target name="libdap-XKCP-armv8-native.a" inherits="FIPS202 K1600-ARMv8A optimized-march-native"/>
+	<target name="libdap-XKCP-armv8.a" inherits="FIPS202 K1600-plain-64bits-lcua"/>
+	<target name="libdap-XKCP-armv8-native.a" inherits="FIPS202 K1600-plain-64bits-lcua optimized-march-native"/>
 </group>
\ No newline at end of file
diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a
deleted file mode 100644
index 4c535358df8f62aa34b723679eaab0a925d6882a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 13460
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

diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakHash.h b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakHash.h
deleted file mode 100644
index e99d99dbc..000000000
--- a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakHash.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by the designers, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _KeccakHashInterface_h_
-#define _KeccakHashInterface_h_
-
-#include "config.h"
-#ifdef XKCP_has_KeccakP1600
-
-#include <stdint.h>
-#include <string.h>
-#include "KeccakSponge.h"
-
-#ifndef _Keccak_BitTypes_
-#define _Keccak_BitTypes_
-typedef uint8_t BitSequence;
-
-typedef size_t BitLength;
-#endif
-
-typedef enum { KECCAK_SUCCESS = 0, KECCAK_FAIL = 1, KECCAK_BAD_HASHLEN = 2 } HashReturn;
-
-typedef struct {
-    KeccakWidth1600_SpongeInstance sponge;
-    unsigned int fixedOutputLength;
-    unsigned char delimitedSuffix;
-} Keccak_HashInstance;
-
-/**
-  * Function to initialize the Keccak[r, c] sponge function instance used in sequential hashing mode.
-  * @param  hashInstance    Pointer to the hash instance to be initialized.
-  * @param  rate        The value of the rate r.
-  * @param  capacity    The value of the capacity c.
-  * @param  hashbitlen  The desired number of output bits,
-  *                     or 0 for an arbitrarily-long output.
-  * @param  delimitedSuffix Bits that will be automatically appended to the end
-  *                         of the input message, as in domain separation.
-  *                         This is a byte containing from 0 to 7 bits
-  *                         formatted like the @a delimitedData parameter of
-  *                         the Keccak_SpongeAbsorbLastFewBits() function.
-  * @pre    One must have r+c=1600 and the rate a multiple of 8 bits in this implementation.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashInitialize(Keccak_HashInstance *hashInstance, unsigned int rate, unsigned int capacity, unsigned int hashbitlen, unsigned char delimitedSuffix);
-
-/** Macro to initialize a SHAKE128 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHAKE128(hashInstance)        Keccak_HashInitialize(hashInstance, 1344,  256,   0, 0x1F)
-
-/** Macro to initialize a SHAKE256 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHAKE256(hashInstance)        Keccak_HashInitialize(hashInstance, 1088,  512,   0, 0x1F)
-
-/** Macro to initialize a SHA3-224 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_224(hashInstance)        Keccak_HashInitialize(hashInstance, 1152,  448, 224, 0x06)
-
-/** Macro to initialize a SHA3-256 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_256(hashInstance)        Keccak_HashInitialize(hashInstance, 1088,  512, 256, 0x06)
-
-/** Macro to initialize a SHA3-384 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_384(hashInstance)        Keccak_HashInitialize(hashInstance,  832,  768, 384, 0x06)
-
-/** Macro to initialize a SHA3-512 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_512(hashInstance)        Keccak_HashInitialize(hashInstance,  576, 1024, 512, 0x06)
-
-/**
-  * Function to give input data to be absorbed.
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * @param  data        Pointer to the input data.
-  *                     When @a databitLen is not a multiple of 8, the last bits of data must be
-  *                     in the least significant bits of the last byte (little-endian convention).
-  *                     In this case, the (8 - @a databitLen mod 8) most significant bits
-  *                     of the last byte are ignored.
-  * @param  databitLen  The number of input bits provided in the input data.
-  * @pre    In the previous call to Keccak_HashUpdate(), databitlen was a multiple of 8.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashUpdate(Keccak_HashInstance *hashInstance, const BitSequence *data, BitLength databitlen);
-
-/**
-  * Function to call after all input blocks have been input and to get
-  * output bits if the length was specified when calling Keccak_HashInitialize().
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * If @a hashbitlen was not 0 in the call to Keccak_HashInitialize(), the number of
-  *     output bits is equal to @a hashbitlen.
-  * If @a hashbitlen was 0 in the call to Keccak_HashInitialize(), the output bits
-  *     must be extracted using the Keccak_HashSqueeze() function.
-  * @param  hashval     Pointer to the buffer where to store the output data.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashFinal(Keccak_HashInstance *hashInstance, BitSequence *hashval);
-
- /**
-  * Function to squeeze output data.
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * @param  data        Pointer to the buffer where to store the output data.
-  * @param  databitlen  The number of output bits desired (must be a multiple of 8).
-  * @pre    Keccak_HashFinal() must have been already called.
-  * @pre    @a databitlen is a multiple of 8.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashSqueeze(Keccak_HashInstance *hashInstance, BitSequence *data, BitLength databitlen);
-
-#else
-#error This requires an implementation of Keccak-p[1600]
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakP-1600-SnP.h b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakP-1600-SnP.h
deleted file mode 100644
index 9a652f40b..000000000
--- a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakP-1600-SnP.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-The Keccak-p permutations, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by Ronny Van Keer, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-
----
-
-Please refer to SnP-documentation.h for more details.
-*/
-
-#ifndef _KeccakP_1600_SnP_h_
-#define _KeccakP_1600_SnP_h_
-
-#include <stdint.h>
-#include "align.h"
-
-typedef struct {
-    ALIGN(32) uint64_t A[25];
-} KeccakP1600_align256plain64_state;
-
-typedef KeccakP1600_align256plain64_state KeccakP1600_state;
-
-#define KeccakP1600_implementation      "64-bit optimized ARM assembler implementation"
-#define KeccakP1600_stateAlignment      32
-
-/* void KeccakP1600_StaticInitialize( void ); */
-#define KeccakP1600_StaticInitialize()
-void KeccakP1600_Initialize(KeccakP1600_align256plain64_state *state);
-/* void KeccakP1600_AddByte(KeccakP1600_align256plain64_state *state, unsigned char data, unsigned int offset); */
-#define KeccakP1600_AddByte(argS, argData, argOffset)   ((unsigned char*)argS)[argOffset] ^= (argData)
-void KeccakP1600_AddBytes(KeccakP1600_align256plain64_state *state, const unsigned char *data, unsigned int offset, unsigned int length);
-void KeccakP1600_OverwriteBytes(KeccakP1600_align256plain64_state *state, const unsigned char *data, unsigned int offset, unsigned int length);
-void KeccakP1600_OverwriteWithZeroes(KeccakP1600_align256plain64_state *state, unsigned int byteCount);
-void KeccakP1600_Permute_Nrounds(KeccakP1600_align256plain64_state *state, unsigned int nrounds);
-void KeccakP1600_Permute_12rounds(KeccakP1600_align256plain64_state *state);
-void KeccakP1600_Permute_24rounds(KeccakP1600_align256plain64_state *state);
-void KeccakP1600_ExtractBytes(const KeccakP1600_align256plain64_state *state, unsigned char *data, unsigned int offset, unsigned int length);
-void KeccakP1600_ExtractAndAddBytes(const KeccakP1600_align256plain64_state *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length);
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakSponge.h b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakSponge.h
deleted file mode 100644
index 4d4d83f21..000000000
--- a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/KeccakSponge.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by the designers, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _KeccakSponge_h_
-#define _KeccakSponge_h_
-
-/* For the documentation, please follow the link: */
-/* #include "KeccakSponge-documentation.h" */
-
-#include <string.h>
-#include "align.h"
-#include "config.h"
-
-#define XKCP_DeclareSpongeStructure(prefix, state_t) \
-    typedef struct prefix##_SpongeInstanceStruct { \
-        state_t state; \
-        unsigned int rate; \
-        unsigned int byteIOIndex; \
-        int squeezing; \
-    } prefix##_SpongeInstance;
-
-#define XKCP_DeclareSpongeFunctions(prefix) \
-    int prefix##_Sponge(unsigned int rate, unsigned int capacity, const unsigned char *input, size_t inputByteLen, unsigned char suffix, unsigned char *output, size_t outputByteLen); \
-    int prefix##_SpongeInitialize(prefix##_SpongeInstance *spongeInstance, unsigned int rate, unsigned int capacity); \
-    int prefix##_SpongeAbsorb(prefix##_SpongeInstance *spongeInstance, const unsigned char *data, size_t dataByteLen); \
-    int prefix##_SpongeAbsorbLastFewBits(prefix##_SpongeInstance *spongeInstance, unsigned char delimitedData); \
-    int prefix##_SpongeSqueeze(prefix##_SpongeInstance *spongeInstance, unsigned char *data, size_t dataByteLen);
-
-#ifdef XKCP_has_KeccakP200
-    #include "KeccakP-200-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth200, KeccakP200_stateSizeInBytes, KeccakP200_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth200)
-    #define XKCP_has_Sponge_Keccak_width200
-#endif
-
-#ifdef XKCP_has_KeccakP400
-    #include "KeccakP-400-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth400, KeccakP400_stateSizeInBytes, KeccakP400_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth400)
-    #define XKCP_has_Sponge_Keccak_width400
-#endif
-
-#ifdef XKCP_has_KeccakP800
-    #include "KeccakP-800-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth800, KeccakP800_stateSizeInBytes, KeccakP800_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth800)
-    #define XKCP_has_Sponge_Keccak_width800
-#endif
-
-#ifdef XKCP_has_KeccakP1600
-    #include "KeccakP-1600-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth1600, KeccakP1600_state)
-    XKCP_DeclareSpongeFunctions(KeccakWidth1600)
-    #define XKCP_has_Sponge_Keccak_width1600
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/SimpleFIPS202.h b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/SimpleFIPS202.h
deleted file mode 100644
index ec4644030..000000000
--- a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/SimpleFIPS202.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by Gilles Van Assche, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _SimpleFIPS202_h_
-#define _SimpleFIPS202_h_
-
-#include "config.h"
-#ifdef XKCP_has_KeccakP1600
-
-#include <string.h>
-
-/** Implementation of the SHAKE128 extendable output function (XOF) [FIPS 202].
-  * @param  output          Pointer to the output buffer.
-  * @param  outputByteLen   The desired number of output bytes.
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHAKE128(unsigned char *output, size_t outputByteLen, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of the SHAKE256 extendable output function (XOF) [FIPS 202].
-  * @param  output          Pointer to the output buffer.
-  * @param  outputByteLen   The desired number of output bytes.
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHAKE256(unsigned char *output, size_t outputByteLen, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-224 [FIPS 202].
-  * @param  output          Pointer to the output buffer (28 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_224(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-256 [FIPS 202].
-  * @param  output          Pointer to the output buffer (32 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_256(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-384 [FIPS 202].
-  * @param  output          Pointer to the output buffer (48 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_384(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-512 [FIPS 202].
-  * @param  output          Pointer to the output buffer (64 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_512(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-#else
-#error This requires an implementation of Keccak-p[1600]
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/align.h b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/align.h
deleted file mode 100644
index 82ad2f905..000000000
--- a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/align.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Implementation by Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _align_h_
-#define _align_h_
-
-/* on Mac OS-X and possibly others, ALIGN(x) is defined in param.h, and -Werror chokes on the redef. */
-#ifdef ALIGN
-#undef ALIGN
-#endif
-
-#if defined(__GNUC__)
-#define ALIGN(x) __attribute__ ((aligned(x)))
-#elif defined(_MSC_VER)
-#define ALIGN(x) __declspec(align(x))
-#elif defined(__ARMCC_VERSION)
-#define ALIGN(x) __align(x)
-#else
-#define ALIGN(x)
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/brg_endian.h b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/brg_endian.h
deleted file mode 100644
index 7c640b90e..000000000
--- a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/brg_endian.h
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- ---------------------------------------------------------------------------
- Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.
-
- LICENSE TERMS
-
- The redistribution and use of this software (with or without changes)
- is allowed without the payment of fees or royalties provided that:
-
-  1. source code distributions include the above copyright notice, this
-     list of conditions and the following disclaimer;
-
-  2. binary distributions include the above copyright notice, this list
-     of conditions and the following disclaimer in their documentation;
-
-  3. the name of the copyright holder is not used to endorse products
-     built using this software without specific written permission.
-
- DISCLAIMER
-
- This software is provided 'as is' with no explicit or implied warranties
- in respect of its properties, including, but not limited to, correctness
- and/or fitness for purpose.
- ---------------------------------------------------------------------------
- Issue Date: 20/12/2007
- Changes for ARM 9/9/2010
-*/
-
-#ifndef _BRG_ENDIAN_H
-#define _BRG_ENDIAN_H
-
-#define IS_BIG_ENDIAN      4321 /* byte 0 is most significant (mc68k) */
-#define IS_LITTLE_ENDIAN   1234 /* byte 0 is least significant (i386) */
-
-#if 0
-/* Include files where endian defines and byteswap functions may reside */
-#if defined( __sun )
-#  include <sys/isa_defs.h>
-#elif defined( __FreeBSD__ ) || defined( __OpenBSD__ ) || defined( __NetBSD__ )
-#  include <sys/endian.h>
-#elif defined( BSD ) && ( BSD >= 199103 ) || defined( __APPLE__ ) || \
-      defined( __CYGWIN32__ ) || defined( __DJGPP__ ) || defined( __osf__ )
-#  include <machine/endian.h>
-#elif defined( __linux__ ) || defined( __GNUC__ ) || defined( __GNU_LIBRARY__ )
-#  if !defined( __MINGW32__ ) && !defined( _AIX )
-#    include <endian.h>
-#    if !defined( __BEOS__ )
-#      include <byteswap.h>
-#    endif
-#  endif
-#endif
-#endif
-
-/* Now attempt to set the define for platform byte order using any  */
-/* of the four forms SYMBOL, _SYMBOL, __SYMBOL & __SYMBOL__, which  */
-/* seem to encompass most endian symbol definitions                 */
-
-#if defined( BIG_ENDIAN ) && defined( LITTLE_ENDIAN )
-#  if defined( BYTE_ORDER ) && BYTE_ORDER == BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( BYTE_ORDER ) && BYTE_ORDER == LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( _BIG_ENDIAN ) && defined( _LITTLE_ENDIAN )
-#  if defined( _BYTE_ORDER ) && _BYTE_ORDER == _BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( _BYTE_ORDER ) && _BYTE_ORDER == _LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( _BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( _LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( __BIG_ENDIAN ) && defined( __LITTLE_ENDIAN )
-#  if defined( __BYTE_ORDER ) && __BYTE_ORDER == __BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( __BYTE_ORDER ) && __BYTE_ORDER == __LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( __BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( __LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( __BIG_ENDIAN__ ) && defined( __LITTLE_ENDIAN__ )
-#  if defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __BIG_ENDIAN__
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __LITTLE_ENDIAN__
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( __BIG_ENDIAN__ )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( __LITTLE_ENDIAN__ )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-/*  if the platform byte order could not be determined, then try to */
-/*  set this define using common machine defines                    */
-#if !defined(PLATFORM_BYTE_ORDER)
-
-#if   defined( __alpha__ ) || defined( __alpha ) || defined( i386 )       || \
-      defined( __i386__ )  || defined( _M_I86 )  || defined( _M_IX86 )    || \
-      defined( __OS2__ )   || defined( sun386 )  || defined( __TURBOC__ ) || \
-      defined( vax )       || defined( vms )     || defined( VMS )        || \
-      defined( __VMS )     || defined( _M_X64 )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-
-#elif defined( AMIGA )    || defined( applec )    || defined( __AS400__ )  || \
-      defined( _CRAY )    || defined( __hppa )    || defined( __hp9000 )   || \
-      defined( ibm370 )   || defined( mc68000 )   || defined( m68k )       || \
-      defined( __MRC__ )  || defined( __MVS__ )   || defined( __MWERKS__ ) || \
-      defined( sparc )    || defined( __sparc)    || defined( SYMANTEC_C ) || \
-      defined( __VOS__ )  || defined( __TIGCC__ ) || defined( __TANDEM )   || \
-      defined( THINK_C )  || defined( __VMCMS__ ) || defined( _AIX )       || \
-      defined( __s390__ ) || defined( __s390x__ ) || defined( __zarch__ )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-
-#elif defined(__arm__)
-# ifdef __BIG_ENDIAN
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-# else
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-# endif
-#elif 1     /* **** EDIT HERE IF NECESSARY **** */
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#elif 0     /* **** EDIT HERE IF NECESSARY **** */
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#else
-#  error Please edit lines 132 or 134 in brg_endian.h to set the platform byte order
-#endif
-
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/config.h b/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/config.h
deleted file mode 100644
index 97f857dd1..000000000
--- a/crypto/XKCP/prebuilds/armv7/libdap-XKCP-armv7-native.a.headers/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* File generated by ToTargetConfigFile.xsl */
-
-#define XKCP_has_Sponge_Keccak
-#define XKCP_has_FIPS202
-#define XKCP_has_KeccakP1600
diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a
deleted file mode 100644
index 389e8e2ec767c25b8544f15d8d09ed059b00c574..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 16970
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
M>rY-&#7FJ_f3o&7H2?qr

diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakHash.h b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakHash.h
deleted file mode 100644
index e99d99dbc..000000000
--- a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakHash.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by the designers, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _KeccakHashInterface_h_
-#define _KeccakHashInterface_h_
-
-#include "config.h"
-#ifdef XKCP_has_KeccakP1600
-
-#include <stdint.h>
-#include <string.h>
-#include "KeccakSponge.h"
-
-#ifndef _Keccak_BitTypes_
-#define _Keccak_BitTypes_
-typedef uint8_t BitSequence;
-
-typedef size_t BitLength;
-#endif
-
-typedef enum { KECCAK_SUCCESS = 0, KECCAK_FAIL = 1, KECCAK_BAD_HASHLEN = 2 } HashReturn;
-
-typedef struct {
-    KeccakWidth1600_SpongeInstance sponge;
-    unsigned int fixedOutputLength;
-    unsigned char delimitedSuffix;
-} Keccak_HashInstance;
-
-/**
-  * Function to initialize the Keccak[r, c] sponge function instance used in sequential hashing mode.
-  * @param  hashInstance    Pointer to the hash instance to be initialized.
-  * @param  rate        The value of the rate r.
-  * @param  capacity    The value of the capacity c.
-  * @param  hashbitlen  The desired number of output bits,
-  *                     or 0 for an arbitrarily-long output.
-  * @param  delimitedSuffix Bits that will be automatically appended to the end
-  *                         of the input message, as in domain separation.
-  *                         This is a byte containing from 0 to 7 bits
-  *                         formatted like the @a delimitedData parameter of
-  *                         the Keccak_SpongeAbsorbLastFewBits() function.
-  * @pre    One must have r+c=1600 and the rate a multiple of 8 bits in this implementation.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashInitialize(Keccak_HashInstance *hashInstance, unsigned int rate, unsigned int capacity, unsigned int hashbitlen, unsigned char delimitedSuffix);
-
-/** Macro to initialize a SHAKE128 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHAKE128(hashInstance)        Keccak_HashInitialize(hashInstance, 1344,  256,   0, 0x1F)
-
-/** Macro to initialize a SHAKE256 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHAKE256(hashInstance)        Keccak_HashInitialize(hashInstance, 1088,  512,   0, 0x1F)
-
-/** Macro to initialize a SHA3-224 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_224(hashInstance)        Keccak_HashInitialize(hashInstance, 1152,  448, 224, 0x06)
-
-/** Macro to initialize a SHA3-256 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_256(hashInstance)        Keccak_HashInitialize(hashInstance, 1088,  512, 256, 0x06)
-
-/** Macro to initialize a SHA3-384 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_384(hashInstance)        Keccak_HashInitialize(hashInstance,  832,  768, 384, 0x06)
-
-/** Macro to initialize a SHA3-512 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_512(hashInstance)        Keccak_HashInitialize(hashInstance,  576, 1024, 512, 0x06)
-
-/**
-  * Function to give input data to be absorbed.
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * @param  data        Pointer to the input data.
-  *                     When @a databitLen is not a multiple of 8, the last bits of data must be
-  *                     in the least significant bits of the last byte (little-endian convention).
-  *                     In this case, the (8 - @a databitLen mod 8) most significant bits
-  *                     of the last byte are ignored.
-  * @param  databitLen  The number of input bits provided in the input data.
-  * @pre    In the previous call to Keccak_HashUpdate(), databitlen was a multiple of 8.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashUpdate(Keccak_HashInstance *hashInstance, const BitSequence *data, BitLength databitlen);
-
-/**
-  * Function to call after all input blocks have been input and to get
-  * output bits if the length was specified when calling Keccak_HashInitialize().
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * If @a hashbitlen was not 0 in the call to Keccak_HashInitialize(), the number of
-  *     output bits is equal to @a hashbitlen.
-  * If @a hashbitlen was 0 in the call to Keccak_HashInitialize(), the output bits
-  *     must be extracted using the Keccak_HashSqueeze() function.
-  * @param  hashval     Pointer to the buffer where to store the output data.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashFinal(Keccak_HashInstance *hashInstance, BitSequence *hashval);
-
- /**
-  * Function to squeeze output data.
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * @param  data        Pointer to the buffer where to store the output data.
-  * @param  databitlen  The number of output bits desired (must be a multiple of 8).
-  * @pre    Keccak_HashFinal() must have been already called.
-  * @pre    @a databitlen is a multiple of 8.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashSqueeze(Keccak_HashInstance *hashInstance, BitSequence *data, BitLength databitlen);
-
-#else
-#error This requires an implementation of Keccak-p[1600]
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakP-1600-SnP.h b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakP-1600-SnP.h
deleted file mode 100644
index e22e17d9b..000000000
--- a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakP-1600-SnP.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Implementation by Andre Moraes
-
----
-
-Please refer to SnP-documentation.h for more details.
-*/
-
-#ifndef _KeccakP_1600_SnP_h_
-#define _KeccakP_1600_SnP_h_
-
-#include <stdint.h>
-#include "align.h"
-
-typedef struct {
-    ALIGN(64) uint64_t A[25];
-} KeccakP1600_align512plain64_state;
-
-typedef KeccakP1600_align512plain64_state KeccakP1600_state;
-
-#define KeccakP1600_implementation      "64-bit optimized ARMv8a assembler implementation"
-#define KeccakP1600_stateAlignment      64
-
-#define KeccakP1600_StaticInitialize()
-void KeccakP1600_Initialize(KeccakP1600_align512plain64_state *state);
-void KeccakP1600_AddByte(KeccakP1600_align512plain64_state *state, unsigned char data, unsigned int offset);
-void KeccakP1600_AddBytes(KeccakP1600_align512plain64_state *state, const unsigned char *data, unsigned int offset, unsigned int length);
-void KeccakP1600_OverwriteBytes(KeccakP1600_align512plain64_state *state, const unsigned char *data, unsigned int offset, unsigned int length);
-void KeccakP1600_OverwriteWithZeroes(KeccakP1600_align512plain64_state *state, unsigned int byteCount);
-void KeccakP1600_Permute_Nrounds(KeccakP1600_align512plain64_state *state, unsigned int nrounds);
-void KeccakP1600_Permute_12rounds(KeccakP1600_align512plain64_state *state);
-void KeccakP1600_Permute_24rounds(KeccakP1600_align512plain64_state *state);
-void KeccakP1600_ExtractBytes(const KeccakP1600_align512plain64_state *state, unsigned char *data, unsigned int offset, unsigned int length);
-void KeccakP1600_ExtractAndAddBytes(const KeccakP1600_align512plain64_state *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length);
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakSponge.h b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakSponge.h
deleted file mode 100644
index 4d4d83f21..000000000
--- a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/KeccakSponge.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by the designers, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _KeccakSponge_h_
-#define _KeccakSponge_h_
-
-/* For the documentation, please follow the link: */
-/* #include "KeccakSponge-documentation.h" */
-
-#include <string.h>
-#include "align.h"
-#include "config.h"
-
-#define XKCP_DeclareSpongeStructure(prefix, state_t) \
-    typedef struct prefix##_SpongeInstanceStruct { \
-        state_t state; \
-        unsigned int rate; \
-        unsigned int byteIOIndex; \
-        int squeezing; \
-    } prefix##_SpongeInstance;
-
-#define XKCP_DeclareSpongeFunctions(prefix) \
-    int prefix##_Sponge(unsigned int rate, unsigned int capacity, const unsigned char *input, size_t inputByteLen, unsigned char suffix, unsigned char *output, size_t outputByteLen); \
-    int prefix##_SpongeInitialize(prefix##_SpongeInstance *spongeInstance, unsigned int rate, unsigned int capacity); \
-    int prefix##_SpongeAbsorb(prefix##_SpongeInstance *spongeInstance, const unsigned char *data, size_t dataByteLen); \
-    int prefix##_SpongeAbsorbLastFewBits(prefix##_SpongeInstance *spongeInstance, unsigned char delimitedData); \
-    int prefix##_SpongeSqueeze(prefix##_SpongeInstance *spongeInstance, unsigned char *data, size_t dataByteLen);
-
-#ifdef XKCP_has_KeccakP200
-    #include "KeccakP-200-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth200, KeccakP200_stateSizeInBytes, KeccakP200_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth200)
-    #define XKCP_has_Sponge_Keccak_width200
-#endif
-
-#ifdef XKCP_has_KeccakP400
-    #include "KeccakP-400-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth400, KeccakP400_stateSizeInBytes, KeccakP400_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth400)
-    #define XKCP_has_Sponge_Keccak_width400
-#endif
-
-#ifdef XKCP_has_KeccakP800
-    #include "KeccakP-800-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth800, KeccakP800_stateSizeInBytes, KeccakP800_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth800)
-    #define XKCP_has_Sponge_Keccak_width800
-#endif
-
-#ifdef XKCP_has_KeccakP1600
-    #include "KeccakP-1600-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth1600, KeccakP1600_state)
-    XKCP_DeclareSpongeFunctions(KeccakWidth1600)
-    #define XKCP_has_Sponge_Keccak_width1600
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/SimpleFIPS202.h b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/SimpleFIPS202.h
deleted file mode 100644
index ec4644030..000000000
--- a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/SimpleFIPS202.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by Gilles Van Assche, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _SimpleFIPS202_h_
-#define _SimpleFIPS202_h_
-
-#include "config.h"
-#ifdef XKCP_has_KeccakP1600
-
-#include <string.h>
-
-/** Implementation of the SHAKE128 extendable output function (XOF) [FIPS 202].
-  * @param  output          Pointer to the output buffer.
-  * @param  outputByteLen   The desired number of output bytes.
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHAKE128(unsigned char *output, size_t outputByteLen, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of the SHAKE256 extendable output function (XOF) [FIPS 202].
-  * @param  output          Pointer to the output buffer.
-  * @param  outputByteLen   The desired number of output bytes.
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHAKE256(unsigned char *output, size_t outputByteLen, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-224 [FIPS 202].
-  * @param  output          Pointer to the output buffer (28 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_224(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-256 [FIPS 202].
-  * @param  output          Pointer to the output buffer (32 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_256(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-384 [FIPS 202].
-  * @param  output          Pointer to the output buffer (48 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_384(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-512 [FIPS 202].
-  * @param  output          Pointer to the output buffer (64 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_512(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-#else
-#error This requires an implementation of Keccak-p[1600]
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/align.h b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/align.h
deleted file mode 100644
index 82ad2f905..000000000
--- a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/align.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Implementation by Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _align_h_
-#define _align_h_
-
-/* on Mac OS-X and possibly others, ALIGN(x) is defined in param.h, and -Werror chokes on the redef. */
-#ifdef ALIGN
-#undef ALIGN
-#endif
-
-#if defined(__GNUC__)
-#define ALIGN(x) __attribute__ ((aligned(x)))
-#elif defined(_MSC_VER)
-#define ALIGN(x) __declspec(align(x))
-#elif defined(__ARMCC_VERSION)
-#define ALIGN(x) __align(x)
-#else
-#define ALIGN(x)
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/brg_endian.h b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/brg_endian.h
deleted file mode 100644
index 7c640b90e..000000000
--- a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/brg_endian.h
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- ---------------------------------------------------------------------------
- Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.
-
- LICENSE TERMS
-
- The redistribution and use of this software (with or without changes)
- is allowed without the payment of fees or royalties provided that:
-
-  1. source code distributions include the above copyright notice, this
-     list of conditions and the following disclaimer;
-
-  2. binary distributions include the above copyright notice, this list
-     of conditions and the following disclaimer in their documentation;
-
-  3. the name of the copyright holder is not used to endorse products
-     built using this software without specific written permission.
-
- DISCLAIMER
-
- This software is provided 'as is' with no explicit or implied warranties
- in respect of its properties, including, but not limited to, correctness
- and/or fitness for purpose.
- ---------------------------------------------------------------------------
- Issue Date: 20/12/2007
- Changes for ARM 9/9/2010
-*/
-
-#ifndef _BRG_ENDIAN_H
-#define _BRG_ENDIAN_H
-
-#define IS_BIG_ENDIAN      4321 /* byte 0 is most significant (mc68k) */
-#define IS_LITTLE_ENDIAN   1234 /* byte 0 is least significant (i386) */
-
-#if 0
-/* Include files where endian defines and byteswap functions may reside */
-#if defined( __sun )
-#  include <sys/isa_defs.h>
-#elif defined( __FreeBSD__ ) || defined( __OpenBSD__ ) || defined( __NetBSD__ )
-#  include <sys/endian.h>
-#elif defined( BSD ) && ( BSD >= 199103 ) || defined( __APPLE__ ) || \
-      defined( __CYGWIN32__ ) || defined( __DJGPP__ ) || defined( __osf__ )
-#  include <machine/endian.h>
-#elif defined( __linux__ ) || defined( __GNUC__ ) || defined( __GNU_LIBRARY__ )
-#  if !defined( __MINGW32__ ) && !defined( _AIX )
-#    include <endian.h>
-#    if !defined( __BEOS__ )
-#      include <byteswap.h>
-#    endif
-#  endif
-#endif
-#endif
-
-/* Now attempt to set the define for platform byte order using any  */
-/* of the four forms SYMBOL, _SYMBOL, __SYMBOL & __SYMBOL__, which  */
-/* seem to encompass most endian symbol definitions                 */
-
-#if defined( BIG_ENDIAN ) && defined( LITTLE_ENDIAN )
-#  if defined( BYTE_ORDER ) && BYTE_ORDER == BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( BYTE_ORDER ) && BYTE_ORDER == LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( _BIG_ENDIAN ) && defined( _LITTLE_ENDIAN )
-#  if defined( _BYTE_ORDER ) && _BYTE_ORDER == _BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( _BYTE_ORDER ) && _BYTE_ORDER == _LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( _BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( _LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( __BIG_ENDIAN ) && defined( __LITTLE_ENDIAN )
-#  if defined( __BYTE_ORDER ) && __BYTE_ORDER == __BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( __BYTE_ORDER ) && __BYTE_ORDER == __LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( __BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( __LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( __BIG_ENDIAN__ ) && defined( __LITTLE_ENDIAN__ )
-#  if defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __BIG_ENDIAN__
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __LITTLE_ENDIAN__
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( __BIG_ENDIAN__ )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( __LITTLE_ENDIAN__ )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-/*  if the platform byte order could not be determined, then try to */
-/*  set this define using common machine defines                    */
-#if !defined(PLATFORM_BYTE_ORDER)
-
-#if   defined( __alpha__ ) || defined( __alpha ) || defined( i386 )       || \
-      defined( __i386__ )  || defined( _M_I86 )  || defined( _M_IX86 )    || \
-      defined( __OS2__ )   || defined( sun386 )  || defined( __TURBOC__ ) || \
-      defined( vax )       || defined( vms )     || defined( VMS )        || \
-      defined( __VMS )     || defined( _M_X64 )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-
-#elif defined( AMIGA )    || defined( applec )    || defined( __AS400__ )  || \
-      defined( _CRAY )    || defined( __hppa )    || defined( __hp9000 )   || \
-      defined( ibm370 )   || defined( mc68000 )   || defined( m68k )       || \
-      defined( __MRC__ )  || defined( __MVS__ )   || defined( __MWERKS__ ) || \
-      defined( sparc )    || defined( __sparc)    || defined( SYMANTEC_C ) || \
-      defined( __VOS__ )  || defined( __TIGCC__ ) || defined( __TANDEM )   || \
-      defined( THINK_C )  || defined( __VMCMS__ ) || defined( _AIX )       || \
-      defined( __s390__ ) || defined( __s390x__ ) || defined( __zarch__ )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-
-#elif defined(__arm__)
-# ifdef __BIG_ENDIAN
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-# else
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-# endif
-#elif 1     /* **** EDIT HERE IF NECESSARY **** */
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#elif 0     /* **** EDIT HERE IF NECESSARY **** */
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#else
-#  error Please edit lines 132 or 134 in brg_endian.h to set the platform byte order
-#endif
-
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/config.h b/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/config.h
deleted file mode 100644
index 97f857dd1..000000000
--- a/crypto/XKCP/prebuilds/armv8/libdap-XKCP-armv8-native.a.headers/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* File generated by ToTargetConfigFile.xsl */
-
-#define XKCP_has_Sponge_Keccak
-#define XKCP_has_FIPS202
-#define XKCP_has_KeccakP1600
diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a
deleted file mode 100644
index 6b71810ab287c1dc1e920974e36f4f7b6bb8e240..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 20940
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
Wa4e5cTHhFcO5?}g-!L6f|9=6uDlo+W

diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakHash.h b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakHash.h
deleted file mode 100644
index e99d99dbc..000000000
--- a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakHash.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by the designers, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _KeccakHashInterface_h_
-#define _KeccakHashInterface_h_
-
-#include "config.h"
-#ifdef XKCP_has_KeccakP1600
-
-#include <stdint.h>
-#include <string.h>
-#include "KeccakSponge.h"
-
-#ifndef _Keccak_BitTypes_
-#define _Keccak_BitTypes_
-typedef uint8_t BitSequence;
-
-typedef size_t BitLength;
-#endif
-
-typedef enum { KECCAK_SUCCESS = 0, KECCAK_FAIL = 1, KECCAK_BAD_HASHLEN = 2 } HashReturn;
-
-typedef struct {
-    KeccakWidth1600_SpongeInstance sponge;
-    unsigned int fixedOutputLength;
-    unsigned char delimitedSuffix;
-} Keccak_HashInstance;
-
-/**
-  * Function to initialize the Keccak[r, c] sponge function instance used in sequential hashing mode.
-  * @param  hashInstance    Pointer to the hash instance to be initialized.
-  * @param  rate        The value of the rate r.
-  * @param  capacity    The value of the capacity c.
-  * @param  hashbitlen  The desired number of output bits,
-  *                     or 0 for an arbitrarily-long output.
-  * @param  delimitedSuffix Bits that will be automatically appended to the end
-  *                         of the input message, as in domain separation.
-  *                         This is a byte containing from 0 to 7 bits
-  *                         formatted like the @a delimitedData parameter of
-  *                         the Keccak_SpongeAbsorbLastFewBits() function.
-  * @pre    One must have r+c=1600 and the rate a multiple of 8 bits in this implementation.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashInitialize(Keccak_HashInstance *hashInstance, unsigned int rate, unsigned int capacity, unsigned int hashbitlen, unsigned char delimitedSuffix);
-
-/** Macro to initialize a SHAKE128 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHAKE128(hashInstance)        Keccak_HashInitialize(hashInstance, 1344,  256,   0, 0x1F)
-
-/** Macro to initialize a SHAKE256 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHAKE256(hashInstance)        Keccak_HashInitialize(hashInstance, 1088,  512,   0, 0x1F)
-
-/** Macro to initialize a SHA3-224 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_224(hashInstance)        Keccak_HashInitialize(hashInstance, 1152,  448, 224, 0x06)
-
-/** Macro to initialize a SHA3-256 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_256(hashInstance)        Keccak_HashInitialize(hashInstance, 1088,  512, 256, 0x06)
-
-/** Macro to initialize a SHA3-384 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_384(hashInstance)        Keccak_HashInitialize(hashInstance,  832,  768, 384, 0x06)
-
-/** Macro to initialize a SHA3-512 instance as specified in the FIPS 202 standard.
-  */
-#define Keccak_HashInitialize_SHA3_512(hashInstance)        Keccak_HashInitialize(hashInstance,  576, 1024, 512, 0x06)
-
-/**
-  * Function to give input data to be absorbed.
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * @param  data        Pointer to the input data.
-  *                     When @a databitLen is not a multiple of 8, the last bits of data must be
-  *                     in the least significant bits of the last byte (little-endian convention).
-  *                     In this case, the (8 - @a databitLen mod 8) most significant bits
-  *                     of the last byte are ignored.
-  * @param  databitLen  The number of input bits provided in the input data.
-  * @pre    In the previous call to Keccak_HashUpdate(), databitlen was a multiple of 8.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashUpdate(Keccak_HashInstance *hashInstance, const BitSequence *data, BitLength databitlen);
-
-/**
-  * Function to call after all input blocks have been input and to get
-  * output bits if the length was specified when calling Keccak_HashInitialize().
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * If @a hashbitlen was not 0 in the call to Keccak_HashInitialize(), the number of
-  *     output bits is equal to @a hashbitlen.
-  * If @a hashbitlen was 0 in the call to Keccak_HashInitialize(), the output bits
-  *     must be extracted using the Keccak_HashSqueeze() function.
-  * @param  hashval     Pointer to the buffer where to store the output data.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashFinal(Keccak_HashInstance *hashInstance, BitSequence *hashval);
-
- /**
-  * Function to squeeze output data.
-  * @param  hashInstance    Pointer to the hash instance initialized by Keccak_HashInitialize().
-  * @param  data        Pointer to the buffer where to store the output data.
-  * @param  databitlen  The number of output bits desired (must be a multiple of 8).
-  * @pre    Keccak_HashFinal() must have been already called.
-  * @pre    @a databitlen is a multiple of 8.
-  * @return KECCAK_SUCCESS if successful, KECCAK_FAIL otherwise.
-  */
-HashReturn Keccak_HashSqueeze(Keccak_HashInstance *hashInstance, BitSequence *data, BitLength databitlen);
-
-#else
-#error This requires an implementation of Keccak-p[1600]
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakP-1600-SnP.h b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakP-1600-SnP.h
deleted file mode 100644
index 4274d07d2..000000000
--- a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakP-1600-SnP.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-The Keccak-p permutations, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by Ronny Van Keer, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-
----
-
-Please refer to SnP-documentation.h for more details.
-*/
-
-#ifndef _KeccakP_1600_SnP_h_
-#define _KeccakP_1600_SnP_h_
-
-#include <stddef.h>
-#include <stdint.h>
-
-#ifdef __MINGW32__
-#define FORCE_SYSV __attribute__((sysv_abi))
-#else
-#define FORCE_SYSV
-#endif
-
-typedef struct {
-    uint64_t Aba, Abe, Abi, Abo, Abu;
-    uint64_t Aka, Asa, Aga, Ama;
-    uint64_t Ame, Agi, Aso, Aku;
-    uint64_t Ake, Asi, Ago, Amu;
-    uint64_t Ase, Ami, Ako, Agu;
-    uint64_t Age, Aki, Amo, Asu;
-} KeccakP1600_AVX2_state;
-
-typedef KeccakP1600_AVX2_state KeccakP1600_state;
-
-#define KeccakP1600_implementation      "AVX2 optimized implementation"
-#define KeccakF1600_FastLoop_supported
-#define KeccakP1600_12rounds_FastLoop_supported
-
-#define KeccakP1600_StaticInitialize()
-FORCE_SYSV void KeccakP1600_Initialize(KeccakP1600_AVX2_state *state);
-FORCE_SYSV void KeccakP1600_AddByte(KeccakP1600_AVX2_state *state, unsigned char data, unsigned int offset);
-FORCE_SYSV void KeccakP1600_AddBytes(KeccakP1600_AVX2_state *state, const unsigned char *data, unsigned int offset, unsigned int length);
-FORCE_SYSV void KeccakP1600_OverwriteBytes(KeccakP1600_AVX2_state *state, const unsigned char *data, unsigned int offset, unsigned int length);
-FORCE_SYSV void KeccakP1600_OverwriteWithZeroes(KeccakP1600_AVX2_state *state, unsigned int byteCount);
-FORCE_SYSV void KeccakP1600_Permute_Nrounds(KeccakP1600_AVX2_state *state, unsigned int nrounds);
-FORCE_SYSV void KeccakP1600_Permute_12rounds(KeccakP1600_AVX2_state *state);
-FORCE_SYSV void KeccakP1600_Permute_24rounds(KeccakP1600_AVX2_state *state);
-FORCE_SYSV void KeccakP1600_ExtractBytes(const KeccakP1600_AVX2_state *state, unsigned char *data, unsigned int offset, unsigned int length);
-FORCE_SYSV void KeccakP1600_ExtractAndAddBytes(const KeccakP1600_AVX2_state *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length);
-FORCE_SYSV size_t KeccakF1600_FastLoop_Absorb(KeccakP1600_AVX2_state *state, unsigned int laneCount, const unsigned char *data, size_t dataByteLen);
-FORCE_SYSV size_t KeccakP1600_12rounds_FastLoop_Absorb(KeccakP1600_AVX2_state *state, unsigned int laneCount, const unsigned char *data, size_t dataByteLen);
-
-#endif
diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakSponge.h b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakSponge.h
deleted file mode 100644
index 4d4d83f21..000000000
--- a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/KeccakSponge.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by the designers, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _KeccakSponge_h_
-#define _KeccakSponge_h_
-
-/* For the documentation, please follow the link: */
-/* #include "KeccakSponge-documentation.h" */
-
-#include <string.h>
-#include "align.h"
-#include "config.h"
-
-#define XKCP_DeclareSpongeStructure(prefix, state_t) \
-    typedef struct prefix##_SpongeInstanceStruct { \
-        state_t state; \
-        unsigned int rate; \
-        unsigned int byteIOIndex; \
-        int squeezing; \
-    } prefix##_SpongeInstance;
-
-#define XKCP_DeclareSpongeFunctions(prefix) \
-    int prefix##_Sponge(unsigned int rate, unsigned int capacity, const unsigned char *input, size_t inputByteLen, unsigned char suffix, unsigned char *output, size_t outputByteLen); \
-    int prefix##_SpongeInitialize(prefix##_SpongeInstance *spongeInstance, unsigned int rate, unsigned int capacity); \
-    int prefix##_SpongeAbsorb(prefix##_SpongeInstance *spongeInstance, const unsigned char *data, size_t dataByteLen); \
-    int prefix##_SpongeAbsorbLastFewBits(prefix##_SpongeInstance *spongeInstance, unsigned char delimitedData); \
-    int prefix##_SpongeSqueeze(prefix##_SpongeInstance *spongeInstance, unsigned char *data, size_t dataByteLen);
-
-#ifdef XKCP_has_KeccakP200
-    #include "KeccakP-200-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth200, KeccakP200_stateSizeInBytes, KeccakP200_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth200)
-    #define XKCP_has_Sponge_Keccak_width200
-#endif
-
-#ifdef XKCP_has_KeccakP400
-    #include "KeccakP-400-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth400, KeccakP400_stateSizeInBytes, KeccakP400_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth400)
-    #define XKCP_has_Sponge_Keccak_width400
-#endif
-
-#ifdef XKCP_has_KeccakP800
-    #include "KeccakP-800-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth800, KeccakP800_stateSizeInBytes, KeccakP800_stateAlignment)
-    XKCP_DeclareSpongeFunctions(KeccakWidth800)
-    #define XKCP_has_Sponge_Keccak_width800
-#endif
-
-#ifdef XKCP_has_KeccakP1600
-    #include "KeccakP-1600-SnP.h"
-    XKCP_DeclareSpongeStructure(KeccakWidth1600, KeccakP1600_state)
-    XKCP_DeclareSpongeFunctions(KeccakWidth1600)
-    #define XKCP_has_Sponge_Keccak_width1600
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/SimpleFIPS202.h b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/SimpleFIPS202.h
deleted file mode 100644
index ec4644030..000000000
--- a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/SimpleFIPS202.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Keccak, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche.
-
-Implementation by Gilles Van Assche, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _SimpleFIPS202_h_
-#define _SimpleFIPS202_h_
-
-#include "config.h"
-#ifdef XKCP_has_KeccakP1600
-
-#include <string.h>
-
-/** Implementation of the SHAKE128 extendable output function (XOF) [FIPS 202].
-  * @param  output          Pointer to the output buffer.
-  * @param  outputByteLen   The desired number of output bytes.
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHAKE128(unsigned char *output, size_t outputByteLen, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of the SHAKE256 extendable output function (XOF) [FIPS 202].
-  * @param  output          Pointer to the output buffer.
-  * @param  outputByteLen   The desired number of output bytes.
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHAKE256(unsigned char *output, size_t outputByteLen, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-224 [FIPS 202].
-  * @param  output          Pointer to the output buffer (28 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_224(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-256 [FIPS 202].
-  * @param  output          Pointer to the output buffer (32 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_256(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-384 [FIPS 202].
-  * @param  output          Pointer to the output buffer (48 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_384(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-/** Implementation of SHA3-512 [FIPS 202].
-  * @param  output          Pointer to the output buffer (64 bytes).
-  * @param  input           Pointer to the input message.
-  * @param  inputByteLen    The length of the input message in bytes.
-  * @return 0 if successful, 1 otherwise.
-  */
-int SHA3_512(unsigned char *output, const unsigned char *input, size_t inputByteLen);
-
-#else
-#error This requires an implementation of Keccak-p[1600]
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/align.h b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/align.h
deleted file mode 100644
index 82ad2f905..000000000
--- a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/align.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-The eXtended Keccak Code Package (XKCP)
-https://github.com/XKCP/XKCP
-
-Implementation by Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer".
-
-For more information, feedback or questions, please refer to the Keccak Team website:
-https://keccak.team/
-
-To the extent possible under law, the implementer has waived all copyright
-and related or neighboring rights to the source code in this file.
-http://creativecommons.org/publicdomain/zero/1.0/
-*/
-
-#ifndef _align_h_
-#define _align_h_
-
-/* on Mac OS-X and possibly others, ALIGN(x) is defined in param.h, and -Werror chokes on the redef. */
-#ifdef ALIGN
-#undef ALIGN
-#endif
-
-#if defined(__GNUC__)
-#define ALIGN(x) __attribute__ ((aligned(x)))
-#elif defined(_MSC_VER)
-#define ALIGN(x) __declspec(align(x))
-#elif defined(__ARMCC_VERSION)
-#define ALIGN(x) __align(x)
-#else
-#define ALIGN(x)
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/brg_endian.h b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/brg_endian.h
deleted file mode 100644
index 7c640b90e..000000000
--- a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/brg_endian.h
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- ---------------------------------------------------------------------------
- Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.
-
- LICENSE TERMS
-
- The redistribution and use of this software (with or without changes)
- is allowed without the payment of fees or royalties provided that:
-
-  1. source code distributions include the above copyright notice, this
-     list of conditions and the following disclaimer;
-
-  2. binary distributions include the above copyright notice, this list
-     of conditions and the following disclaimer in their documentation;
-
-  3. the name of the copyright holder is not used to endorse products
-     built using this software without specific written permission.
-
- DISCLAIMER
-
- This software is provided 'as is' with no explicit or implied warranties
- in respect of its properties, including, but not limited to, correctness
- and/or fitness for purpose.
- ---------------------------------------------------------------------------
- Issue Date: 20/12/2007
- Changes for ARM 9/9/2010
-*/
-
-#ifndef _BRG_ENDIAN_H
-#define _BRG_ENDIAN_H
-
-#define IS_BIG_ENDIAN      4321 /* byte 0 is most significant (mc68k) */
-#define IS_LITTLE_ENDIAN   1234 /* byte 0 is least significant (i386) */
-
-#if 0
-/* Include files where endian defines and byteswap functions may reside */
-#if defined( __sun )
-#  include <sys/isa_defs.h>
-#elif defined( __FreeBSD__ ) || defined( __OpenBSD__ ) || defined( __NetBSD__ )
-#  include <sys/endian.h>
-#elif defined( BSD ) && ( BSD >= 199103 ) || defined( __APPLE__ ) || \
-      defined( __CYGWIN32__ ) || defined( __DJGPP__ ) || defined( __osf__ )
-#  include <machine/endian.h>
-#elif defined( __linux__ ) || defined( __GNUC__ ) || defined( __GNU_LIBRARY__ )
-#  if !defined( __MINGW32__ ) && !defined( _AIX )
-#    include <endian.h>
-#    if !defined( __BEOS__ )
-#      include <byteswap.h>
-#    endif
-#  endif
-#endif
-#endif
-
-/* Now attempt to set the define for platform byte order using any  */
-/* of the four forms SYMBOL, _SYMBOL, __SYMBOL & __SYMBOL__, which  */
-/* seem to encompass most endian symbol definitions                 */
-
-#if defined( BIG_ENDIAN ) && defined( LITTLE_ENDIAN )
-#  if defined( BYTE_ORDER ) && BYTE_ORDER == BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( BYTE_ORDER ) && BYTE_ORDER == LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( _BIG_ENDIAN ) && defined( _LITTLE_ENDIAN )
-#  if defined( _BYTE_ORDER ) && _BYTE_ORDER == _BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( _BYTE_ORDER ) && _BYTE_ORDER == _LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( _BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( _LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( __BIG_ENDIAN ) && defined( __LITTLE_ENDIAN )
-#  if defined( __BYTE_ORDER ) && __BYTE_ORDER == __BIG_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( __BYTE_ORDER ) && __BYTE_ORDER == __LITTLE_ENDIAN
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( __BIG_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( __LITTLE_ENDIAN )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-#if defined( __BIG_ENDIAN__ ) && defined( __LITTLE_ENDIAN__ )
-#  if defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __BIG_ENDIAN__
-#    define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#  elif defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __LITTLE_ENDIAN__
-#    define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#  endif
-#elif defined( __BIG_ENDIAN__ )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#elif defined( __LITTLE_ENDIAN__ )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#endif
-
-/*  if the platform byte order could not be determined, then try to */
-/*  set this define using common machine defines                    */
-#if !defined(PLATFORM_BYTE_ORDER)
-
-#if   defined( __alpha__ ) || defined( __alpha ) || defined( i386 )       || \
-      defined( __i386__ )  || defined( _M_I86 )  || defined( _M_IX86 )    || \
-      defined( __OS2__ )   || defined( sun386 )  || defined( __TURBOC__ ) || \
-      defined( vax )       || defined( vms )     || defined( VMS )        || \
-      defined( __VMS )     || defined( _M_X64 )
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-
-#elif defined( AMIGA )    || defined( applec )    || defined( __AS400__ )  || \
-      defined( _CRAY )    || defined( __hppa )    || defined( __hp9000 )   || \
-      defined( ibm370 )   || defined( mc68000 )   || defined( m68k )       || \
-      defined( __MRC__ )  || defined( __MVS__ )   || defined( __MWERKS__ ) || \
-      defined( sparc )    || defined( __sparc)    || defined( SYMANTEC_C ) || \
-      defined( __VOS__ )  || defined( __TIGCC__ ) || defined( __TANDEM )   || \
-      defined( THINK_C )  || defined( __VMCMS__ ) || defined( _AIX )       || \
-      defined( __s390__ ) || defined( __s390x__ ) || defined( __zarch__ )
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-
-#elif defined(__arm__)
-# ifdef __BIG_ENDIAN
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-# else
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-# endif
-#elif 1     /* **** EDIT HERE IF NECESSARY **** */
-#  define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN
-#elif 0     /* **** EDIT HERE IF NECESSARY **** */
-#  define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN
-#else
-#  error Please edit lines 132 or 134 in brg_endian.h to set the platform byte order
-#endif
-
-#endif
-
-#endif
diff --git a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/config.h b/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/config.h
deleted file mode 100644
index 97f857dd1..000000000
--- a/crypto/XKCP/prebuilds/x86_64/libdap-XKCP-x8664-native.a.headers/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* File generated by ToTargetConfigFile.xsl */
-
-#define XKCP_has_Sponge_Keccak
-#define XKCP_has_FIPS202
-#define XKCP_has_KeccakP1600
-- 
GitLab