Pošiljanje sporočil in prejemanje odgovorov¶
Komunikacija s spletnim vmesnikom se vrši preko HTTPS protokola.
Identifikacija pošiljatlja sporočila je zagotovljena z uporabo podpisa sporočila, ki se izvede s privatnim ključem.
JWS Compact Serialization¶
Sporočilo ki se pošilja na strežnik je zapisano kot:
BASE64URL(UTF8(JWS Protected Header)) || '.' ||
BASE64URL(JWS Payload) || '.' ||
BASE64URL(JWS Signature)
JWS Protected Header¶
{
"alg": "RS256",
"typ": "json",
"kid": "D5:1E:27:17:09:8D:EC:E1:E5:B1:D9:49:D6:92:A1:0B:FB:22:C1:92"
}
- alg definira algoritem uporabljen za podpis. Uporablja se “RS256” (RSA PKCS#1 with SHA-256).
- typ definira obliko sporočila, uporablja se “json”.
- kid je key identifier in ga prepišemo iz polja “Subject Key Identifier”, ki je del x509_v3 zapisa certifikata.
openssl pkcs12 -nodes -in certificateStoreFileName.p12 | openssl x509 -text -noout
JWS Payload¶
{
"Header": {
"MessageID": "20160202"
},
"Filter": {
"dateFrom": "2016-01-04T07:00:00"
}
}
JWS Signature¶
Je HMAC pridobljene po SHA-256 algoritmu iz vrednosti:
BASE64URL(UTF8(JWS Protected Header)) || '.' || BASE64URL(JWS Payload)