Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(sdk): PLAT-3082 nanotdf encrypt #744

Merged
merged 87 commits into from
May 24, 2024
Merged

Conversation

patmantru
Copy link
Contributor

@patmantru patmantru commented May 6, 2024

PLAT-3082 Adds nanotdf encrypt and decrypt of buffer

  • Encrypt of buffer
  • Decrypt of buffer
  • Support for Secp256r1
  • Updates to go kas to support the above

Note that this is an early first-pass implementation, there is more work to do:

  • support more curves,
  • dataset mode,
  • additional refactoring and cleanup
  • creating appropriate unit tests for everything

Resolves #766

@patmantru patmantru changed the title feat(nanotdf) : [PLAT-3082) nanotdf encrypt feat(nanotdf) : PLAT-3082 nanotdf encrypt May 8, 2024
@patmantru patmantru changed the title feat(nanotdf) : PLAT-3082 nanotdf encrypt feat(nanotdf): PLAT-3082 nanotdf encrypt May 8, 2024
@patmantru patmantru changed the title feat(nanotdf): PLAT-3082 nanotdf encrypt feat(sdk): PLAT-3082 nanotdf encrypt May 9, 2024
@patmantru patmantru self-assigned this May 10, 2024
@patmantru patmantru added this pull request to the merge queue May 24, 2024
@dmihalcik-virtru
Copy link
Member

@patmantru it looks like there are some semantic merge conflicts with main.

@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks May 24, 2024
@patmantru patmantru enabled auto-merge May 24, 2024 15:51
@patmantru patmantru added this pull request to the merge queue May 24, 2024
Merged via the queue into main with commit 6c82536 May 24, 2024
15 checks passed
@patmantru patmantru deleted the PLAT-3082-nanotdf-encrypt branch May 24, 2024 16:44
dmihalcik-virtru added a commit to opentdf/client-web that referenced this pull request May 24, 2024
- Use `PLAT-3082-nanotdf-encrypt` branch of [opentdf/platform](opentdf/platform#744)
  - This branch includes fixes to nanotdf parsing required to function, and removes need to load an HSM/pkcs11 shared library.
  - Updates to opentdf.yaml (eccertid) and key gen code to match
- Lets signing key be an RSA key not EC key to match current behavior of platform's KAS
- Improves unit testing of nanoTDF code
  - Adds actual test of ECDH based rewrap
  - Started groundwork for more golden file tests but ended up not having time to do any of real value
- Some small code cleanups
  - Use the new 'cause' option to `Error` constructor when applicatble
  - Support certs for public key queries of a server. TODO check the cert details?
  - Prefer CryptoKey to stringly typed keys in a couple of places
- Minor fix to support RS512
github-merge-queue bot pushed a commit that referenced this pull request May 29, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.1.4](lib/ocrypto/v0.1.3...lib/ocrypto/v0.1.4)
(2024-05-29)


### Features

