Skip to content

Sign a hashed message in hardware key warmup call#48206

Merged
zmb3 merged 1 commit intomasterfrom
gzdunek/sign-hashed-message
Oct 31, 2024
Merged

Sign a hashed message in hardware key warmup call#48206
zmb3 merged 1 commit intomasterfrom
gzdunek/sign-hashed-message

Conversation

@gzdunek
Copy link
Copy Markdown
Contributor

@gzdunek gzdunek commented Oct 31, 2024

Otherwise, signing may fail with "input must be a hashed message" error.

Otherwise, signing may fail with "input must be a hashed message" error.
@gzdunek gzdunek added backport/branch/v14 no-changelog Indicates that a PR does not require a changelog entry backport/branch/v17 labels Oct 31, 2024
@gzdunek gzdunek requested review from Joerger and zmb3 October 31, 2024 12:23
@aws-amplify-us-west-2
Copy link
Copy Markdown

This pull request is automatically being deployed by Amplify Hosting (learn more).

Access this pull request here: https://pr-48206.d3pp5qlev8mo18.amplifyapp.com

Copy link
Copy Markdown
Contributor

@Joerger Joerger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested with a custom RSA key generated in the PIV key, and it works:

> ykman piv keys generate -a RSA2048 9c --touch-policy=CACHED --pin-policy=ONCE -
> tsh login --piv-slot=9c

@gzdunek
Copy link
Copy Markdown
Contributor Author

gzdunek commented Oct 31, 2024

Thanks, Brian!

@gzdunek gzdunek added this pull request to the merge queue Oct 31, 2024
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 31, 2024
@zmb3 zmb3 added this pull request to the merge queue Oct 31, 2024
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 31, 2024
@zmb3 zmb3 added this pull request to the merge queue Oct 31, 2024
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 31, 2024
@gzdunek gzdunek added this pull request to the merge queue Oct 31, 2024
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 31, 2024
@zmb3 zmb3 added this pull request to the merge queue Oct 31, 2024
Merged via the queue into master with commit 47494db Oct 31, 2024
@zmb3 zmb3 deleted the gzdunek/sign-hashed-message branch October 31, 2024 22:27
@public-teleport-github-review-bot
Copy link
Copy Markdown

@gzdunek See the table below for backport results.

Branch Result
branch/v14 Failed
branch/v15 Failed
branch/v16 Failed
branch/v17 Create PR

gzdunek added a commit that referenced this pull request Nov 8, 2024
Otherwise, signing may fail with "input must be a hashed message" error.

(cherry picked from commit 47494db)
gzdunek added a commit that referenced this pull request Nov 14, 2024
Otherwise, signing may fail with "input must be a hashed message" error.

(cherry picked from commit 47494db)
gzdunek added a commit that referenced this pull request Nov 14, 2024
Otherwise, signing may fail with "input must be a hashed message" error.

(cherry picked from commit 47494db)
gzdunek added a commit that referenced this pull request Nov 14, 2024
Otherwise, signing may fail with "input must be a hashed message" error.

(cherry picked from commit 47494db)
github-merge-queue Bot pushed a commit that referenced this pull request Nov 21, 2024
…7953)

* Cache PIV connections to share across the program execution (#47091)

* Cache yubikey objects.

* Cache PIV connections to share across the program execution.

* Do not release the connection until `sign` returns

* Do not ignore errors

* Perform a "warm up" call to YubiKey

* Fix tests

* Use a specific interface to check if the key can be "warmed up"

* Allow abandoning `signer.Sign` call when context is canceled

* Make sure that the cached key is valid for the given private key policy

The reason for adding this check was failing `invalid key policies` test.

* Make `hardwareKeyWarmer` private

* Force callers to release connection

* Improve comments

* Fix lint

* Improve `connect` comment

* Fix race condition

* Simplify `release` logic

* Trigger license/cla

---------

Co-authored-by: joerger <bjoerger@goteleport.com>

(cherry picked from commit bd6fdbf)

* Sign a hashed message in hardware key warmup call (#48206)

Otherwise, signing may fail with "input must be a hashed message" error.

(cherry picked from commit 47494db)

* Remove delayed closing of yubikey connection to prevent the connection from leaking after program execution. (#48414)

(cherry picked from commit b7c0e79)

---------

Co-authored-by: Brian Joerger <bjoerger@goteleport.com>
github-merge-queue Bot pushed a commit that referenced this pull request Nov 21, 2024
…7952)

* Cache PIV connections to share across the program execution (#47091)

* Cache yubikey objects.

* Cache PIV connections to share across the program execution.

* Do not release the connection until `sign` returns

* Do not ignore errors

* Perform a "warm up" call to YubiKey

* Fix tests

* Use a specific interface to check if the key can be "warmed up"

* Allow abandoning `signer.Sign` call when context is canceled

* Make sure that the cached key is valid for the given private key policy

The reason for adding this check was failing `invalid key policies` test.

* Make `hardwareKeyWarmer` private

* Force callers to release connection

* Improve comments

* Fix lint

* Improve `connect` comment

* Fix race condition

* Simplify `release` logic

* Trigger license/cla

---------

Co-authored-by: joerger <bjoerger@goteleport.com>

(cherry picked from commit bd6fdbf)

* Sign a hashed message in hardware key warmup call (#48206)

Otherwise, signing may fail with "input must be a hashed message" error.

(cherry picked from commit 47494db)

* Remove delayed closing of yubikey connection to prevent the connection from leaking after program execution. (#48414)

(cherry picked from commit b7c0e79)

---------

Co-authored-by: Brian Joerger <bjoerger@goteleport.com>
github-merge-queue Bot pushed a commit that referenced this pull request Nov 21, 2024
…7954)

* Cache PIV connections to share across the program execution (#47091)

* Cache yubikey objects.

* Cache PIV connections to share across the program execution.

* Do not release the connection until `sign` returns

* Do not ignore errors

* Perform a "warm up" call to YubiKey

* Fix tests

* Use a specific interface to check if the key can be "warmed up"

* Allow abandoning `signer.Sign` call when context is canceled

* Make sure that the cached key is valid for the given private key policy

The reason for adding this check was failing `invalid key policies` test.

* Make `hardwareKeyWarmer` private

* Force callers to release connection

* Improve comments

* Fix lint

* Improve `connect` comment

* Fix race condition

* Simplify `release` logic

* Trigger license/cla

---------

Co-authored-by: joerger <bjoerger@goteleport.com>

(cherry picked from commit bd6fdbf)

* Sign a hashed message in hardware key warmup call (#48206)

Otherwise, signing may fail with "input must be a hashed message" error.

(cherry picked from commit 47494db)

* Remove delayed closing of yubikey connection to prevent the connection from leaking after program execution. (#48414)

(cherry picked from commit b7c0e79)

---------

Co-authored-by: Brian Joerger <bjoerger@goteleport.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport/branch/v17 no-changelog Indicates that a PR does not require a changelog entry size/sm

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants