Skip to content

Commit

Permalink
Update draft-ietf-lamps-pq-composite-sigs.md
Browse files Browse the repository at this point in the history
  • Loading branch information
johngray-dev authored Nov 25, 2024
1 parent 55507a2 commit bec1ee6
Showing 1 changed file with 0 additions and 40 deletions.
40 changes: 0 additions & 40 deletions draft-ietf-lamps-pq-composite-sigs.md
Original file line number Diff line number Diff line change
Expand Up @@ -662,46 +662,6 @@ Note that in step 4 above, the function fails early if the first component fails
## SerializeKey and DeserializeKey

The serialization routine for keys simply concatenates the fixed-length public or private keys of the component signatures, as defined below:
~~~
Composite-ML-DSA.SerializeKey(key) -> bytes

Explicit Input:

key Composite ML-DSA public key or private key

Implicit inputs:

ML-DSA A placeholder for the specific ML-DSA algorithm and
parameter set to use, for example, could be "ML-DSA-65".

Trad A placeholder for the specific traditional algorithm and
parameter set to use, for example "RSA" or "ECDSA".

Output:

bytes The encoded public key

Serialization Process:

1. Separate the keys

(mldsaKey, tradKey) = key

2. Serialize each of the constituent public keys

mldsaEncodedKey = MLDSA.SerializeKey(mldsaKey)
tradEncodedKey = Trad.SerializeKey(tradKey)

3. Calculate the length encoding of the mldsaEncodedPK (or use the value from table )

encodedLength = IntegerToBytes(mldsaEncodePK.length, 3)

4. Combine and output the encoded public key

bytes = encodedLength || mldsaEncodedPK || tradEncodedPK
output bytes
~~~
{: #alg-composite-serialize title="Composite SerializeKey(pk)"}

# Composite Key Structures {#sec-composite-structs}

Expand Down

0 comments on commit bec1ee6

Please sign in to comment.