La tua domanda è un po 'confusa (tu affermi che "la connessione tra proxy e l'applicazione è crittografata usando SSL" e poi "la connessione tra l'applicazione e il proxy NON è crittografata": a quanto pare, stai usando il termine " applicazione "per designare diverse cose distinte).
Detto questo:
-
SSL è pensato per essere end-to-end. Quando il client SSL comunica con il server SSL, stabilisce un tunnel protetto da terze parti (per riservatezza e integrità dei dati). Questa proprietà è valida anche contro i proxy che la connessione ha attraversato.
-
HTTPS (ovvero HTTP all'interno di SSL) può essere inoltrato tramite un proxy (vedere RFC 2817 sezioni 5.2 e 5.3).
-
Un proxy HTTP viene contattato tramite HTTP - in teoria, dovrebbe essere possibile contattarlo anche tramite HTTPS, ma i browser non sono necessariamente configurabili in questo modo. L'ho visto fatto con un file di configurazione automatica del proxy che restituiva il proxy non come un nome host + coppia di porte , ma come URL completo (che inizia con https
), che è fuori specifica, ma funzionava (non ricordo quale browser supportasse, comunque).
Quindi potresti creare una connessione SSL attraverso un proxy, il tunnel tra l'applicazione e il proxy essendo esso stesso un tunnel SSL; a quel punto avresti due tunnel SSL, uno annidato nell'altro. Ma quale sarebbe l'uso? Se i dati sono abbastanza sensibili da giustificare SSL, allora dovrebbe usare SSL su tutto il percorso, anche oltre il proxy. E se fa usa SSL per l'intero percorso, allora un livello SSL tra applicazione e proxy è superfluo.
(HTTPS con proxy ha senso quando il proxy richiede l'autenticazione basata su password e, tuttavia, si teme l'intercettazione di tale password.)