UDIF: Universal Digital Identification Framework
1.0.0.0a (A1)
A quantum-secure cryptographic identification
udifcommon.h
Go to the documentation of this file.
1
/* 2025-2026 Quantum Resistant Cryptographic Solutions Corporation
2
* All Rights Reserved.
3
*
4
* NOTICE:
5
* This software and all accompanying materials are the exclusive property of
6
* Quantum Resistant Cryptographic Solutions Corporation (QRCS). The intellectual
7
* and technical concepts contained herein are proprietary to QRCS and are
8
* protected under applicable Canadian, U.S., and international copyright,
9
* patent, and trade secret laws.
10
*
11
* CRYPTOGRAPHIC ALGORITHMS AND IMPLEMENTATIONS:
12
* - This software includes implementations of cryptographic primitives and
13
* algorithms that are standardized or in the public domain, such as AES
14
* and SHA-3, which are not proprietary to QRCS.
15
* - This software also includes cryptographic primitives, constructions, and
16
* algorithms designed by QRCS, including but not limited to RCS, SCB, CSX, QMAC, and
17
* related components, which are proprietary to QRCS.
18
* - All source code, implementations, protocol compositions, optimizations,
19
* parameter selections, and engineering work contained in this software are
20
* original works of QRCS and are protected under this license.
21
*
22
* LICENSE AND USE RESTRICTIONS:
23
* - This software is licensed under the Quantum Resistant Cryptographic Solutions
24
* Public Research and Evaluation License (QRCS-PREL), 2025-2026.
25
* - Permission is granted solely for non-commercial evaluation, academic research,
26
* cryptographic analysis, interoperability testing, and feasibility assessment.
27
* - Commercial use, production deployment, commercial redistribution, or
28
* integration into products or services is strictly prohibited without a
29
* separate written license agreement executed with QRCS.
30
* - Licensing and authorized distribution are solely at the discretion of QRCS.
31
*
32
* EXPERIMENTAL CRYPTOGRAPHY NOTICE:
33
* Portions of this software may include experimental, novel, or evolving
34
* cryptographic designs. Use of this software is entirely at the user's risk.
35
*
36
* DISCLAIMER:
37
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
38
* IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS
39
* FOR A PARTICULAR PURPOSE, SECURITY, OR NON-INFRINGEMENT. QRCS DISCLAIMS ALL
40
* LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
41
* ARISING FROM THE USE OR MISUSE OF THIS SOFTWARE.
42
*
43
* FULL LICENSE:
44
* This software is subject to the Quantum Resistant Cryptographic Solutions
45
* Public Research and Evaluation License (QRCS-PREL), 2025-2026. The complete license terms
46
* are provided in the accompanying LICENSE file or at https://www.qrcscorp.ca.
47
*
48
* Written by: John G. Underhill
49
* Contact: contact@qrcscorp.ca
50
*/
51
52
#ifndef UDIFCOMMON_H
53
#define UDIFCOMMON_H
54
55
#include <assert.h>
56
#include <stdbool.h>
57
#include <stddef.h>
58
#include <stdint.h>
59
64
69
#if defined(_DLL)
70
# define UDIF_DLL_API
71
#endif
76
#if defined(UDIF_DLL_API)
77
# if defined(QSC_SYSTEM_COMPILER_MSC)
78
# if defined(QSC_DLL_IMPORT)
79
# define UDIF_EXPORT_API __declspec(dllimport)
80
# else
81
# define UDIF_EXPORT_API __declspec(dllexport)
82
# endif
83
# elif defined(QSC_SYSTEM_COMPILER_GCC)
84
# if defined(QSC_DLL_IMPORT)
85
# define UDIF_EXPORT_API __attribute__((dllimport))
86
# else
87
# define UDIF_EXPORT_API __attribute__((dllexport))
88
# endif
89
# else
90
# if defined(__SUNPRO_C)
91
# if !defined(__GNU_C__)
92
# define UDIF_EXPORT_API __attribute__ (visibility(__global))
93
# else
94
# define UDIF_EXPORT_API __attribute__ __global
95
# endif
96
# elif defined(_MSG_VER)
97
# define UDIF_EXPORT_API extern __declspec(dllexport)
98
# else
99
# define UDIF_EXPORT_API __attribute__ ((visibility ("default")))
100
# endif
101
# endif
102
#else
103
# define UDIF_EXPORT_API
104
#endif
105
110
#if defined(_DEBUG)
111
# include <assert.h>
112
# define UDIF_ASSERT(x) assert(x)
113
#else
114
# define UDIF_ASSERT(x)
115
#endif
116
117
#endif
UDIF
udifcommon.h
Generated by
1.14.0