Skip to content

A simple security research focuses on SSL and TLS, and further analyzes the data transmission encryption and decryption process within the OpenZiti architecture.

Notifications You must be signed in to change notification settings

Alonza0314/SSL-TLS-OpenZiti-Encryption-Study

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

95 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SSL-TLS-OpenZiti-Encryption-Study

Index

Abstract

Basic Concept

Encryption Method

SSL (Secure Sockets Layer)

TLS (Transport Layer Security)

Ziti's Data Encryption and Decryption

Reference

Abstract

In advance, I will give a basic introduction on the historical development of SSL and TLS and their significance in network security.

Then, I will demonstrate a simple ziti's data encryption and decryption simulation.

Basic Concept

Introduction

  • SSL (Secure Sockets Layer): An early encryption protocol developed by Netscape, which has now been replaced by TLS.
  • TLS (Transport Layer Security): The successor to SSL, providing a more secure encryption protocol.

Core Concepts

  • Encryption: Ensures that data is not intercepted or altered during transmission.
  • Authentication: Ensures the trustworthiness of the communicating parties.
  • Data Integrity: Ensures that data is not modified during transmission.

Encryption Method

Symmetric and Asymmetric Encryption

  • Symmetric Encryption: Uses the same key for both encryption and decryption (e.g., DES \ AES). symmetricEncryption
  • Asymmetric Encryption: Uses a pair of public and private keys for encryption and decryption (e.g., RSA). asymmetricEncryption

Key Exchange

  • Key Exchange Protocol: Ensure secure exchange of symmtric encryption key (e.g., Diffie-Hellman).

SSL (Secure Sockets Layer)

SSL 1.0

  • Description: Never publicly released due to serious security issues.

SSL 2.0

  • Improvements:
    • Introduced basic encryption mechanisms. Supported symmetric encryption and digital certificates.
  • Vulnerabilities:
    • Several known security vulnerabilities, such as insecure key exchange mechanisms.
    • Did not support Message Authentication Codes (MACs) to verify data integrity.

SSL 3.0

  • Improvements:
    • Addressed multiple security issues from SSL 2.0, improving encryption algorithms and protocol design.
    • Introduced a more secure handshake process.
    • Supported Message Authentication Codes (MACs), enhancing data integrity protection.
  • Vulnerabilities:
    • Despite improvements in security, SSL 3.0 still had some issues, such as the POODLE attack.

TLS (Transport Layer Security)

TLS 1.0 (RFC 2246)

  • Improvements:
    • Added support for HMAC (Hash-based Message Authentication Code).
  • Vulnerabilities:

TLS 1.1 (RFC 4346)

  • Improvements:
    • Prevented packet replay attacks by adding IV (Initialization Vector) randomization.
    • Enhanced security for symmetric encryption modes, supporting AES encryption.
  • Vulnerabilities:

TLS 1.2 (RFC5246)

  • Improvements:
    • Introduced new message authentication algorithms (e.g., SHA-256).
    • Supported stronger encryption algorithms (e.g., AES-GCM).
    • Improved integrity protection mechanisms.
    • Enhanced compatibility with older versions.
  • Vulnerabilities:
    • Although TLS 1.2 provided many security improvements, it still faced some attack threats, such as the POODLE attack.
  • Handshake Overview: TLS12
    1. ClientHello: TLS version, cipher suite, client random number, compression method.
    2. ServerHello: TLS version, cipher suite, server random number, additional information.
    3. ServerCertificate: Certificate, public key(RSA).
    4. ServerKeyExchange: Public key(DH), parameter(DH).
    5. CertificateRequest: Optional.
    6. ServerHelloDone: Ending mark.
    7. ClientCertificate: Certificate(if requested by server), public key.
    8. ClientKeyExchange: Pre-master secret key(RSA, encrypted by server's public key), public key(DH).
    9. CertificateVerify: Verify possession of the private key in the certificate.
    10. ChangeCipherSpec: Use new encryption method.
    11. Finished: Ending mark.

TLS 1.3 (RFC8446)

  • Improvements:
    • Simplified the handshake process, reducing round trips and improving performance.
    • Defaulted to Perfect Forward Secrecy (PFS).
    • Removed outdated and insecure encryption algorithms and protocol features (e.g., RC4, MD5, SHA-1).
    • Enhanced data encryption and authentication, providing stronger security assurances.
  • Vulnerabilities:
    • TLS 1.3 was designed with a focus on security, and currently has no major security vulnerabilities, though it continues to be reviewed and improved.
  • Handshake Overview: TLS13

Ziti's Data Encryption and Decryption

Click here: Model Description

Click here: Model Simulation


Reference

Transport Layer Security

Secure101

SSL/TLS and PKI History

RFC5246

RFC8446

ChatGPT

About

A simple security research focuses on SSL and TLS, and further analyzes the data transmission encryption and decryption process within the OpenZiti architecture.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages