Saltare al contenuto principale

Verifica della firma: Sicurezza degli aggiornamenti degli app nel 2026

Scopri come la verifica della firma protegge gli aggiornamenti di Capacitor e Electron, coprendo i principi crittografici e l'integrazione CI/CD.

Verifica della firma: Sicurezza degli aggiornamenti degli app nel 2026

La tua pipeline di aggiornamento è verde, il pacchetto è disponibile all'edge e i dispositivi stanno controllando se è disponibile. Poi qualcuno nota un cambiamento sospetto nel codice JavaScript generato. Un esecutore di build compromesso, una credenziale del sviluppatore rubata o un artefatto alterato possono aver introdotto un payload malintenzionato nella release dopo che la verifica è stata completata. Senza verifica della firmaLa client non ha una via affidabile per distinguere il pacchetto che il tuo team ha costruito da uno che un attaccante ha modificato in transito o al livello di consegna.

Le aggiornamenti firmati cambiano questa decisione. Il dispositivo verifica il pacchetto contro una chiave pubblica affidata prima di sostituire il code in esecuzione corrente. Se la firma non corrisponde, l'aggiornamento rimane inattivo. Questo sembra chiaro, ma le fallite di produzione solitamente si verificano intorno alla crittografia, non all'interno di essa. Le squadre perdono il controllo della rotazione delle chiavi, firmano l'artefatto sbagliato, applicano un file di cache non verificato o raccolgono così poca telemetria da non poter spiegare quali dispositivi hanno rifiutato un aggiornamento.

Il contenuto che segue si concentra su quegli angoli operativi, dalla modello di fiducia e dal flusso di verifica ai controlli CI/CD, alla risposta agli incidenti e alle limitazioni che una firma non risolve da sola.

Indice dei contenuti

Perché la verifica delle firme prevene gli aggiornamenti catastrofici

Un popolare plugin Capacitor della piattaforma code ha la sua pipeline CI/CD compromessa in un momento tardo del processo di rilascio. L'attaccante modifica il pacchetto di aggiornamento in tempo reale, aggiunge Capacitor che legge i dati dell'applicazione e pubblica l'artifact utilizzando il percorso di consegna normale della pipeline. I dispositivi non vedono un dominio di download sconosciuto. Vedono un aggiornamento valido in attesa di installazione.

Senza un controllo crittografico client-side, l'applicazione potrebbe scaricare e eseguire il pacchetto alterato non appena la sua politica di aggiornamento lo consente. Il possibile raggio d'azione comprende l'esfiltrazione dei dati, la rapina di credenziali, le flussi di pagamento alterati e la manipolazione silenziosa della logica di business. L'indagine è anche dolorosa. Gli ingegneri devono determinare quale artifact è stato servito, quali canali lo hanno ricevuto, quali dispositivi lo hanno scaricato, quali dispositivi l'hanno applicato e se il malizioso code è stato eseguito prima che il rilascio fosse ritirato.

Un diagramma che illustra come la verifica delle firme blocca le iniezioni di code malizioso in un percorso di consegna del pacchetto di aggiornamento.

A un team con verifica della firma abilitata si verifica un diverso modello di fallimento. L'applicazione scarica lo stesso pacchetto avvelenato, calcola il digest previsto e controlla la firma associata con la chiave fidata. Il controllo crittografico fallisce, l'aggiornatore rifiuta di attivare il pacchetto e un evento raggiunge l'equipe di sicurezza prima che il nuovo code venga eseguito.

Regola di produzione: Tratta un aggiornamento come ostile fino a quando il dispositivo non ha verificato sia la sua identità che i suoi byte esatti.

