Skip to content

Commit b1f0a7e

Browse files
committed
Fix tests
1 parent 215eaae commit b1f0a7e

15 files changed

Lines changed: 1880 additions & 1259 deletions

File tree

.github/workflows/ci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ jobs:
1919
components: rustfmt, clippy
2020
- uses: Swatinem/rust-cache@v2
2121

22+
- name: Check pattern evidence
23+
run: python3 scripts/check_evidence.py
24+
2225
- name: Check formatting
2326
run: cargo fmt -- --check
2427

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
{"assetType": "library", "identifier": "Google Tink (C++)", "path": "fixtures/cpp/tink_aesgcm/src/tink_example.cpp", "evidence": {"line": 5, "column": 1}}
2-
{"assetType": "algorithm", "identifier": "AES-GCM", "path": "fixtures/cpp/tink_aesgcm/src/tink_example.cpp", "evidence": {"line": 26, "column": 9}, "metadata": {"primitive": "symmetric"}}
1+
{"assetType":"library","identifier":"Google Tink (C++)","path":"fixtures/cpp/tink_aesgcm/src/tink_example.cpp","evidence":{"line":5,"column":1}}
2+
{"assetType":"algorithm","identifier":"AES-GCM","path":"fixtures/cpp/tink_aesgcm/src/tink_example.cpp","evidence":{"line":26,"column":9},"metadata":{"primitive":"symmetric"}}

fixtures/go/crypto_comprehensive/expected.jsonl

Lines changed: 103 additions & 129 deletions
Large diffs are not rendered by default.
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
{"assetType": "library", "identifier": "Go std crypto", "path": "fixtures/go/std_aesgcm/src/main.go", "evidence": {"line": 3, "column": 1}}
2-
{"assetType": "algorithm", "identifier": "AES", "path": "fixtures/go/std_aesgcm/src/main.go", "evidence": {"line": 13, "column": 14}, "metadata": {"primitive": "symmetric"}}
3-
{"assetType": "algorithm", "identifier": "AES-GCM", "path": "fixtures/go/std_aesgcm/src/main.go", "evidence": {"line": 14, "column": 12}, "metadata": {"primitive": "symmetric"}}
1+
{"assetType":"library","identifier":"Go std crypto","path":"fixtures/go/std_aesgcm/src/main.go","evidence":{"line":3,"column":1}}
2+
{"assetType":"algorithm","identifier":"AES","path":"fixtures/go/std_aesgcm/src/main.go","evidence":{"line":13,"column":14},"metadata":{"primitive":"symmetric"}}
3+
{"assetType":"algorithm","identifier":"AES-GCM","path":"fixtures/go/std_aesgcm/src/main.go","evidence":{"line":14,"column":12},"metadata":{"primitive":"symmetric"}}
Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
{"assetType": "library", "identifier": "Google Tink (Go)", "path": "fixtures/go/tink_aesgcm/src/main.go", "evidence": {"line": 3, "column": 1}}
2-
{"assetType": "algorithm", "identifier": "HMAC-SHA256", "path": "fixtures/go/tink_aesgcm/src/main.go", "evidence": {"line": 72, "column": 38}, "metadata": {"primitive": "mac"}}
3-
{"assetType": "algorithm", "identifier": "HMAC-SHA256", "path": "fixtures/go/tink_aesgcm/src/main.go", "evidence": {"line": 76, "column": 12}, "metadata": {"primitive": "mac"}}
4-
{"assetType": "algorithm", "identifier": "ChaCha20-Poly1305", "path": "fixtures/go/tink_aesgcm/src/main.go", "evidence": {"line": 58, "column": 40}, "metadata": {"primitive": "symmetric"}}
5-
{"assetType": "algorithm", "identifier": "AES-CTR-HMAC", "path": "fixtures/go/tink_aesgcm/src/main.go", "evidence": {"line": 48, "column": 37}, "metadata": {"primitive": "symmetric"}}
6-
{"assetType": "algorithm", "identifier": "AES-GCM", "path": "fixtures/go/tink_aesgcm/src/main.go", "evidence": {"line": 21, "column": 30}, "metadata": {"primitive": "symmetric"}}
1+
{"assetType":"library","identifier":"Google Tink (Go)","path":"fixtures/go/tink_aesgcm/src/main.go","evidence":{"line":3,"column":1}}
2+
{"assetType":"algorithm","identifier":"ChaCha20-Poly1305","path":"fixtures/go/tink_aesgcm/src/main.go","evidence":{"line":58,"column":40},"metadata":{"primitive":"symmetric"}}
3+
{"assetType":"algorithm","identifier":"AES-CTR-HMAC","path":"fixtures/go/tink_aesgcm/src/main.go","evidence":{"line":48,"column":37},"metadata":{"primitive":"symmetric"}}
4+
{"assetType":"algorithm","identifier":"AES-GCM","path":"fixtures/go/tink_aesgcm/src/main.go","evidence":{"line":21,"column":30},"metadata":{"primitive":"symmetric"}}
5+
{"assetType":"algorithm","identifier":"HMAC-SHA256","path":"fixtures/go/tink_aesgcm/src/main.go","evidence":{"line":72,"column":38},"metadata":{"primitive":"mac"}}

