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

wolfHSM integration #511

Merged
merged 3 commits into from
Nov 13, 2024
Merged

Conversation

bigbrett
Copy link
Contributor

Adds wolfHSM client support to wolfBoot.

Initial support for the following targets:

  • wolfBoot simulator (using wolfHSM POSIX TCP transport)
  • AURIX TC3xx (using built-in shared memory transport)

wolfHSM offload has been added for the following algorithms:

  • RSA
  • ECC
  • SHA256

Additional changes:

  • changes AURIX TC3xx default signature algo to ecc256
  • Modifications to AURIX TC3xx linker file based on HSM debugging
  • Adds public key der export option to keytools, so it can be loaded into HSM out-of-band
  • Adds option to keygen to zeroize public key (as it is unused in conjunction with HSM)
  • doc updates

@bigbrett
Copy link
Contributor Author

rebased to fix merge conflicts that arose since filing the PR (just to config files), no code changes introduced

Copy link
Contributor

@dgarske dgarske left a comment

Choose a reason for hiding this comment

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

Looking good. All minor feedback

src/image.c Show resolved Hide resolved
hal/aurix_tc3xx.c Outdated Show resolved Hide resolved
tools/keytools/keygen.c Outdated Show resolved Hide resolved
tools/keytools/keygen.c Outdated Show resolved Hide resolved
@dgarske dgarske removed their assignment Oct 29, 2024
billphipps
billphipps previously approved these changes Oct 30, 2024
Copy link
Contributor

@billphipps billphipps left a comment

Choose a reason for hiding this comment

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

Awesome! Minor nits. Update if you want. A couple of questions.

IDE/AURIX/README.md Show resolved Hide resolved
IDE/AURIX/README.md Show resolved Hide resolved
IDE/AURIX/test-app/Lcf_Gnuc_Tricore_Tc.lsl Show resolved Hide resolved
IDE/AURIX/wolfBoot-tc3xx-wolfHSM/Cpu0_Main.c Show resolved Hide resolved
options.mk Show resolved Hide resolved
src/image.c Show resolved Hide resolved
src/update_ram.c Show resolved Hide resolved
tools/keytools/keygen.c Show resolved Hide resolved
@bigbrett
Copy link
Contributor Author

@dgarske addressed review comments and rebased to fix conflicts introduced by some of the latest PRs.

billphipps
billphipps previously approved these changes Nov 1, 2024
@bigbrett bigbrett dismissed dgarske’s stale review November 1, 2024 15:46

addressed feedback

dgarske
dgarske previously approved these changes Nov 1, 2024
Copy link
Contributor

@dgarske dgarske left a comment

Choose a reason for hiding this comment

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

Over to @danielinux

Copy link
Member

@danielinux danielinux left a comment

Choose a reason for hiding this comment

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

Looks good, and documentation is complete. Just a minor thing, the new options in keygen.c: I see those are mentioned in the keystore doucment, they should be also breifly mentioned in signing.md, as all the command line options for the key tools are usually grouped there.

tools/keytools/keygen.c Show resolved Hide resolved
tools/keytools/keygen.c Show resolved Hide resolved
@danielinux danielinux merged commit 6d1adc2 into wolfSSL:master Nov 13, 2024
101 checks passed
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.

4 participants