Encriptación de datos ?? cómo funciona??

20/08/2006 - 21:06 por eSergi | Informe spam
Buenas tardes,

Estoy desarrollando una aplicación con web services y necesito información
para poder encriptar los datos que retornan cada uno de los métodos del web
service y desencriptarlas después...

Si alguien me puede ayudar ??

Muchas gracias

Preguntas similare

Leer las respuestas

#1 Javier Garcia
23/08/2006 - 14:47 | Informe spam
Hola, hace un tiempo yo desarrolle un servicio web que hacia eso mismo, y es
un poco lioso si no tienes mucha idea de como funcionan los sistemas de
cifrado.

El que yo desarrolle se basaba en que el servidor tenia una clave asimetrica
y los clientes (todos) saben la publica del servidor, y todos los clientes
comparten clave para establecer la comunicacion con el servidor, y este solo
sabe la publica de estos, de esta forma podemos iniciar la comunicacion sin
problemas de identidad ni de seguridad.

Yo me cuaje un struct para establecer el inicio de la comunicacion en la que
los clientes le decian al servidor que querian usar tal clave (clave de
cifrado simetrico, que es mucho mas rapido que el asimetrico) para empezar a
comunicarse a partir de entonces, la cifraban con la publica del servidor y
la firmaban con la suya privada y el servidor les respondia dandoles un id
de conexion. A partir de entonces se iniciaba la comunicacion con la clave
comun, el cliente envia el id de conexion en texto plano, el mensaje en
cuestion cifrado con la clave comun y un hash de ambos (mensaje y clave),
asi nos quitamos de que nadie nos toque el paquete, al recibirlo el servidor
comprobaba el hash, y si salia bien, veia el id de conexion, seleccionaba
la clave que le tocaba, y descifraba el mensaje, y para responder hacia lo
mismo.

El problema es que cifrar con .net es un poco lioso, asi que te tendras que
crear un huevo de clases internedias (una para el cifrado asimetrico, en mi
caso RSA de 1024 bits, otra para el cifrado simetrico, en mi caso rinjdael ,
y otras tantas para el "protocolo" de intercambio de claves, cifrado y
descifrado de mensajes, etc.). Es un poco lioso pero una vez terminado va de
puta madre.

Asi que suerte si te gusta el esquema, te digo que se puede hacer, pq cuando
yo lo hice estaba mas o menos verde en programacion, solo tenia las bases de
conocimiento de los algoritmo de cifrado, y se saca (2 o 3 semanas con dolor
de cabeza, pero se saca)


"eSergi" escribió en el mensaje
news:
Mostrar la cita
#2 eSergi
23/08/2006 - 19:54 | Informe spam
Buenas Javier,

Muchas gracias por tu información.
La verdad es que estoy muy muy verde en lo que ha cifrado de datos se
refiere... Empezaré por buscar información sobre cada uno de los aspectos que
me comentas a ver si saco algo de conceptos claros y después lo pruebo como
me indicas.

El proyecto que estoy haciendo dura 6 meses pero no quiero tener que
implantar el cifrado de datos al final del proyecto. De todas maneras, creo
que no habrá más remedio. jejeje.

Si tuvieras añgo de información, enlaces, o libros de referencia
(castellano) que me pudieran ayudar te lo agradeceria que no veas !!!

Bueno, gracias otra vez

"Javier Garcia" wrote:

Mostrar la cita
#3 Javier Garcia
24/08/2006 - 08:26 | Informe spam
puffff, no tengo nada de informacion a tu disposicion, lo que se de cifrado
lo he sacado de apuntes mios, asi que no se donde puedes encontrarlos, busca
en internet un poco que no es complicao, lo unico es tener claros los
conceptos. Busca el esquema de conexion del protocolo https y haz algo
parecido (yo es lo que hice, segui ese esquema adaptandolo a mis necesidades
y conocimientos, y funciona). lo mas complicao es la forma de intercambiar
la clave comun para la conexion de forma segura. Se puede hacer con
certificados (que seria lo suyo) o con una clave asimetrica de servidor, lo
unico es ver como compruebas que el cliente realmente es quien dice ser (yo
lo solucione poniendo a todos los clientes una clave asimetrica comun,
solucion cutre, pero facil y funciona, ya que el servidor sabe la clave
publica de los clientes y solo estos pueden cifrar con esa clave). Asi a la
hora de gestionar la clave de la conexion se hace de forma fiable. despues
de esto la comunicacion con la clave comun es mas facil.


"eSergi" escribió en el mensaje
news:
Mostrar la cita
#4 eSergi
30/08/2006 - 16:41 | Informe spam
Bueno..
Muchas gracias de todas formas!!
He empezado a mirar algunas cosillas y con un poco de tiempo y paciencia
puede que lo consiga.


"Javier Garcia" wrote:

Mostrar la cita
#5 Carlos Valle.
15/09/2006 - 21:05 | Informe spam
Una forma sencilla de establecer encripción es por medio de WSE 3.0, tienes
que invertir un poco de tiempo para enteder como funciona pero te ahorrara
mucho código y dolores de cabeza.

"eSergi" wrote:

Mostrar la cita
Ads by Google
Search Busqueda sugerida