La protezione funziona solo se il verificatore viene eseguito sul dispositivo, prima dell'estrazione o dell'attivazione, e se la chiave fidata non può essere sostituita dall'aggiornamento stesso. Ciò rende la gestione delle chiavi e dei certificati parte del design dell'aggiornamento, non un dettaglio amministrativo. Le squadre che utilizzano Capacitor dovrebbero documentare questo confine accanto al loro processo di gestione dei certificati, inclusi chi può firmare, dove vivono le chiavi e come un client impara di un successore autorizzato della chiave. Le ricerche moderne hanno trattato la verifica della firma come una disciplina ingegneristica misurabile da decenni. Le prime pubblicazioni di studi sulla verifica della firma off-line e on-line apparvero nel 1977, e il lavoro successivo si è espanso in metodi che includono HMM e FFT. Una comparazione citata ampiamente ha riportato gli esperti umani a circa 0,5% di accettazione falsa e 7% di rifiuto falso

mentre le persone comuni hanno raggiunto 6,5% di accettazione falsa e 26% di rifiuto falsocome riassunto in questa panoramica storica della ricerca sulla verifica della firmaProduction rule: La protezione funziona solo se il verificatore viene eseguito sul dispositivo, prima dell'estrazione o dell'attivazione, e se la chiave fidata non può essere sostituita dall'aggiornamento stesso. Ciò rende la gestione delle chiavi e dei certificati parte del design dell'aggiornamento, non un dettaglio amministrativo. Le squadre che utilizzano __CAPGO_KEEP_0__ dovrebbero documentare questo confine accanto al loro processo di gestione dei certificati, inclusi chi può firmare, dove vivono le chiavi e come un client impara di un successore autorizzato della chiave. Quei dati riguardano le firme manoscritte, non gli aggiornamenti software, ma confermano un punto utile: la qualità della verifica dipende dal verificatore, dai suoi dati di riferimento e dalla sua politica di decisione.

Come la firma crittografica crea fiducia

Pensate a un bundle di rilascio come a un plico sigillato. Il sistema di costruzione calcola una digestione degli esatti byte e utilizza una chiave privata per creare una firma digitale su quella digestione. L'app contiene, o riceve in modo sicuro, la chiave pubblica corrispondente , che agisce come il noto stemma sul plico. Se un attaccante modifica anche una piccola parte del bundle, l'app calcola una digestione diversa e la firma non si verifica più.Un diagramma che illustra il processo di firma crittografica da un svilgiatore che crea una firma a una verifica di app mobile.

Il flusso ha quattro pezzi distinti:

Hashing

  1. trasforma il bundle in una digestione di lunghezza fissata. SHA-256 e SHA-512 sono scelte comuni per questo passo di integrità. Generazione di chiave
  2. Rilascio crea una coppia asimmetrica. La chiave privata firma, e la chiave pubblica verifica.
  3. Autenticazione lega il digesto alla metadata di rilascio, ideale che includa la versione, il canale, la piattaforma e l'audience.
  4. Verifica ricalcola il digesto dai byte scaricati e controlla che la firma sia stata prodotta dalla chiave privata fidata.

La verificatrice deve legare la firma allo stesso payload che l'aggiornatore applicherà. Una firma su un manifesto non è sufficiente se l'app successivamente scarica un bundle senza controllare che l'hash del manifesto corrisponda al bundle. Allo stesso modo, verificare l'hash di un bundle non stabilisce chi l'ha autorizzato a meno che l'hash stesso non sia autenticato.

Scegliere gli algoritmi per la consegna mobile

RSA rimane familiare e ampiamente supportato, ma richiede in genere un materiale di chiave più grande e scelte di padding attente. Per nuovi protocolli di aggiornamento mobili, Ed25519 è spesso attraente perché le chiavi e le firme sono compatte e il percorso di verifica è efficiente sui processori mobili. RSA-PSS può anche essere appropriato quando i requisiti di compatibilità rendono necessario RSA. La scelta dovrebbe seguire la libreria di crittografia della piattaforma, il supporto hardware, i requisiti di interoperabilità e il piano di migrazione, non un benchmark copiato da un altro ambiente.

Una introduzione independente utile è questa guida a la comprensione delle firme criptografiche per blockchain. Il contesto della transazione differisce da quello dell'aggiornamento OTA, ma l'esplicazione dell'autorizzazione con chiave privata e della verifica con chiave pubblica si trasferisce direttamente.

Catene di fiducia e chiavi fissate

Una catena di certificati delega la fiducia da un'autorità radice attraverso autorità intermediarie a un certificato foglia. Quel modello può semplificare operazioni di PKI ampie, ma un client di aggiornamento dell'applicazione ha spesso una richiesta più ristretta: fidarsi solo della chiave del publisher che ha autorizzato questo aggiornamento. Inserire una chiave pubblica, o un piccolo insieme di chiavi autorizzate, direttamente nel binario dell'applicazione è una forma di fissaggio. Riduce la dipendenza dalle autorità di certificazione esterne, ma crea un problema di rotazione perché il binario deve già fidarsi della chiave di sostituzione.

Conserva l'invio firmato completo. I metadati della tua rilascio dovrebbero identificare l'artefatto, il suo digest, il canale destinato e l'identificatore della chiave. Le squadre che stanno costruendo questo in Capacitor possono utilizzare un checklist di firma token focalizzato per le Capacitor app Token di firma: checklist per le app Capacitor Applicazioni nel mondo reale in sistemi mobili e web

La verifica della firma appare in diversi strati di un prodotto mobile, e ogni strato risponde a una domanda diversa. La firma dell'app-store aiuta il sistema operativo a decidere se un pacchetto installabile proviene da un publisher autorizzato. Una raccolta OTA firmata risponde a se il payload JavaScript e degli asset è arrivato dalla autorità di rilascio che il tuo updater si aspetta. Una firma JWT aiuta un __CAPGO_KEEP_0__ a verificare che un token sia stato emesso dall'identità service previsto.

Signature verification appears in several layers of a mobile product, and each layer answers a different question. App-store signing helps the operating system decide whether an installable package comes from an authorized publisher. A signed OTA bundle answers whether the JavaScript and asset payload came from the release authority your updater trusts. A JWT signature helps an API validate that a token was issued by the expected identity service.

Confonde quelle layer crea vuoti. Una firma IPA valida non autentica automaticamente un bundle web successivo. Un JWT valido non dimostra che un pacchetto di aggiornamento è sicuro. Una connessione TLS protegge il trasporto, ma non sostituisce la firma degli artefatti quando un CDN, un proxy, un cache o un sistema di costruzione diventa la fonte di manipolazione.

Contesto Mechanismo di firma Modalità di fallimento prevenuta Gap comune
Pacchetto di app-store Controllo di firma della piattaforma e controllo di revisione della piattaforma code Pacchetto installabile riassemblato o non autorizzato Gli squadre suppongono che la firma dello store copra gli asset web post-installazione
Bundle web e worker del servizio Integrità riferita o riferimenti di integrità SRI-stile Risposta CDN avvelenata o asset modificato Solo il file di ingresso viene verificato, mentre gli asset importati rimangono non verificati
API token La firma JWT è stata validata con una chiave pubblica affidabile, spesso ottenuta tramite un endpoint JWKS Token contraffatto o alterato Il server verifica la firma ma ignora emittente, destinatario, scadenza o scopo del token
Aggiornamento in rete La firma di bundle o di contenuto viene verificata sul dispositivo Iniezione di aggiornamento alterato o man-in-the-middle Il client scarica, memorizza o scompatta il contenuto prima di applicare la decisione

Per gli asset web, l'integrità delle risorse sottostanti può limitare cosa un browser accetta per una risorsa di riferimento, ma non risolve automaticamente gli import dinamici, i cache dei servizi di lavoro o un manifesto di aggiornamento che punta a un file selezionato dall'attaccante. L'implementazione deve definire l'insieme completo degli artefatti e verificare i byte che eseguiranno.

