Características

Duración: 25 horas

Perfil: Avanzado

Dirigido a: Programadores, Analistas, Jefes de Proyecto

Requisitos previos

Los alumnos necesitarán tener experiencia en desarrollo de aplicaciones con .Net

Objetivos

Al finalizar mi curso los estudiantes podrán encriptar y firmar datos desde .Net, podrán crear números aleatorios realmente aleatorios, podrán diferenciar entre encriptación simétrica y asimétrica y podrán almacenar de forma segura contraseñas.

Contenido

  • Introducción
    • Presentación del curso y objetivos
  • Números aleatorios para uso criptográfico
    • ¿Por qué los números aleatorios son tan importantes?
    • ¿Por qué no es aconsejable utilizar System.Random?
    • Números aleatorios reales mediante RNGCryptoServiceProvider
    • Ejercicios
  • Algoritmos de cifrado (hashing)
    • ¿Qué es un algoritmo de cifrado (hashing) ?
    • El algoritmo MD5
    • Familia de algoritmos SHA (Secure Hash)
    • Código de autenticación de mensajes cifrados (Hashed Message Authentication Codes – HMAC)
    • Ejercicios
  • Almacentamiento seguro de contraseñas
    • El problema de almacenar contraseñas sin encriptar
    • Encriptación de contraseñas
    • Uso de cifrado (hashes) para almacenar contraseñas
    • Uso de cifrados aleatorios (salted hashes)
    • Uso de una función de derivación de claves basada en contraseñas
    • Ejercicios de creación de contraseñas
  • Encriptación simétrica
    • ¿Qué es la encriptación simétrica?
    • Historia de DES y Triple DES
    • ¿Cómo funcionan DES y Triple DES?
    • Historia de AES
    • ¿Cómo funciona AES?
    • ¿Qué tan seguro es AES contra ataques de fuerza bruta?
    • Uso de las bibliotecas relacionadas de .Net
    • Ejercicios de DES, Triple DES y AES
  • Encriptación asimétrica
    • ¿En qué consiste la encriptación asimétrica?
    • Historia de RSA
    • ¿Cómo funciona RSA?
    • Uso de RSA con .NEt
    • Ejercicios de RSA
  • Encriptación híbrida
    • Encriptación con AES y RSA juntos
    • HMACs para la integridad de los datos
    • Ejercicios
  • Firmas electrónica
    • ¿Qué son las firmas electrónicas?
    • Firmas electrónicas con .Net
    • Ejercicios