네트워크 보안에서 반드시 고려해야 하는 목표는 기밀성, 무결성, 가용성이 있음. 무결성 (integrity)은 정보 또는 소프트웨어가 완전하고, 정확하며, 진본임을 보장하는 것으로, 허가 받지 않은 변경이 없었다는 것을 의미 기밀성(confidentiality)이란, 중요한 정보가 허가받지 않은 사람에게 노출되는 것을 방지하는 것 가용성 (availability)은 언제든지 정당한 사용자가 정보와 서비스를 이용할 수 있다는 것을 보장함을 의미.
암호화 방식은 대칭키(symmetric key)를 사용하는 대칭 암호화와 비대칭키(asymmetric key)를 사용하는 비대칭 암호화 방식으로 구분 대칭키는 암호화할 때 사용하는 키와 복호화할 때 사용하는 키가 동일한 것을 말하는데, 이 경우 상호간에 비밀을 유지해야 하기 때문에 곧 비밀키(secret key)가 됨. 비대칭키 방식은 두 개의 다른 키를 사용하게 되는데, 하나는 암호화에 사용되는 공개키(public key)이고 다른 하나는 복호화에 사용되는 비밀키.
DES는 대칭키(Symmetric key) 암호화, 즉 비밀키 (Secret Key)를 사용하는 방법. 암호화를 수행하는 쪽에서, 64-비트 평문(plain text)을 사용하여 64-비트 암호문(cipher text)을 만들어 내는 방식. 복호화를 수행하는 쪽에서는 앞에서와 역과정이 이루어짐. 암호화 과정이나 복호화 과정 모두에서 동일하게 56-비트 암호키가 사용.
비대칭키 암호문에서는 아래의 그림에서 보듯이, 비밀키(private key)와 공개키(public key)와 같은 2개의 키를 각각 분리해서 사용. 전송측은 수신측의 공개키를 사용하여 암호화를 수행한 다음, 암호화된 메시지를 전송. 이렇게 암호화된 메시지는 수신측이 갖고 있는 비밀키가 있어야만 복호화가 가능. RSA는 e와 d로 표시되는 두 개의 소수를 사용하는데, e는 공개되고, d는 비밀을 유지. P는 평문이고, C는 암호문을 나타낸다고 할 때 전송측은 C = P^c mod n 이라는 수식을 사용하여 평문인 P로부터 암호문 C를 생성하여 전송. 수신측이 C라는 메시지를 받게 되면, 수신측은 P = C^d mod n 이라는 수식을 이용하여 복호화를 수행하여 다시 원래의 평문으로 변환. n은 매우 큰 소수인 e와 d를 곱한 값.
디지털 서명은 비밀키와 공개키 둘 다 사용하여 이루어진다. 아래 그림에서 보듯이, 전송측은 서명 알고리즘(signing algorithm)과 비밀키를 이용하여 메시지에 대한 서명을 한 다음, 메시지와 서명을 함께 전송한다. 수신측에서는 전송측의 공개키를 이용하여 검증 알고리즘을 통해 결과가 참이면 메시지는 수락되고, 그렇지 않으면 거절된다.