Le distribuzioni JWT falliscono in un modo diverso. Gli ingegneri pubblicano spesso la chiave pubblica giusta ma accettano un token con l'emittente o il destinatario sbagliato, o fidano della scelta dell'algoritmo fornita dal token di intestazione. La firma crittografica può essere valida mentre la decisione di autorizzazione è ancora sbagliata.

Anche il contesto operativo conta per i prodotti che dipendono da rilasci frequenti e esperienze mobili faccia a faccia con i clienti. Le squadre che valutano Strategie di engagement per l'app di vendita del 2026 La sicurezza dell'aggiornamento dovrebbe essere considerata un prerequisito per l'esplorazione rapida. Una distribuzione veloce è utile solo quando il canale di rilascio, l'artefatto e il destinatario sono tutti vincolati alla stessa decisione di autorizzazione.

Costruire un flusso di verifica completo

Un aggiornatore di produzione dovrebbe rendere la verifica un ostacolo, non un callback che esegue in un punto vicino all'installazione. La sequenza sicura è deterministica:

  1. Scaricare un manifesto e una firma su un trasporto autenticato.
  2. Validare la struttura del manifesto, la politica di versione, il canale, la scadenza e l'identità dell'artefatto.
  3. Scaricare l'artefatto esatto denominato dal manifesto.
  4. Calcolare il digest dell'artefatto localmente.
  5. Verificare la firma contro una chiave pubblica Ed25519 o RSA-PSS affidabile.
  6. Memorizzare l'artefatto verificato in un'area isolata.
  7. Applicarlo in modo atomico, quindi mantenere un percorso di rollback.

Un diagramma a quattro passaggi che illustra il processo di fetch, verifica della firma e validazione di un bundle di aggiornamento software.

Il manifesto deve legare tutti i valori che influenzano la decisione. Almeno, ciò significa il digest del pacchetto, la versione, il canale, la piattaforma e l'identificatore della chiave. Non lasciare che un downloader sostituisca un URL, un nome di file o un canale dopo la verifica. Il verificatore dovrebbe ricevere byte immutabili e metadati immutabili, quindi restituire un solo risultato accettato o rifiutato.

Una forma semplificata di TypeScript assomiglia a questo:

type UpdateManifest = {
  version: string
  channel: string
  platform: string
  sha256: string
  signature: string
  keyId: string
}

async function verifyBundle(
  bundle: Uint8Array,
  manifest: UpdateManifest,
  trustedKeys: Map<string, Uint8Array>
): Promise<boolean> {
  const publicKey = trustedKeys.get(manifest.keyId)
  if (!publicKey) return false

  const digest = await sha256(bundle)
  if (!constantTimeEqual(digest, hexToBytes(manifest.sha256))) {
    return false
  }

  try {
    return await ed25519Verify(
      base64ToBytes(manifest.signature),
      digest,
      publicKey
    )
  } catch {
    return false
  }
}

L'esempio è intenzionalmente rigoroso. Un base64 danneggiato, un identificatore di chiave sconosciuto, una disuguaglianza di digest o una firma fallita devono produrre un rifiuto. Un timeout durante il download non è un motivo per applicare il file parziale precedente. Elimina gli artefatti incompleti, preserva la versione nota buona e riprova sotto una politica vincolata.

Prevenire le gare e gli errori di annullamento

Scarica in un percorso temporaneo. Chiudi e svuota il file, verifica i suoi contenuti completi, quindi rinominalo in un archivio verificato con versione. Lo step di attivazione dovrebbe fare riferimento solo a quel percorso verificato. In Capacitor e ambienti Electron, evita di far scattare un evento di completamento asincrono di download che attivi indipendentemente la promessa di verifica. Un singolo stato di aggiornamento dovrebbe possedere le transizioni come downloading, verified, pending, active, rejectede rolled_back.