* **core:** Allow app specified session keys
([#882](#882))
([529fb0e](529fb0e))
* **sdk:** PLAT-3082 nanotdf encrypt
([#744](#744))
([6c82536](6c82536))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
github-merge-queue bot pushed a commit that referenced this pull request May 30, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.2.4](sdk/v0.2.3...sdk/v0.2.4)
(2024-05-30)


### Features

* **core:** Allow app specified session keys
([#882](#882))
([529fb0e](529fb0e))
* **sdk:** Adds Option to Pass in RSA Keys to SDK
([#867](#867))
([739a828](739a828))
* **sdk:** PLAT-3082 nanotdf encrypt
([#744](#744))
([6c82536](6c82536))


### Bug Fixes

* **sdk:** if we encounter an error getting an access token then don't
make the request
([#872](#872))
([19188d5](19188d5))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
Co-authored-by: Jake Van Vorhis <83739412+jakedoublev@users.noreply.github.com>
github-merge-queue bot pushed a commit that referenced this pull request May 30, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.4.4](service/v0.4.3...service/v0.4.4)
(2024-05-30)


### Features

* **sdk:** PLAT-3082 nanotdf encrypt
([#744](#744))
([6c82536](6c82536))


### Bug Fixes

* **kas:** lowercase config mapstructure for kas key paths
([#891](#891))
([b205926](b205926)),
closes [#890](#890)
* **policy:** downgrade policy SQL statement info level logs to debug
([#853](#853))
([771abd6](771abd6)),
closes [#845](#845)
* **core:** bump sdk version in service module
([#892](#892))
([d66ce92](d66ce92))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
Co-authored-by: Jake Van Vorhis <83739412+jakedoublev@users.noreply.github.com>
tech-guru42 added a commit to tech-guru42/TDF that referenced this pull request Jun 3, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.1.4](opentdf/platform@lib/ocrypto/v0.1.3...lib/ocrypto/v0.1.4)
(2024-05-29)


### Features

* **core:** Allow app specified session keys
([#882](opentdf/platform#882))
([529fb0e](opentdf/platform@529fb0e))
* **sdk:** PLAT-3082 nanotdf encrypt
([#744](opentdf/platform#744))
([6c82536](opentdf/platform@6c82536))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
tech-guru42 added a commit to tech-guru42/TDF that referenced this pull request Jun 3, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.2.4](opentdf/platform@sdk/v0.2.3...sdk/v0.2.4)
(2024-05-30)


### Features

* **core:** Allow app specified session keys
([#882](opentdf/platform#882))
([529fb0e](opentdf/platform@529fb0e))
* **sdk:** Adds Option to Pass in RSA Keys to SDK
([#867](opentdf/platform#867))
([739a828](opentdf/platform@739a828))
* **sdk:** PLAT-3082 nanotdf encrypt
([#744](opentdf/platform#744))
([6c82536](opentdf/platform@6c82536))


### Bug Fixes

* **sdk:** if we encounter an error getting an access token then don't
make the request
([#872](opentdf/platform#872))
([19188d5](opentdf/platform@19188d5))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
Co-authored-by: Jake Van Vorhis <83739412+jakedoublev@users.noreply.github.com>
tech-guru42 added a commit to tech-guru42/TDF that referenced this pull request Jun 3, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.4.4](opentdf/platform@service/v0.4.3...service/v0.4.4)
(2024-05-30)


### Features

* **sdk:** PLAT-3082 nanotdf encrypt
([#744](opentdf/platform#744))
([6c82536](opentdf/platform@6c82536))


### Bug Fixes

* **kas:** lowercase config mapstructure for kas key paths
([#891](opentdf/platform#891))
([b205926](opentdf/platform@b205926)),
closes [#890](opentdf/platform#890)
* **policy:** downgrade policy SQL statement info level logs to debug
([#853](opentdf/platform#853))
([771abd6](opentdf/platform@771abd6)),
closes [#845](opentdf/platform#845)
* **core:** bump sdk version in service module
([#892](opentdf/platform#892))
([d66ce92](opentdf/platform@d66ce92))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
Co-authored-by: Jake Van Vorhis <83739412+jakedoublev@users.noreply.github.com>
passion-127 added a commit to passion-127/TDF that referenced this pull request Jun 6, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.1.4](opentdf/platform@lib/ocrypto/v0.1.3...lib/ocrypto/v0.1.4)
(2024-05-29)


### Features

* **core:** Allow app specified session keys
([#882](opentdf/platform#882))
([529fb0e](opentdf/platform@529fb0e))
* **sdk:** PLAT-3082 nanotdf encrypt
([#744](opentdf/platform#744))
([6c82536](opentdf/platform@6c82536))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
passion-127 added a commit to passion-127/TDF that referenced this pull request Jun 6, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.2.4](opentdf/platform@sdk/v0.2.3...sdk/v0.2.4)
(2024-05-30)


### Features

* **core:** Allow app specified session keys
([#882](opentdf/platform#882))
([529fb0e](opentdf/platform@529fb0e))
* **sdk:** Adds Option to Pass in RSA Keys to SDK
([#867](opentdf/platform#867))
([739a828](opentdf/platform@739a828))
* **sdk:** PLAT-3082 nanotdf encrypt
([#744](opentdf/platform#744))
([6c82536](opentdf/platform@6c82536))


### Bug Fixes

* **sdk:** if we encounter an error getting an access token then don't
make the request
([#872](opentdf/platform#872))
([19188d5](opentdf/platform@19188d5))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
Co-authored-by: Jake Van Vorhis <83739412+jakedoublev@users.noreply.github.com>
passion-127 added a commit to passion-127/TDF that referenced this pull request Jun 6, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.4.4](opentdf/platform@service/v0.4.3...service/v0.4.4)
(2024-05-30)


### Features

* **sdk:** PLAT-3082 nanotdf encrypt
([#744](opentdf/platform#744))
([6c82536](opentdf/platform@6c82536))


### Bug Fixes

* **kas:** lowercase config mapstructure for kas key paths
([#891](opentdf/platform#891))
([b205926](opentdf/platform@b205926)),
closes [#890](opentdf/platform#890)
* **policy:** downgrade policy SQL statement info level logs to debug
([#853](opentdf/platform#853))
([771abd6](opentdf/platform@771abd6)),
closes [#845](opentdf/platform#845)
* **core:** bump sdk version in service module
([#892](opentdf/platform#892))
([d66ce92](opentdf/platform@d66ce92))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
Co-authored-by: Jake Van Vorhis <83739412+jakedoublev@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

KAS nanotdf rewrap does not perform any access checks
7 participants