Seguridad

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

Contenido

1. Seguridad Logica
2. Seguridad Fisica
3. Manejo de Virus
4. Seguridad en la WEB
5. Manejo de Seguridad en BD
a. Esquemas
b. Roles y Grupos
c. Expiración de claves
d. Encriptamiento de claves
6. Encriptamiento, Certificados digitales
7. Arquitectura de un computador, Acceso y denegación de accesos a hardware

Evaluación:

En base a proyectos, tanto laboratorio como teoría.

Encriptamiento:

La encriptación de datos o cifrado de archivos es un procedimiento mediante el cual los


archivos, o cualquier tipo de documento, se vuelven completamente ilegibles gracias a un
algoritmo que desordena sus componentes. Así, cualquier persona que no disponga de
las claves correctas no podrá acceder a la información que contiene.
MD5 (abreviatura de Message-Digest Algorithm 5, Algoritmo de Resumen del Mensaje 5) es
un algoritmo de reducción criptográfico de 128 bits ampliamente usado. Uno de sus usos es el
de comprobar que algún archivo no haya sido modificado.

SHA es similar a MD5, aunque más moderno y más seguro. El código java sería
exactamente igual, pero
reemplezando MessageDigestAlgorithms.MD5 por MessageDigestAlgorithms.SHA_1, Mes
sageDigestAlgorithms.SHA_256, MessageDigestAlgorithms.SHA_384 o MessageDigestAl
gorithms.SHA_512.
SHA suele usarse para garantizar que un texto no ha sido modificado. Se obtiene el
encriptado SHA del texto y se envía junto con el texto. El receptor, vuelve a calcular el
SHA del texto y verifica que coincide con el SHA que ha recibido de origen. Para evitar
que alguien mal intencionado modifique el texto y genere el nuevo SHA, el SHA original
suele encriptarse con RSA o algún otro mecanismo que garantice quién lo ha generado.

RSA es un algortitmo para encriptado y desencriptado con un par de claves, pública y


privada. Lo que se encripta con la clave pública se puede desencriptar con la clave
privada y viceversa. Si el que envía el mensaje tiene una de las claves y el que lo recibe
tiene la otra, este sitema garantiza:

 El que envía el texto encriptado tiene la garantía de que sólo el receptor puede
desencriptarlo, ya que es el único que tiene la clave pareja de la suya.
 El receptor que desencripta el mensaje tiene la garantía de que ha sido generado por
el emisor, ya que es el único que tiene la clave pareja de la suya.
No es un algoritmo eficiente para encriptar textos largos. Se usa para encriptar claves
cortas y poder pasarlas de uno a otro de una forma segura, o para encriptar firmas
digitales (texto encriptado SHA o MD5. también cortas).
El código java para este tipo de encriptado puede ser el siguiente

AES es un algortimo que usa la misma clave para encriptar y para desencriptar. Es
adecuado para encriptar textos largos. La clave tiene que tener una longitud fija en bits
(en bytes), en nuestro caso serán 128 bits (o 16 bytes).

Encriptamiento en java:

Método de Encriptación