La comparazione a tempo costante è appropriata per confrontare sequenze di byte sensibili, soprattutto quando un attaccante può osservare il comportamento di verifica ripetuta. Operativamente, è più importante non esporre un atto di cortesia che accetta un bundle perché un tentativo precedente ha segnalato la versione come disponibile. La disponibilità e l'autenticità sono stati separati.

La le verifiche di integrità per gli aggiornamenti Capacitor sono un riferimento di implementazione utile per mantenere la logica di validazione delle hash e l'attivazione distinti. Testare le branch di fallimento in modo deliberato, inclusi file troncati, firme malformate, chiavi sconosciute, manifesti scaduti, versioni duplicate e terminazione del processo durante l'attivazione.

Le ricerche sulla verifica automatica delle firme mostrano perché i threshold e i dati di riferimento sono importanti in altri domini. Uno studio online del 1994 ha testato 22 caratteristiche, ha selezionato le migliori 10, e ha riferito 99.5% la classificazione corretta delle firme autentiche mentre respingeva 86% di falsificazioni con un metodo di distanza euclidea, secondo lo studio dei metodi statistici pubblicato . La verifica degli aggiornamenti del software è deterministica piuttosto che biometrica, ma la lezione rimane pertinente: definisci gli input e il confine di decisione precisamente.La verifica delle firme è un processo critico per garantire l'integrità e l'autenticità dei dati. È importante utilizzare metodi di verifica robusti e testarli regolarmente per assicurarsi che funzionino correttamente.

Problemi di gestione delle chiavi che la maggior parte delle squadre sottovaluta

La prima chiave di firma è facile. La seconda chiave è dove l'architettura viene messa alla prova.

Una squadra può generare una coppia di chiavi, collocare la chiave pubblica nell'app e firmare il suo primo pacchetto in un giorno. Mesi dopo, un ingegnere lascia con accesso a un laptop, un segreto di CI viene stampato in un log di costruzione o un lavoro di firma deve essere spostato da un esecutore all'altro. In quel momento, “solo ruota la chiave” può significare abbandonare dispositivi che non hanno effettuato il check-in e non hanno modo di riconoscere la sostituzione.

Una grafica di confronto che mostra la differenza tra un semplice setup di una chiave unica e le realtà complesse e continue della produzione.

Tre problemi meritano attenzione progettuale prima della prima release:

  • Rotazione senza vie morte: Invia fiducia per una chiave successiva prima di richiederla. Un record di transizione firmato può consentire a una chiave già accreditata autorizzare la chiave successiva, mentre l'app continua ad accettare la vecchia chiave durante una finestra di migrazione definita.
  • Revoca senza ipotesi: Una chiave fissata all'interno di un'app non fornisce automaticamente la revoca OCSP o CRL. Il client ha bisogno di una lista di negazione firmata, una versione minima accettabile della chiave o una politica controllata dal server che rimanga sicura anche quando la rete è indisponibile.
  • Accesso di firma limitato: i runner CI dovrebbero richiedere operazioni di firma da un cassetto o HSM piuttosto che ricevere una chiave privata riciclabile come una variabile di ambiente normale. I log devono nascondere l'output del comando e le richieste di pull da rami non affidabili non devono raggiungere le credenziali di firma di produzione.

La realtà operativa: La rotazione delle chiavi è un problema di aggiornamento. Se il meccanismo di aggiornamento non può consegnare cambiamenti di fiducia in modo sicuro, non può riprendersi pulitamente da una chiave compromessa.

Una gerarchia di chiavi riduce il raggio d'azione. Un'autorità radice può autorizzare le chiavi di rilascio, mentre chiavi separate firmano i canali di sviluppo, di staging e di produzione. La firma a soglia può richiedere più parti autorizzate per una rilascio di produzione sensibile, il che aiuta a prevenire un credenziale rubato da creare un aggiornamento valido. Questi controlli aggiungono processo e latenza, quindi le squadre dovrebbero applicarli in base all'impatto dell'aggiornamento e alla sensibilità del canale.

