Commit Graph

375 Commits

Author SHA1 Message Date
Jeroen Ketema
6ae1656ec4 Merge pull request #17581 from jketema/loc-table-merge
C++: Merge the location tables
2025-06-30 10:33:46 +02:00
Jeroen Ketema
b4caba7c0e C++: Merge the location tables 2025-06-27 14:42:08 +02:00
REDMOND\brodes
9f0c62b572 Crypto: Address PR comments. 2025-06-27 08:33:01 -04:00
Ben Rodes
122a004851 Update cpp/ql/lib/experimental/quantum/OpenSSL/AlgorithmInstances/MACAlgorithmInstance.qll
Co-authored-by: Nicolas Will <nicolaswill@github.com>
2025-06-27 08:28:05 -04:00
REDMOND\brodes
505d8806c7 Crypto: Add key input support for the graph for key generation operations. 2025-06-26 11:51:49 -04:00
Nicolas Will
c54e68c855 Merge branch 'main' into pr/19880 2025-06-26 16:47:38 +02:00
REDMOND\brodes
7477471bc5 Crypto: Bug fix in output model 2025-06-25 15:25:51 -04:00
Nicolas Will
ad7358ac4f Crypto: Deduplicate "GCM" mapping from OpenSSL modeling 2025-06-25 20:26:38 +02:00
Nicolas Will
8e6031df14 Crypto: Fix further acronym casing and remove unused field 2025-06-25 20:25:33 +02:00
Nicolas Will
b8097501b6 Update cpp/ql/lib/experimental/quantum/OpenSSL/AlgorithmInstances/KnownAlgorithmConstants.qll
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-25 20:12:51 +02:00
Nicolas Will
14472bf744 Crypto: Refactor type name mapping and fix QL-for-QL alerts 2025-06-25 20:08:14 +02:00
REDMOND\brodes
f9147cfb2b Crypto: Remove experimental qll file 2025-06-25 12:26:41 -04:00
REDMOND\brodes
9cd2241bf6 Crypto: Remove accidentally uploaded temporary file. 2025-06-25 11:36:40 -04:00
REDMOND\brodes
072765abca Crypto: Code scanning warning corrections. 2025-06-25 11:16:49 -04:00
REDMOND\brodes
93bad3c799 Crypto: Misc bug fixes and updated expected files. 2025-06-25 11:02:30 -04:00
Nicolas Will
710e08088f Crypto: Refactor casing and documentation 2025-06-25 15:29:03 +02:00
REDMOND\brodes
bd0efbe48c Crypto: Overhaul of EVP final/init/update to now use a more general 'OperationStep' mechanic. 2025-06-24 16:03:25 -04:00
REDMOND\brodes
8ee03e48ca Crypto: Fix cpp-specific code scanning alert failure 2025-06-18 11:04:27 -04:00
Ben Rodes
b2765a2ff7 Merge branch 'main' into pawel_signatures_conversion 2025-06-17 14:52:41 -04:00
REDMOND\brodes
a81fffcbda Crypto: Fix redundant override issue. 2025-06-17 13:27:54 -04:00
REDMOND\brodes
f2f97c993b Crypto: QL docs fix. 2025-06-17 13:18:03 -04:00
REDMOND\brodes
ac35634217 Merge branch 'openssl_acronym_normalization' into pawel_signatures_conversion 2025-06-17 13:03:12 -04:00
REDMOND\brodes
6c9c969573 Crypto: Remove dead comments 2025-06-16 12:43:29 -04:00
REDMOND\brodes
7c18686462 Crypto: Further ql-for-ql alert alert fixes. 2025-06-16 12:14:09 -04:00
REDMOND\brodes
790a60784e Crypto: Acronym change from OpenSSL to OpenSsl, AVC to Avc and EVP to Evp. 2025-06-16 10:56:31 -04:00
REDMOND\brodes
45fa2c94da Crypto: Code review cleanup. 2025-06-16 09:22:11 -04:00
REDMOND\brodes
1882db7d86 Crypto: EVP Signature Operation cleanup. 2025-06-13 12:07:03 -04:00
REDMOND\brodes
cf2f0f16b8 Crypto: Initial model of signatures. Still incomplete for verification and correct handling of MACs. 2025-06-13 11:52:37 -04:00
REDMOND\brodes
eb20955a54 Crypto: Further simplify test caes to only use edges/nodes/properties. Update model to account for MAC algorithms. 2025-06-12 15:36:59 -04:00
REDMOND\brodes
20e2c7cefd Crypto: Overhaul/refactor of EVPInitialzers. Update cipher operation to disallow null key and IV on initializers (typically do not represent an actual key or IV). 2025-06-12 00:41:15 -04:00
REDMOND\brodes
d3cff2dff1 Crypto: Add support to trace keys, add support to find prior key gen properties that configure downstream operations. Add key size tests 2025-06-11 13:58:56 -04:00
Nora Dimitrijević
4dd07f475b C++: mass enable diff-informed data flow
An auto-generated patch that enables diff-informed data flow in the obvious cases.

