Saltar al contingut principal

Autenticació del SDK de dispositius (DPoP)

El SDK v2 de vitalera utilitza DPoP (Demonstration of Proof-of-Possession) per a l'autenticació. Això vincula els tokens a un parell de claus criptogràfiques al dispositiu, prevenint el robatori de tokens i els atacs de repetició — quelcom crític per a programari de dispositius mèdics que gestiona informació de salut protegida.

Com funciona

  1. Inicialització — Quan crideu VitaleraSdk.builder().clientId("your-org-license-key").build(), el SDK genera un parell de claus DPoP (emmagatzemat a l'Android Keystore o iOS Secure Enclave).
  2. Activació — El SDK envia una sol·licitud d'activació signada amb DPoP al servei d'autenticació de vitalera. El servidor valida la clau de llicència de l'organització i retorna un token d'accés vinculat amb DPoP juntament amb els drets de l'organització.
  3. Memòria cau de drets — Els drets s'emmagatzemen en memòria cau localment durant un període de gràcia fora de línia de 7 dies. El SDK funciona sense connexió mentre els drets emmagatzemats no hagin expirat.
  4. Refresc automàtic — El SDK gestiona el refresc de tokens de forma transparent. Mai necessiteu gestionar tokens manualment.

Android (Kotlin)

val sdk = VitaleraSdk.builder()
.context(applicationContext)
.clientId("your-org-license-key") // Organization license key
.addProvider("omron")
.build() // suspend: DPoP key gen + activation

iOS (Swift)

let sdk = try await VitaleraSdk.companion.builder()
.clientId(clientId: "your-org-license-key") // Organization license key
.addProvider(providerName: "omron")
.build() // async: Secure Enclave key gen + activation

Obtenció d'una clau de llicència

Contacteu amb sdk@vitalera.com per obtenir una clau de llicència d'organització. Cada clau està vinculada a una organització específica i determina quins mòduls de proveïdors i funcions estan disponibles.

Operació sense connexió

El SDK està dissenyat per a casos d'ús de dispositius mèdics on la connectivitat a internet pot ser intermitent. Després de l'activació inicial:

  • L'escaneig i aparellament de dispositius funciona completament sense connexió.
  • La recopilació d'observacions de dispositius BLE funciona completament sense connexió.
  • Les dades s'emmagatzemen en memòria cau localment i es sincronitzen quan es restaura la connectivitat.
  • El període de gràcia de 7 dies permet al SDK operar sense contacte amb el servidor durant fins a una setmana.

Si el període de gràcia expira sense connectivitat, el SDK requereix reactivació abans de continuar operant.

Arquitectura de seguretat

CapaMecanisme
Emmagatzematge de clausAndroid Keystore / iOS Secure Enclave (recolzat per maquinari)
Vinculació de tokenLa prova DPoP vincula cada token al parell de claus del dispositiu
Prevenció de repeticióCada prova DPoP inclou un jti únic i un timestamp iat
TransportTLS 1.2+ per a totes les comunicacions amb el servidor

Propers passos


Necessiteu ajuda?

Contacteu amb support@vitalera.io per a assistència amb l'autenticació del SDK.