.. _transport: ********************************************* 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)