B.2.2. Composants couverts sélectifs avec rsa-pss-sha512
B.2.2. Composants couverts sélectifs avec rsa-pss-sha512
Cet exemple couvre des composants supplémentaires (l'autorité, le champ d'en-tête Content-Digest et un paramètre de requête nommé unique) dans test-request avec l'algorithme rsa-pss-sha512. Il ajoute aussi un paramètre tag avec la valeur propre à l'application header- example.
La base de signature correspondante est :
NOTE: '' line wrapping per RFC 8792
"@authority": example.com
"content-digest": sha-512=:WZDPaVn/7XgHaAy8pmojAkGWoRx2UFChF41A2svX
+TaPm+AbwAgBWnrIiYllu7BNNyealdVLvRwEmTHWXvJwew==:
"@query-param";name="Pet": dog
"@signature-params": ("@authority" "content-digest"
"@query-param";name="Pet")
;created=1618884473;keyid="test-key-rsa-pss"
;tag="header-example"
Il en résulte l'ajout au message des champs d'en-tête Signature-Input et Signature suivants sous l'étiquette sig-b22 :
NOTE: '' line wrapping per RFC 8792
Signature-Input: sig-b22=("@authority" "content-digest"
"@query-param";name="Pet");created=1618884473
;keyid="test-key-rsa-pss";tag="header-example"
Signature: sig-b22=:LjbtqUbfmvjj5C5kr1Ugj4PmLYvx9wVjZvD9GsTT4F7GrcQ
EdJzgI9qHxICagShLRiLMlAJjtq6N4CDfKtjvuJyE5qH7KT8UCMkSowOB4+ECxCmT
8rtAmj/0PIXxi0A0nxKyB09RNrCQibbUjsLS/2YyFYXEu4TRJQzRw1rLEuEfY17SA
RYhpTlaqwZVtR8NV7+4UKkjqpcAoFqWFQh62s7Cl+H2fjBSpqfZUJcsIk4N6wiKYd
4je2U/lankenQ99PZfB4jY3I5rSV2DSBVkSFsURIjYErOs0tFTQosMTAoxk//0RoK
UqiYY8Bh0aaUEb0rQl3/XaVe4bXTugEjHSw==:
Notez que l'algorithme RSA-PSS employé ici est non déterministe, c'est-à-dire qu'une valeur de signature différente sera produite à chaque exécution de l'algorithme. La valeur de signature fournie ici peut être validée avec les clés données, mais on ne s'attend pas à ce que les valeurs nouvellement générées correspondent à l'exemple. Voir la section 7.3.5.