Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
a2b4159
Draft specification for key derivation
gilles-peskine-arm Jan 24, 2022
220bda7
Rename a function parameter to avoid confusion
gilles-peskine-arm Jan 25, 2022
c2e2910
Fix internal links
gilles-peskine-arm Jun 3, 2022
1a5b830
Fix typos and copypasta
gilles-peskine-arm Jun 3, 2022
3fc9e04
Be more consistent with raw/cooked key derivation terminology
gilles-peskine-arm Jun 3, 2022
54eb068
New function psa_crypto_driver_key_derivation_get_input_type
gilles-peskine-arm Jun 30, 2022
d9645c8
Fix naming confusion with opaque key derivation
gilles-peskine-arm Jun 30, 2022
eda71ce
Key derivation: improve overview of the problem space
gilles-peskine-arm Jan 12, 2023
4e346bd
Fix entry point name
gilles-peskine-arm Jan 12, 2023
635b779
Fix math character used in text mode
gilles-peskine-arm Jan 12, 2023
fd09408
Pass attributes alongside key buffer
gilles-peskine-arm Jan 20, 2023
66b96e2
Copyediting
gilles-peskine-arm May 30, 2023
4e94fea
Key derivation dispatch doesn't depend on the key type
gilles-peskine-arm May 30, 2023
d2fe1d5
Rationale on key derivation inputs and buffer ownership
gilles-peskine-arm May 30, 2023
f787879
Clarify sequencing of long inputs
gilles-peskine-arm May 30, 2023
b319ed6
State explicitly that cooked key derivation uses the export format
gilles-peskine-arm May 30, 2023
e52bff9
Note possible issue with derive_key: who should choose the input length?
gilles-peskine-arm May 30, 2023
24f5229
Key agreement needs an attribute structure for our key
gilles-peskine-arm May 30, 2023
1414bc3
Minor copyediting
gilles-peskine-arm Jun 2, 2023
f96a18e
Probably resolve concern about the input size for derive_key
gilles-peskine-arm Jun 2, 2023
dcaf104
Note that we may want to rename derive_key
gilles-peskine-arm Jun 2, 2023
7df8ba6
Rework the description of key derivation output/verify key
gilles-peskine-arm Jun 2, 2023
8dd1e62
Copyediting
gilles-peskine-arm Jun 5, 2023
f4ba001
Clarify when key derivation entry points are mandatory/permitted
gilles-peskine-arm Jun 5, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Copyediting
Signed-off-by: Gilles Peskine <[email protected]>
  • Loading branch information
gilles-peskine-arm committed Jun 5, 2023
commit 8dd1e623e1774688377c79293086b5bea2bf99f2
6 changes: 3 additions & 3 deletions docs/proposed/psa-driver-interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -480,12 +480,12 @@ If the key derivation's `PSA_KEY_DERIVATION_INPUT_SECRET` input is in a secure e
1. Otherwise proceed as for `psa_key_derivation_output_bytes()`, then import the resulting key material.

* For a call to `psa_key_derivation_verify_key()`:
1. For ``psa_key_derivation_verify_key()` only: if the driver has a `"key_derivation_verify_key"` entry point, call it and stop.
1. If the driver has a `"key_derivation_verify_key"` entry point, call it and stop.
1. Call the driver's `"export_key"` entry point on the key object that contains the expected value, then proceed as for `psa_key_derivation_verify_bytes()`.

* For a call to `psa_key_derivation_verify_bytes()`:
1. If the driver has a `"key_derivation_verify_bytes"` entry point, call the driver's , call the `"key_derivation_verify_bytes"` entry point on the expected output, then stop.
1. Otherwise, proceed as for `psa_key_derivation_output_bytes()`, and compare the resulting output to the expected output inside the core..
1. If the driver has a `"key_derivation_verify_bytes"` entry point, call that entry point on the expected output, then stop.
1. Otherwise, proceed as for `psa_key_derivation_output_bytes()`, and compare the resulting output to the expected output inside the core.

* For a call to `psa_key_derivation_output_bytes()`:
1. Call the `"key_derivation_output_bytes"` entry point. The core may call this entry point multiple times to implement a single call from the application when deriving a cooked (non-raw) key as described below, or if the output size exceeds some implementation limit.
Expand Down