Newsgroup: it.lavoro.professioni.webmaster
Titolo: invio di una form su canale cifrato

ciao a tutti,
volevo chiedervi se è possibile (e come) realizzare una cosa del genere:
c'è un server web con una form a cui l'utente si connette mediante
connessione protetta (SSL).
L'utente compila la form, magari allega anche un file, e quindi preme il
bottone INVIA.
Il server web riceve i dati, e l'uso del SSL assicura la segretezza sul
tratto utente-webserver.
Adesso il web server deve inviare i dati che ha ricevuto a un indirizzo di
posta elettronica, e lo deve fare garantendo la riservatezza dei dati.
Quindi se si connette a un server SMTP (per esempio usando la funzione php
mail() oppure qualche altra funzione con java, che penso esisterà) dovrebbe
usare l'estensione STARTTLS di SMTP, in modo da criptare la comunicazione
SMTP.
Che voi sappiate questo è possibile ?
Oppure c'è qualche altro modo per proteggere i dati che un web server, dopo
averli ricevuti, deve inviare a un destinatario ?
(in particolare, credo che sia comodo che questo destinatario sia un
indirizzo email, però forse esiste un sistema più semplice se questo
destinatario è per esempio un database accessibile da web ? boh? )
spero di essermi spiegato bene :) e che qualcuno possa aiutarmi :)
ciao e grazie

 
Quoto quasi tutto perché mi è difficile tagliare ...
Il database è sicuramente più sicuro, nel senso che il dato non fa due 
strade
Server -> Server -> Email
Ma fa solo
Server -> Server
Da qui a dire che il Db è inviolabile ce ne vuole.
Comunque anche la strada della mail è percorribile se usi il pgp 
cryptandola e allegando la chiave pubblica del destinatario. In questo 
modo solo che è in possesso della chiave privata può decryptare l'email, 
che, anche se intercettata, è illeggibile
Questo si può fare solo se il destinatario dei dati del form è sempre 
uno ...
Ciao
Cla
-- 
www.claudioerba.com
 - Consulenza web per l'azienda
www.spaghettibrain.com
 - PHPNUke Italian Mirror
www.spaghettilearning.com
 - Piattaforma open Source per l'E-Learning
My ICQ: 14187053

 wrote in message
ear5a.142280$ZE.40...@twister2.libero.it...


 
Si. il tuo ragionamento è giusto, se la posta non va fuori dal server.
Il discorso che facevo implicava il fatto che l'account di posta fosse 
fuori ... :-)


averli ricevuti, deve inviare a un destinatario ?
mah, io quello che farei sarebbe di criptarli "al volo" con una chiave
asimmetrica, ci sono diverse librerie che lo fanno, una che conosco
costa poche decine di dollari (
www.dyncrypto.com
, per asp).
l'unico problema, se così lo vogliamo chiamare, è che il destinatario
finale si deve scegliere in anticipo una "chiave privata", e
comunicarti la chiave pubblica che da questa si ottiene, affinché tu
la usi per criptargli i dati che gli mandi.
quindi lo schema potrebbe essere:
- immissione dati su un form nel browser dell'utente
- invio dati sensibili tramite ssl
- sono arrivati sul tuo server e stanno dentro la collezione request()
(o come si chiama nel linguaggio di scripting che preferisci, in asp
si chiama così)
- li tiri fuori dalla collezione request() e *prima* di usarli in
qualsiasi modo (infilarli in un db, assegnarli a variabili per
popolare una email da spedire ecc.) li cripti con la chiave pubblica
- ne fai quello che ti pare.
-- 
abbraccio espedienti 365 giorni l'anno.
(generata da: 
http://www.phibbi.com/extra/gswe.php
)

 uno ...
si, il destinatario è sempre uno.
ma il webserver può di suo criptare la mail col pgp prima di inviarla ?
esistono funzioni per esempio php o java che criptano col pgp?
(ora dò anche un occhiata al manuale)

 Browser Client >> Server >> Server Smtp >> Server Pop >> Client di Posta
il primo tratto è protetto con SSL.
il secondo non lo so se è possibile proteggerlo ? (l'argomento del topic
:) )
il terzo non sarebbe un problema se il server di posta lo metto dentro una
rete privata, e lo faccio accedere solo dall'interno della rete privata.
Se così non fosse, in effetti converrebbe che il webserver criptasse
l'intero messaggio col pgp o s/mime prima di inviarlo, ma si può fare?

 fuori ... :-)
si esatto, io credo di dover usare due macchine separate, perchč se il
webserver č pubblico, e lo uso anche come server mail, poi non voglio far
risiedere l'email in chiaro al suo interno (nella mailbox), essendo questo
un host con ip pubblico...
a meno che non accetto questo compromesso... oppure magari metto il
webserver nella rete interna....
(oddio ho detto un sacco di roba in tre righe :D )

 popolare una email da spedire ecc.) li cripti con la chiave pubblica
anche questa mi sembra una buona alternativa all'uso del pgp... insomma è
sempre un sistema di criptazione che usa il webserver prima di inviare i
dati a chicchessia, e lo applica direttamente sul messaggio

 :) )
PGP



Perché non vuoi usare PGP?
E' uno degli algoritmi più sicuri ....
Fammi sapere
Ciao!


:) )
be', ma nel secondo tratto i dati non sono scritti da qualche perte,
sono, per cosě dire, "volatili" nella ram del server, se non sbaglio.
quindi non sono intercettabili o decifrabili a posteriori...  li devi
istanziare in delle variabili e scriverli materialmente da qualche
parte...  se non sbaglio, ripeto.


 Fammi sapere
no, non volevo dire che non voglio usare il pgp :)
(mi sto facendo una idea sulle varie possibilità che ci sono :) )
ho visto che anche il PHP ha delle funzioni per criptare (mcrypto)
il PGP non l'ho mai usato, sai se il pacchetto pgp ha già un modulo che si
interfaccia col server web ?
io vorrei realizzare qualcosa che sia il più possibile trasparente per
l'utente, cioè il server web deve criptare da solo, e poi  l'utente che
riceve il messaggio dal server web deve fare il meno possibile per
decriptarlo.
quindi:
client --> server web : protetto con SSL
server web --> server email : protetto con PGP (server web e server email
devo considerare che stanno su due macchine diverse)

 
Server linux o win?


 Server linux o win?
dunque, potrei essere costretto a usare un webserver di un ISP, se fosse
così ancora non so se è windows o linux.
altrimenti dico all'ISP di forwardare la pagina della form sul mio
webserver, in questo caso posso mettere sia windows che linux (la rete
interna comunque sarà un dominio win2000 active directory)