---
# System prepended metadata

title: Real life security protocal

---

# Real life security protocal
## SSH (Secure Shell)

$certificate_A$ = Alice's certificate
$certificate_B$ = Bob's certificate
CP = crypto proposed
CS = crypto selected
$H = h(Alice, Bob, CP, CS, R_A, R_B, g^a\ mod\ p, g^b\ mod\ p, g^{ab}\ mod\ p)$
$S_B = [H]_{Bob}$
$K = g^{ab}\ mod\ p$
$S_A=[H, Alice, certificate_A]_{Alice}$

![](https://i.imgur.com/teuXNyP.png)
![](https://i.imgur.com/6W0U0gn.png)



## SSL
- Secure socket layer
- On-sided authentication

![](https://i.imgur.com/HpVY6Ii.png)
- Alice ***encrypts*** $E(h(msgs, CLNT, K), K)$ only for integrity check purposes. It adds no secrurity.
- If you really want **Mutual authentication**, the server could send a certificate request

## IPSec
- Lives on the network layer (part of the OS)
- Encryption, integrity, authentication, etc.
- Very complex

## Kerberos
- TTP: Trusted Third Party
- Authentication using public keys
    - N users => N key pairs
- Authentication using symmetric keys
    - N users => $O(N^2)$ keys
### Scalibility
- Symmetric key case **does not scale**!
- Kerberos based on symmetric keys but only requires N keys for N users
    - SEcurity depends on TTP

### Key Distribution Center (KDC) acts as the TTP
- KDC share symmetric key $K_A$ with Alice, key $K_B$ with Bob, etc.
- Master key $K_{KDC}$ known ***only*** to KDC
- KDC enables authentication, session keys
    - Session key for confidentiality and integrity

### Kerberos Tickets
- KDC issue **tickets** containing info needed to access network resources
- KDC also issues **Ticket-Granting Tickets*** or **TGTs** that are used to abotain tickets
- Each TGT contains
    - Session key
    - User's ID
    - Expiration time
- Every TGT is encrypted with $K_{KDC}$
- The tickets make the server stateless (server doesn't have to store user's information)

### Kerberized Login
- Alice enters her password
- Then Alice's computer
    - Derives $K_A$ from Alice's password
    - Uses $K_A$ to get TGT for Alice from KDC
- Alice then uses her TGT(credentials) to securely access network resources
- Plus: Security is transparent to Alice
- Minus: KDC *must* be secure -- it's trusted!

![](https://i.imgur.com/44b0t4z.png)
![](https://i.imgur.com/IavCTPn.jpg)
