-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathactivation_request_vectors.json
More file actions
51 lines (51 loc) · 3.13 KB
/
Copy pathactivation_request_vectors.json
File metadata and controls
51 lines (51 loc) · 3.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{
"format": "authforge-activation-request",
"version": 1,
"description": "Cross-SDK conformance vectors for activation requests (.authforge-request). Generators with the same inputs must match good_minimal and good_full byte-for-byte. Parser tolerance: CRLF, UTF-8 BOM, re-wrapping, email preamble. Checksum is decision-relevant.",
"cases": [
{
"name": "good_minimal",
"expect": "ok",
"inputs": {
"appId": "test-app",
"hwid": "testhwid",
"createdAt": "2026-09-11T12:00:00.000Z"
},
"file": "-----BEGIN AUTHFORGE ACTIVATION REQUEST-----\nVersion: 1\nApp-Id: test-app\nChecksum: c64d10a2fe4d54f7\n\neyJ2IjoxLCJ0eXAiOiJhdXRoZm9yZ2UtYWN0aXZhdGlvbi1yZXF1ZXN0IiwiYXBw\nSWQiOiJ0ZXN0LWFwcCIsImh3aWQiOiJ0ZXN0aHdpZCIsImNyZWF0ZWRBdCI6IjIw\nMjYtMDktMTFUMTI6MDA6MDAuMDAwWiJ9\n-----END AUTHFORGE ACTIVATION REQUEST-----\n"
},
{
"name": "good_full",
"expect": "ok",
"inputs": {
"appId": "test-app",
"hwid": "testhwid",
"createdAt": "2026-09-11T12:00:00.000Z",
"machineName": "dev-box",
"os": "Windows 11",
"sdk": "python/0.0.0-vectors",
"licenseKey": "TEST-KEY0-0000-0000"
},
"file": "-----BEGIN AUTHFORGE ACTIVATION REQUEST-----\nVersion: 1\nApp-Id: test-app\nChecksum: ee106dc238f9f8b1\n\neyJ2IjoxLCJ0eXAiOiJhdXRoZm9yZ2UtYWN0aXZhdGlvbi1yZXF1ZXN0IiwiYXBw\nSWQiOiJ0ZXN0LWFwcCIsImh3aWQiOiJ0ZXN0aHdpZCIsImNyZWF0ZWRBdCI6IjIw\nMjYtMDktMTFUMTI6MDA6MDAuMDAwWiIsIm1hY2hpbmVOYW1lIjoiZGV2LWJveCIs\nIm9zIjoiV2luZG93cyAxMSIsInNkayI6InB5dGhvbi8wLjAuMC12ZWN0b3JzIiwi\nbGljZW5zZUtleSI6IlRFU1QtS0VZMC0wMDAwLTAwMDAifQ==\n-----END AUTHFORGE ACTIVATION REQUEST-----\n"
},
{
"name": "tolerate_crlf_bom_preamble",
"expect": "ok",
"file": "Please see attached.\r\n-----BEGIN AUTHFORGE ACTIVATION REQUEST-----\r\nVersion: 1\r\nApp-Id: test-app\r\nChecksum: c64d10a2fe4d54f7\r\n\r\neyJ2IjoxLCJ0eXAiOiJh\r\ndXRoZm9yZ2UtYWN0aXZh\r\ndGlvbi1yZXF1ZXN0Iiwi\r\nYXBwSWQiOiJ0ZXN0LWFw\r\ncCIsImh3aWQiOiJ0ZXN0\r\naHdpZCIsImNyZWF0ZWRB\r\ndCI6IjIwMjYtMDktMTFU\r\nMTI6MDA6MDAuMDAwWiJ9\r\n-----END AUTHFORGE ACTIVATION REQUEST-----\r\nThanks,\r\nPat\r\n"
},
{
"name": "bad_checksum",
"expect": "checksum_mismatch",
"file": "-----BEGIN AUTHFORGE ACTIVATION REQUEST-----\nVersion: 1\nApp-Id: test-app\nChecksum: deadbeefdeadbeef\n\neyJ2IjoxLCJ0eXAiOiJhdXRoZm9yZ2UtYWN0aXZhdGlvbi1yZXF1ZXN0IiwiYXBw\nSWQiOiJ0ZXN0LWFwcCIsImh3aWQiOiJ0ZXN0aHdpZCIsImNyZWF0ZWRBdCI6IjIw\nMjYtMDktMTFUMTI6MDA6MDAuMDAwWiJ9\n-----END AUTHFORGE ACTIVATION REQUEST-----\n"
},
{
"name": "truncated_body",
"expect": "reject",
"file": "-----BEGIN AUTHFORGE ACTIVATION REQUEST-----\nVersion: 1\nApp-Id: test-app\nChecksum: c64d10a2fe4d54f7\n\neyJ2IjoxLCJ0eXAiOiJhdXRoZm9yZ2UtYWN0aXZhdGlvbi1yZXF1ZXN0IiwiYXBw\nSWQiOiJ0ZXN0LWFwcCIsImh3aWQiOiJ0ZXN0aHdpZCIsImNyZWF0ZWRBdCI6IjIw\nMjYtMDktMTFUMTI6MDA6\n-----END AUTHFORGE ACTIVATION REQUEST-----\n"
},
{
"name": "license_file",
"expect": "is_license_file",
"file": "-----BEGIN AUTHFORGE LICENSE-----\nVersion: 1\nApp-Id: test-app\n\nQUJD\n-----END AUTHFORGE LICENSE-----\n"
}
]
}