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)