fixtures/java/jca_comprehensive/expected.jsonl

Lines changed: 87 additions & 93 deletions
Large diffs are not rendered by default.
Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,15 @@
11
{"assetType": "library", "identifier": "Google Tink (Objective-C)", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 10, "column": 1}}
2-
{"assetType": "algorithm", "identifier": "HMAC-SHA512", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 60, "column": 33}, "metadata": {"primitive": "mac"}}
3-
{"assetType": "algorithm", "identifier": "RSA-SSA-PKCS1", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 82, "column": 33}, "metadata": {"primitive": "signature"}}
4-
{"assetType": "algorithm", "identifier": "ECDSA-P384", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 70, "column": 33}, "metadata": {"primitive": "signature"}}
5-
{"assetType": "algorithm", "identifier": "RSA-SSA-PSS", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 78, "column": 33}, "metadata": {"primitive": "signature"}}
6-
{"assetType": "algorithm", "identifier": "HMAC-SHA256", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 52, "column": 33}, "metadata": {"primitive": "mac"}}
7-
{"assetType": "algorithm", "identifier": "HMAC-SHA256", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 56, "column": 33}, "metadata": {"primitive": "mac"}}
8-
{"assetType": "algorithm", "identifier": "HPKE", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 88, "column": 27}, "metadata": {"primitive": "hybrid"}}
9-
{"assetType": "algorithm", "identifier": "ECDSA-P256", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 66, "column": 33}, "metadata": {"primitive": "signature"}}
10-
{"assetType": "algorithm", "identifier": "AES-GCM-SIV", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 46, "column": 33}, "metadata": {"primitive": "symmetric"}}
11-
{"assetType": "algorithm", "identifier": "Ed25519", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 74, "column": 33}, "metadata": {"primitive": "signature"}}
12-
{"assetType": "algorithm", "identifier": "ECIES-P256-HKDF", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 87, "column": 28}, "metadata": {"primitive": "hybrid"}}
2+
{"assetType": "algorithm", "identifier": "HMAC-SHA512", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 52, "column": 33}, "metadata": {"primitive": "mac"}}
3+
{"assetType": "algorithm", "identifier": "RSA-SSA-PKCS1", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 74, "column": 33}, "metadata": {"primitive": "signature"}}
4+
{"assetType": "algorithm", "identifier": "ECDSA-P384", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 62, "column": 33}, "metadata": {"primitive": "signature"}}
5+
{"assetType": "algorithm", "identifier": "RSA-SSA-PSS", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 70, "column": 33}, "metadata": {"primitive": "signature"}}
6+
{"assetType": "algorithm", "identifier": "HMAC-SHA256", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 44, "column": 33}, "metadata": {"primitive": "mac"}}
7+
{"assetType": "algorithm", "identifier": "HPKE", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 80, "column": 27}, "metadata": {"primitive": "hybrid"}}
8+
{"assetType": "algorithm", "identifier": "ECDSA-P256", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 58, "column": 33}, "metadata": {"primitive": "signature"}}
9+
{"assetType": "algorithm", "identifier": "AES-CMAC", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 48, "column": 33}, "metadata": {"primitive": "mac"}}
10+
{"assetType": "algorithm", "identifier": "Ed25519", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 66, "column": 33}, "metadata": {"primitive": "signature"}}
11+
{"assetType": "algorithm", "identifier": "ECIES-P256-HKDF", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 79, "column": 28}, "metadata": {"primitive": "hybrid"}}
1312
{"assetType": "algorithm", "identifier": "AES-GCM", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 26, "column": 33}, "metadata": {"primitive": "symmetric"}}
14-
{"assetType": "algorithm", "identifier": "ChaCha20-Poly1305", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 38, "column": 33}, "metadata": {"primitive": "symmetric"}}
15-
{"assetType": "algorithm", "identifier": "XChaCha20-Poly1305", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 42, "column": 33}, "metadata": {"primitive": "symmetric"}}
13+
{"assetType": "algorithm", "identifier": "XChaCha20-Poly1305", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 38, "column": 33}, "metadata": {"primitive": "symmetric"}}
1614
{"assetType": "algorithm", "identifier": "AES-CTR-HMAC", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 34, "column": 33}, "metadata": {"primitive": "symmetric"}}
1715
{"assetType": "algorithm", "identifier": "AES-EAX", "path": "fixtures/objc/tink_comprehensive/src/TinkComprehensive.m", "evidence": {"line": 30, "column": 33}, "metadata": {"primitive": "symmetric"}}

fixtures/objc/tink_comprehensive/src/TinkComprehensive.m

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -33,31 +33,23 @@ int main() {
3333
TINKAeadKeyTemplate *aesCtrHmacTemplate = [[TINKAeadKeyTemplate alloc]
3434
initWithKeyTemplate:TINKAes256CtrHmacSha256 error:&error];
3535

36-
// ChaCha20-Poly1305
37-
TINKAeadKeyTemplate *chachaTemplate = [[TINKAeadKeyTemplate alloc]
38-
initWithKeyTemplate:TINKChaCha20Poly1305 error:&error];
39-
4036
// XChaCha20-Poly1305
4137
TINKAeadKeyTemplate *xchachaTemplate = [[TINKAeadKeyTemplate alloc]
4238
initWithKeyTemplate:TINKXChaCha20Poly1305 error:&error];
43-
44-
// AES-GCM-SIV
45-
TINKAeadKeyTemplate *aesGcmSivTemplate = [[TINKAeadKeyTemplate alloc]
46-
initWithKeyTemplate:TINKAes256GcmSiv error:&error];
4739

4840
// MAC algorithms
4941

5042
// HMAC-SHA256
5143
TINKMacKeyTemplate *hmacTemplate = [[TINKMacKeyTemplate alloc]
52-
initWithKeyTemplate:TINKHmacSha256Tag256 error:&error];
44+
initWithKeyTemplate:TINKHmacSha256 error:&error];
5345

5446
// AES-CMAC
5547
TINKMacKeyTemplate *cmacTemplate = [[TINKMacKeyTemplate alloc]
5648
initWithKeyTemplate:TINKAesCmac error:&error];
5749

5850
// HMAC-SHA512
5951
TINKMacKeyTemplate *hmac512Template = [[TINKMacKeyTemplate alloc]
60-
initWithKeyTemplate:TINKHmacSha512Tag512 error:&error];
52+
initWithKeyTemplate:TINKHmacSha512 error:&error];
6153

6254
// Signature algorithms
6355

@@ -75,7 +67,7 @@ int main() {
7567

7668
// RSA-SSA-PSS
7769
TINKSignatureKeyTemplate *rsaPssTemplate = [[TINKSignatureKeyTemplate alloc]
78-
initWithKeyTemplate:TINKRsaSsaPss3072Sha256F4 error:&error];
70+
initWithKeyTemplate:TINKRsaSsaPss3072Sha256Sha256F4 error:&error];
7971

8072
// RSA-SSA-PKCS1
8173
TINKSignatureKeyTemplate *rsaPkcs1Template = [[TINKSignatureKeyTemplate alloc]
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{"assetType": "library", "identifier": "OpenSSL", "path": "fixtures/openssl_c/aes_ctr/src/test.c", "evidence": {"line": 1, "column": 1}}
2+
{"assetType": "algorithm", "identifier": "AES-CTR", "path": "fixtures/openssl_c/aes_ctr/src/test.c", "evidence": {"line": 10, "column": 29}, "metadata": {"keySize": 128, "primitive": "symmetric"}}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#include <openssl/evp.h>
2+
#include <string.h>
3+
4+
int main(){
5+
unsigned char key[16]; memset(key, 0x11, sizeof(key));
6+
unsigned char iv[16]; memset(iv, 0x22, sizeof(iv));
7+
unsigned char pt[5] = { 'h','e','l','l','o' };
8+
unsigned char ct[32]; int len=0;
9+
EVP_CIPHER_CTX *ctx = EVP_CIPHER_CTX_new();
10+
EVP_EncryptInit_ex(ctx, EVP_aes_128_ctr(), NULL, key, iv);
11+
EVP_EncryptUpdate(ctx, ct, &len, pt, sizeof(pt));
12+
EVP_CIPHER_CTX_free(ctx);
13+
return 0;
14+
}

0 commit comments

Comments
 (0)