Hoạt động của ESP khác hơn so với AH. Như ngụ ý trong tên gọi, ESP đĩng gĩi tất cả hoặc một phần dữ liệu gốc. Do khả năng bảo mật dữ liệu nên xu hướng ESP
được sử dụng rộng rãi hơn AH. Phần header của giao thức nằm ngay trước ESP header cĩ giá trị 51 trong trường protocol của nĩ. Hình 3.8 diễn tả quá trình xử lý đĩng gĩi:
Hình 3.8: Xử lý đĩng gĩi ESP
Hình 3.9 trình bày khuơn dạng gĩi ESP
Hình 3.9: Khuơn dạng gĩi ESP
Sau đây sẽđịnh nghĩa các trường trong ESP. Lưu ý các trường này cĩ thể là tùy chọn hay bắt buộc. Việc lựa chọn một trường tùy chọn được định nghĩa trong quá trình thiết lập kết hợp an ninh. Như vây, khuơn dạng ESP đối với SA nào đĩ là cố định trong khoảng thời gian tồn tại của SA đĩ. Cịn các trường bắt buộc luơn cĩ mặt trong tất cả các ESP.
SPI (chỉ dẫn thơng số an ninh): Là một số bất kỳ 32 bit, cùng với địa chỉ
IP đích và giao thức an ninh ESP cho phép nhận dạng duy nhất SA cho gĩi dữ liệu này. Các giá trị SPI từ 0÷255 được dành riêng để sử dụng trong tương lai. SPI thường
được chọn lửa bởi phía thu khi thiết lập SA. SPI là trường bắt buộc.
Payload Data (trường dữ liệu tải tin): Đây là trường bắt buộc. Nĩ bao gồm một số lượng biến đổi các byte dữ liệu gốc hoặc một phần dữ liệu yêu cầu bảo mật đã được mơ tả trong trường Next Header. Trường này được mã hĩa cùng với thuật tốn mã hĩa đã chọn lựa trong suốt quá trình thiết lập SA. Nếu thuật tốn yêu cầu các vectơ khởi tạo thì nĩ cũng được bao gồm ởđây. Thuật tốn được dùng để mã hĩa ESP thường là thuật tốn DES-CBC. Đơi khi các thuật tốn khác cũng được hỗ trợ như
3DES hay CDMF trong trường hợp nhà cung cấp dịch vụ IBM.
Padding (0÷255 bytes): Cĩ nhiều nguyên nhân dẫn đến sự cĩ mặt của trường này:
- Nếu thuật tốn mật mã được sử dụng yêu cầu bản rõ (plaintext) phải là số nguyên lần khối các byte (ví dụ trường hợp mã khối) thì Padding được sử dụng để điền đầy vào plaintext (bao gồm Payload Data, Pad Length, Next Header và Padding) cĩ kích thước theo yêu cầu.
- Padding cũng cần thiết để đảm bảo phần dữ liệu mật mã (ciphertext) sẽ kết thúc ở biên giới 4 byte để phân biết rõ ràng với trường Authentication Data.
- Ngồi ra, Padding cịn cĩ thể sử dụng để che dấu độ dài thực của Payload, tuy nhiên mục đích này cần phải được cân nhắc vì nĩ ảnh hưởng tới băng tần truyền dẫn.
Pad length (độ dài trường đệm): Trường này xác định số byte Padding
được thêm vào. Các giá trị phù hợp là 0÷255 bytes, Pad length là trường bắt buộc.
Next Header (tiêu đề tiếp theo): Trường này dài 8 bit, xác định kiểu dữ
liệu chứa trong Payload Data, ví dụ một extension header trong IPv6, hoặc nhận dạng của một giao thức lớp trên khác. Giá trị của trường này được lựa chọn từ tập các giá trị
IP Protocol Number định nghĩa bởi IANA. Next Header là trường bắt buộc.
Authentication Data (dữ liệu nhận thực): Trường cĩ độ dài biến đổi chứa một giá trị kiểm tra tính tồn vẹn ICV tính trên dữ liệu của tồn bộ gĩi ESP trừ trường Authentication Data. Độ dài của trường này phụ thuộc vào thuật tốn xác thực được sử
dụng. Trường này là tùy chọn, và chỉ được thêm vào nếu dịch vụ xác thực được lựa chọn cho SA đang xét. Thuật tốn xác thực phải chỉ ra độ dài ICV và các bước xử lý cũng như các luật so sánh cần thực hiện để kiểm tra tính tồn vẹn của gĩi tin.