La fiducia all'uso per la prima volta è particolarmente debole per gli aggiornamenti mobili. Se la prima chiave arriva attraverso lo stesso canale del pacchetto, un attaccante che controlla quel canale può sostituire entrambi. L'ancora di fiducia iniziale deve arrivare nel file binario dell'app, nella configurazione protetta da una piattaforma o in un'altra via autenticata independentemente.

Per le Capacitor squadre, Capgo'approccio documentato include la pinning delle chiavi pubbliche e il supporto per la rotazione delle chiavi. La guida alla gestione delle chiavi per gli aggiornamenti OTA sicuri fornisce una riferimento pratico per pianificare quel ciclo di vita piuttosto che trattare la generazione delle chiavi come un setup di una volta sola.

Integrazione della verifica nei CI/CD e nella monitoraggio

La firma appartiene all'interno della transazione di rilascio. Una pipeline non dovrebbe pubblicare un bundle prima e aggiungere la sua firma in seguito attraverso un passaggio manuale separato. Costruisci l'artefatto immutabile, calcola il suo digest, firma le byte esatti, valuta la firma utilizzando un passo di verifica pulito, e pubblica il bundle e i metadati come un singolo unità di rilascio.

Una pipeline pratica produce questi artefatti:

  • L'immobile bundle: Il file che il client scaricherà, non una directory che un CDN ripackagerà.
  • Il manifesto: Versione, canale, piattaforma, digest, identificatore della chiave e politica di distribuzione.
  • Il firmatario distaccato: Una firma su dati di manifesto canonici o una rappresentazione di digest definita con precisione.
  • Il risultato di verifica: Un controllo leggibile da macchina che la firma si verifica contro la chiave pubblica prevista per quell'ambiente.

GitHub Le azioni e GitLab CI possono imporre lo stesso pattern anche se la loro sintassi differisce. Il job di firma dovrebbe fallire se il servizio di firma privata non è disponibile, se la firma è malformata o se una copia di test scaricata di fresco non si verifica. Un job di distribuzione dovrebbe dipendere da quel risultato, non solo da un build riuscito.

Non firmare un percorso e poi consentire a un lavoro successivo di modificarlo. Blocca l'artefatto dopo la firma, confronta la sua digestione prima della pubblicazione e rendi il manifesto pubblicato riproducibile a partire dal registro di rilascio. Questo cattura un sorprendente divario di integrazione comune, dove il lavoro CI firma un archivio compresso mentre il layer di consegna serve un file ricompresso o regenerato.

La visibilità appartiene al dispositivo

Un lavoro di firma riuscito dimostra solo che la tua pipeline ha creato una firma valida. Non dimostra che i dispositivi abbiano ricevuto i byte desiderati o che l'app abbia utilizzato la chiave desiderata. Registra gli esiti della verifica con la versione dell'app, la versione dell'aggiornamento, il canale, la piattaforma, l'identificatore della chiave, la categoria del risultato e un ID di correlazione di rilascio sicuro per la privacy. Evita di registrare il bundle, il token, i metadati privati o il contenuto dell'utente.

Le dashboard utili separano:

  • fallimenti della firma dalle falliture del download
  • manci di digestione dai manifesti malformati
  • chiavi sconosciute dalle rifiutazioni di politica
  • fallimenti per versione dell'app, regione, canale e età del rilascio.

Un improvviso accumulo di mancati di digestione può indicare una cache corrotta, un percorso di consegna alterato o un errore di pubblicazione dell'artefatto. Gli eventi di chiave sconosciuta possono indicare una rotazione incompleta o un tentativo di rilascio non autorizzato. La telemetria di verifica non identificherà l'attaccante da sola, ma darà ai rispondenti una timeline e una popolazione da investigare.

