3. Notation (Notazione)
3. Notation (Notazione)
I seguenti termini sono utilizzati in tutto questo documento per descrivere le operazioni, i ruoli e i comportamenti di HPKE:
(skX, pkX): Una coppia di chiavi del meccanismo di incapsulamento della chiave (KEM) utilizzata nel ruolo X, dove X è uno tra S, R o E rispettivamente per mittente, destinatario ed effimero; skX è la chiave privata e pkX è la chiave pubblica.
pk(skX): La chiave pubblica KEM corrispondente alla chiave privata KEM skX.
Sender (S): Ruolo dell'entità che invia un messaggio crittografato.
Recipient (R): Ruolo dell'entità che riceve un messaggio crittografato.
Ephemeral (E): Ruolo di un valore casuale fresco destinato all'uso singolo.
I2OSP(n, w): Converte l'intero non negativo n in una stringa di byte di lunghezza w in formato big-endian, come descritto in [RFC8017].
OS2IP(x): Converte la stringa di byte x in un intero non negativo, come descritto in [RFC8017], assumendo l'ordine dei byte big-endian.
concat(x0, ..., xN): Concatenazione di stringhe di byte. concat(0x01, 0x0203, 0x040506) = 0x010203040506.
random(n): Una stringa di byte pseudocasuale di lunghezza n byte.
xor(a,b): XOR di stringhe di byte; xor(0xF0F0, 0x1234) = 0xE2C4. È un errore chiamare questa funzione con due argomenti di lunghezza diversa.