mywiki:linux:ipsec
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| mywiki:linux:ipsec [2015/12/10 12:50] – [IPSec kernel APIs] super | mywiki:linux:ipsec [2019/09/15 18:55] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| **IPSec Implementation in Linux** | **IPSec Implementation in Linux** | ||
| + | |||
| + | | Reference | {{: | ||
| ====== IPSEC Basic ====== | ====== IPSEC Basic ====== | ||
| Line 36: | Line 38: | ||
| | XFRM framework | net/ | | XFRM framework | net/ | ||
| | XFRM initialization | xfrm4_init() and xfrm6_init(). | | | XFRM initialization | xfrm4_init() and xfrm6_init(). | | ||
| + | |||
| + | |||
| + | ===== Kernel Terms ===== | ||
| + | | aalg | **Authentication** algo pointer | | ||
| + | | ealg | **Encryption** algo pointer | | ||
| + | | calg | **Compression** algo pointer | | ||
| + | | aead | **Authentication Encryption** with Associated Data pointer | Note: if (aead == NULL); then only authentication without any encryption | | ||
| + | | encap | Data for **encapsulator**, | ||
| ===== Kernel cryptography ===== | ===== Kernel cryptography ===== | ||
| + | |||
| | acrypto | asynchronous crypto | | | acrypto | asynchronous crypto | | ||
| | cryptd | | | cryptd | | ||
| Line 231: | Line 242: | ||
| | xfrm_state_lookup() | SAD lookup based on spi | | | xfrm_state_lookup() | SAD lookup based on spi | | ||
| + | ===== IPSec SA initialize ===== | ||
| + | It is initialized by API: **static int esp_init_state(struct xfrm_state *x)**, which is defined in file: | ||
| + | * net/ | ||
| + | * net/ | ||
| ===== IPSec Tx steps ===== | ===== IPSec Tx steps ===== | ||
| < | < | ||
mywiki/linux/ipsec.1449723044.txt.gz · Last modified: (external edit)