La Linee guida di sicurezza per l'aggiornamento OTA Capacitor Possono aiutare le squadre a posizionare le porte di firma, validazione e distribuzione in un flusso di lavoro unico. La scelta di progettazione importante è la proprietà. La sicurezza non dovrebbe chiedere all'ingegneria se la verifica è stata eseguita. Il registro delle rilasci e la telemetria del client dovrebbero rispondere direttamente a quella domanda.

Pratiche di Sicurezza e Comuni Trappole

La verifica della firma dovrebbe essere un requisito rigido per ogni percorso di aggiornamento che può eseguire code. L'aggiornatore deve verificare prima dell'estrazione, dell'installazione o dell'attivazione, e deve fallire chiuso quando la firma, il digest, la chiave o la politica di controllo non sono disponibili.

Usa questo come checklist di revisione immediata:

  • Proteggere le chiavi private: Conserva il materiale di firma in un HSM o in un archivio gestito. Non commettere mai, metterlo in un binario mobile o consentirgli di entrare nei log di CI.
  • Pin le chiavi pubbliche fidate: Memorizza l'ancora di fiducia iniziale fuori dal carico di aggiornamento. Se supporti più chiavi, definisci i loro scopi e le regole di transizione.
  • Lega il rilascio completo: Firma i metadati canonici che identificano l'esatto bundle, il canale, la piattaforma e la politica prevista.
  • Rifiuta ogni errore di verifica: Un timeout, una firma malformata, una chiave sconosciuta o un manifesto mancante non è un invito a continuare con il risultato non verificato precedente.
  • Test compromesso di recupero: Esercita la rotazione delle chiavi, il trattamento delle chiavi revocate, il rollback, i download interrotti e i dispositivi obsoleti nella fase di staging.
  • Recensione delle modifiche del verificatore: Require security-focused code review for cryptographic libraries, canonicalization, parsing, fallback behavior, and debug configuration.
  • Tieni il comportamento di debug isolato: Deve essere impossibile creare un bypass di sviluppo che possa essere pacchettizzato in un build di produzione tramite una flag di default o un errore di ambiente.

Un firmatario non dimostra anche la freschezza, la legame del destinatario, la resistenza al replay o che il payload rimane compatibile con lo stato corrente del provider. La guida sulla sicurezza dei webhook fa chiaramente questa distinzione e le recenti segnalazioni di vulnerabilità hanno mostrato che firme malformate o null e problemi di canonicalità possono ancora sottoporre a verifica ristretta controlli. Leggi l'analisi del gap di sicurezza dei webhook quando si progettano le regole di autorizzazione circostanti.

La selezione del livello di soglia crea una lezione correlata nei sistemi biometrici. Uno studio utilizzando 62 caratteristiche parametriche su 1.232 firme da 102 individui ha riferito livelli di soglia dipendenti dallo scrittore di 2,8% rifiuto falso e 1,6% accettazione falso, mentre un altro metodo ha segnalato 2,68% rifiuto falso e 1,99% accettazione falso, come documentato nel threshold-selection research. L'applicazione differisce, ma il principio operativo è lo stesso: la politica di decisione di un verificatore conta quanto il primitivo crittografico.

Capgo può servire come un'opzione di implementazione per Capacitor e Electron team che hanno bisogno di pacchetti di aggiornamento firmati in tempo reale, verifica in dispositivo, controlli di distribuzione, protezione del rollback e osservabilità della consegna nello stesso sistema. Visita Capgo per valutare se il suo flusso di aggiornamento soddisfa le vostre esigenze di gestione delle chiavi, CI/CD e monitoraggio.

Aggiornamenti in tempo reale per le app Capacitor

Quando un bug nel layer web è attivo, invia la correzione attraverso Capgo invece di attendere giorni per l'approvazione della store. Gli utenti ricevono l'aggiornamento in background mentre le modifiche native rimangono nel normale percorso di revisione.

Supporto umano da Martin

Inizia subito

Ultimi articoli dal nostro Blog

Capgo vi dà le migliori informazioni che avete bisogno per creare un'app mobile veramente professionale.