validpay 1.0.0__tar.gz → 1.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,34 +1,67 @@
1
- # Changelog
2
-
3
- All notable changes to the ValidPay Python SDK will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ## [1.0.0] - 2026-05-03
9
-
10
- ### Added
11
-
12
- - **Core client** (`ValidPayClient`) create, verify, revoke, and reinstate
13
- document intents via the ValidPay API.
14
- - **AES-256-GCM encryption** client-side encryption/decryption with
15
- commitment hash verification (Patent B).
16
- - **Split-key verification** (Patent C) XOR key splitting into Share A
17
- (document) and Share B (server). Neither alone decrypts.
18
- - **Time-locked verification** (Patent D) optional `valid_from` /
19
- `valid_until` windows with client-side enforcement.
20
- - **Selective field disclosure** (Patent E) per-field encryption with
21
- role-based disclosure policies.
22
- - **Physical medium binding** (Patent F) — perceptual hashing and binding
23
- zone comparison for document-to-physical matching.
24
- Requires optional `binding` extra (`pip install validpay[binding]`).
25
- - **Chain-of-custody tracking** (Patent G) — verification event audit log
26
- via the API.
27
- - **Blind revocation** (Patent H) — revoke/reinstate intents without
28
- decrypting the payload.
29
- - **Offline verification** (`OfflineCache`) — encrypted local cache for
30
- offline verification with staleness tracking and revocation sync.
31
- - **Batch intent creation** — create up to 100 intents in a single API call.
32
- - **115 automated tests** across 4 test modules.
33
-
34
- [1.0.0]: https://github.com/ValidPay-io/validpay-python-sdk/releases/tag/v1.0.0
1
+ # Changelog
2
+
3
+ All notable changes to the ValidPay Python SDK will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [1.1.0] - 2026-06-12
9
+
10
+ ### Changed
11
+
12
+ - **Split-key protection (Patent C) is now the default** (Prompt 094).
13
+ `create_intent()` splits the AES key into two XOR shares: Share A is
14
+ returned as `result.key`, Share B is stored on the ValidPay server.
15
+ The full decryption key never exists on any single system after the
16
+ call returns. Pass `split_key=False` for the legacy single-key flow.
17
+ - `verify_intent()` now verifies split-key intents transparently: when
18
+ the API marks an intent `split_key`, it fetches Share B from the
19
+ fragment endpoint and XOR-combines it with the key you pass (Share A),
20
+ instead of raising `split_key_required`. Legacy intents verify exactly
21
+ as before.
22
+
23
+ ### Deprecated
24
+
25
+ - `create_split_key_intent()`now an alias for `create_intent()` (which
26
+ does split-key by default). Emits `DeprecationWarning`; will be removed
27
+ in 2.0.
28
+
29
+ ## [1.0.1] - 2026-06-08
30
+
31
+ ### Changed
32
+
33
+ - `DEFAULT_BASE_URL` is now `https://api.validpay.com` (Prompt 086B —
34
+ primary domain migrated from validpay.io). The legacy host keeps
35
+ working via Cloudflare 301 redirects, so 1.0.0 installs are
36
+ unaffected; new installs default to `.com`. The `base_url` constructor
37
+ argument continues to override.
38
+ - README + `pyproject.toml` URLs (Homepage, Documentation) now point at
39
+ `validpay.com`.
40
+
41
+ ## [1.0.0] - 2026-05-03
42
+
43
+ ### Added
44
+
45
+ - **Core client** (`ValidPayClient`) — create, verify, revoke, and reinstate
46
+ document intents via the ValidPay API.
47
+ - **AES-256-GCM encryption** — client-side encryption/decryption with
48
+ commitment hash verification (Patent B).
49
+ - **Split-key verification** (Patent C) — XOR key splitting into Share A
50
+ (document) and Share B (server). Neither alone decrypts.
51
+ - **Time-locked verification** (Patent D) — optional `valid_from` /
52
+ `valid_until` windows with client-side enforcement.
53
+ - **Selective field disclosure** (Patent E) — per-field encryption with
54
+ role-based disclosure policies.
55
+ - **Physical medium binding** (Patent F) — perceptual hashing and binding
56
+ zone comparison for document-to-physical matching.
57
+ Requires optional `binding` extra (`pip install validpay[binding]`).
58
+ - **Chain-of-custody tracking** (Patent G) — verification event audit log
59
+ via the API.
60
+ - **Blind revocation** (Patent H) — revoke/reinstate intents without
61
+ decrypting the payload.
62
+ - **Offline verification** (`OfflineCache`) — encrypted local cache for
63
+ offline verification with staleness tracking and revocation sync.
64
+ - **Batch intent creation** — create up to 100 intents in a single API call.
65
+ - **115 automated tests** across 4 test modules.
66
+
67
+ [1.0.0]: https://github.com/ValidPay-io/validpay-python-sdk/releases/tag/v1.0.0
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 ValidPay
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 ValidPay
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -1,7 +1,7 @@
1
- include LICENSE
2
- include README.md
3
- include CHANGELOG.md
4
- recursive-include validpay *.py
5
- prune tests
6
- prune check21
7
- prune .github
1
+ include LICENSE
2
+ include README.md
3
+ include CHANGELOG.md
4
+ recursive-include validpay *.py
5
+ prune tests
6
+ prune check21
7
+ prune .github