Builds on https://github.com/github/codeql/pull/18342 and https://github.com/github/codeql-patch/pull/88
2025-06-11 18:51:01 +02:00
REDMOND\brodes
7d479940e5 Crypto: Nop out signature operations for now until complete. Minor model update. Remove setting RSA bits as an RSA algorithm. Fix bug in hash algorithm. Add missing PKey encryption to cipher ops. Consolidate ctx initializers. Add unit tests, and alter unit test directory structure to allow for application to other APIs. Update expected files for unit tests (not all updated yet, a work in progress). 2025-06-10 13:37:17 -04:00
REDMOND\brodes
729467ccd6 Crypto: Separate out CTX parameter initialization, and add additional initializer subclasses. 2025-06-09 16:49:54 -04:00
REDMOND\brodes
4f2045bbdd Crypto: CtxFlow now uses an interface for additional steps. Add CTX step to handle paramgen. Remove redundant test. Overhaul of EVP update/initializer/final mechanics. Misc. updates for new API and refactoring EVPKeyGenOperation. Clean up of keygen_operaitons.ql. 2025-06-09 15:07:00 -04:00
REDMOND\brodes
98aae6a7bf Crypto: Add EVP key gen and signature operation (work in progress). Add initial signature tests (no expected files yet). Add new openssl .h stubs. Clean up of OperationBase and associated uses. Update test case stubs to be closer to the actual stubs. Fix unncessary instanceof check in signatures. 2025-06-05 16:43:58 -04:00
REDMOND\brodes
f952f901e4 Crypto: Update CtxFlow to flow from any "source ctx" which is any ctx that is an argument or a return. 2025-06-04 15:44:45 -04:00
REDMOND\brodes
33e239d667 Crypto: Collapse initializer qll's into operations. 2025-06-04 15:44:06 -04:00
REDMOND\brodes
952bc266b1 Crypto: Added Signature algorithm instance and consumer 2025-06-04 15:42:55 -04:00
REDMOND\brodes
39583abade Crypto: Update KnownAlgoirthmConstants to make a distinction between calls that return a known algorithm and calls that operate on a known algorithm. update KnownAlgorithmConstants to correct algType for signature algorithms. Update all instances and prior uses of the old mechanic to KnownAlgorithmConstants. 2025-06-04 15:41:24 -04:00
GrosQuildu
60d9b6e338 update docs 2025-06-03 16:27:50 +02:00
GrosQuildu
eff6eb3cc2 remove redundant if/none 2025-06-03 16:27:50 +02:00
GrosQuildu
f04fa58c8b rm one-shot class 2025-06-03 16:27:50 +02:00
Paweł Płatek
328cf798bf Apply docs suggestions
Co-authored-by: Ben Rodes <benjaminrodes@gmail.com>
2025-06-03 16:27:50 +02:00
Paweł Płatek
f103e8be96 Update cpp/ql/lib/experimental/quantum/OpenSSL/Operations/OpenSSLOperationBase.qll
Co-authored-by: Ben Rodes <benjaminrodes@gmail.com>
2025-06-03 16:27:50 +02:00
GrosQuildu
af8702d6a8 fix openssl outputs 2025-06-03 16:27:50 +02:00
GrosQuildu
6d1b1d1a6e refactor EVP common classes
add initial work for openssl signatures

add basic C test files for ciphers and signatures

more signature classes, comments for evp base classes

more signature tests

fix super calls for input consumers

fix getOutputArtifact for tests

formatting

delete redundant test files

move algorithm methods to OpenSSLOperation

refactor ECKeyGenOperation for new EVP classes

formatting

fix getOutputArtifact

fix cipher and digest operation test results

mv openssl signature to another PR
2025-06-03 16:27:50 +02:00
REDMOND\brodes
23b6c78a23 Crypto: Revert CODEOWNERS change and remove redundant cast. 2025-06-02 13:07:31 -04:00
REDMOND\brodes
cf015d18f1 Crypto: Add openssl key agreement instances and consumers (KEM and KEY_EXCH). Fix for raw algorithm names in all current instances. Update constants to include key agreement algorithms, previously missing. Note added in model for the possibility of ESDH. 2025-05-30 11:29:34 -04:00
REDMOND\brodes
69e3a20e24 Crypto: Update crypto stubs location under 'crypto' and associate codeowners on any test/stubs/crypto. Minor fix to HashAlgorithmValueConsumer (remove library detector logic). 2025-05-30 09:35:33 -04:00