public static String Encriptar(String texto) {

String secretKey = "qualityinfosolutions"; //llave para


encriptar datos

String base64EncryptedString = "";

try {

MessageDigest md = MessageDigest.getInstance("MD5");

byte[] digestOfPassword =
md.digest(secretKey.getBytes("utf-8"));

byte[] keyBytes = Arrays.copyOf(digestOfPassword, 24);


SecretKey key = new SecretKeySpec(keyBytes, "DESede");

Cipher cipher = Cipher.getInstance("DESede");

cipher.init(Cipher.ENCRYPT_MODE, key);

byte[] plainTextBytes = texto.getBytes("utf-8");

byte[] buf = cipher.doFinal(plainTextBytes);

byte[] base64Bytes = Base64.encodeBase64(buf);

base64EncryptedString = new String(base64Bytes);

} catch (Exception ex) {

return base64EncryptedString;

public static String Desencriptar(String textoEncriptado) throws


Exception {

String secretKey = "qualityinfosolutions"; //llave para


desenciptar datos
String base64EncryptedString = "";

try {

byte[] message =
Base64.decodeBase64(textoEncriptado.getBytes("utf-8"));

MessageDigest md = MessageDigest.getInstance("MD5");

byte[] digestOfPassword =
md.digest(secretKey.getBytes("utf-8"));

byte[] keyBytes = Arrays.copyOf(digestOfPassword, 24);

SecretKey key = new SecretKeySpec(keyBytes, "DESede");

Cipher decipher = Cipher.getInstance("DESede");

decipher.init(Cipher.DECRYPT_MODE, key);

byte[] plainText = decipher.doFinal(message);

base64EncryptedString = new String(plainText, "UTF-


8");
} catch (Exception ex) {

return base64EncryptedString;

Criptografía Asimétrica:
La criptografía asimétrica (en inglés asymmetric key cryptography), también
llamada criptografía de clave pública (en inglés public key cryptography) o criptografía de
dos claves1(en inglés two-key cryptography), es el método criptográfico que usa un par de
claves para el envío de mensajes. Las dos claves pertenecen a la misma persona que recibirá
el mensaje. Una clave es pública y se puede entregar a cualquier persona, la otra clave
es privada y el propietario debe guardarla de modo que nadie tenga acceso a ella. Además,
los métodos criptográficos garantizan que esa pareja de claves sólo se puede generar una
vez, de modo que se puede asumir que no es posible que dos personas hayan obtenido
casualmente la misma pareja de claves.

Criptografía de clave Simétrica:


La criptografía de clave simétrica (en inglés symmetric key cryptography), también
llamada criptografía de clave secreta (en inglés secret key cryptography) o criptografía de
una clave1 (en inglés single-key cryptography), es un método criptográfico en el cual se usa
una misma clave para cifrar y descifrar mensajes en el emisor y el receptor. Las dos partes
que se comunican han de ponerse de acuerdo de antemano sobre la clave a usar. Una vez
que ambas partes tienen acceso a esta clave, el remitente cifra un mensaje usando la clave, lo
envía al destinatario, y este lo descifra con la misma clave.

Certificado digital:

Un certificado digital o certificado electrónico es un fichero informático firmado


electrónicamente por un prestador de servicios de certificación, considerado por otras entidades
como una autoridad para este tipo de contenido, que vincula unos datos de verificación de
firma a un firmante, de forma que únicamente puede firmar este firmante, y confirma su
identidad. Tiene una estructura de datos que contiene información sobre la entidad (por
ejemplo una clave pública, una identidad o un conjunto de privilegios). La firma de la
estructura de datos agrupa la información que contiene de forma que no puede ser modificada
sin que esta modificación sea detectada.
Llaves públicas y privadas.
El protocolo que sigue este mecanismo es una combinación de hardware y software, políticas
y procedimientos de seguridad que permiten la ejecución con garantías de operaciones
criptográficas como el cifrado, la firma digital o el no repudio de transacciones electrónicas.
Un ejemplo muy simple de cómo funciona este proceso sería que al enviar una información
importante pero el mensajero resulta inseguro para nosotros, escribimos el mensaje en un
papel, se introduce en una caja de metal con un candado y se envía. La caja llega a su destino
sin problema, pero el destinatario no puede leerla, pues no puede abrir el candado. Lo
primordial sería enviarle la llave, pero aunque sea por otro medio u otro mensajero, puede que
haya otro nivel de riesgo, al comprometer la seguridad de la llave, confiándola a extraños. Así
funciona el ciframiento convencional. Cuando decidimos brindar información confidencial, pero
queremos que solo el receptor pueda leerla, ahí es cuando entra en juego este método.
A través de un juego entre distintos caracteres informáticos, la llave pública solamente puede
cifrar. La llave privada puede descifrar o hacer las dos cosas, aunque esto último no es tan
importante. Se recibe la llave pública del destinatario y con ella cifra la información que se le
enviará. Una vez cifrada, no se puede ver la información. Al enviarla, en un correo por
ejemplo, el destinatario la recibe y la descifra con su llave privada. Es por ello, que las llaves
permiten a los usuarios autenticarse frente a otros usuarios y usar la información de los
certificados de identidad (por ejemplo, las claves públicas de otros usuarios) para cifrar y
descifrar mensajes, firmar digitalmente información, garantizar el no repudio de un envío, y
otros usos. Dependerá en parte importante, cómo se guarden las claves privada, puesto que
existen dispositivos especiales denominados tokens de seguridad para facilitar la seguridad de
la clave privada, así como evitar que ésta pueda ser exportada. Estos dispositivos pueden
incorporar medidas biométricas, como la verificación de huella dactilar, que permiten aumentar
la confiabilidad, dentro de las limitaciones tecnológicas, en que sólo la persona dueña del
certificado pueda utilizarlo.

Tarea:
Generar un certificado y activarlo en el servidor, encriptar un archivo en el cliente web, cifrarlo
asimétricamente y enviarlo al servidor a través del canal web encriptado, usando SSL o TLS,
desencriptarlo con un programa y mostrar el contenido en el servidor.

También podría gustarte