虚拟专用网技术
一、需求背景
- 物理联通:实现不同物理位置网络的连接基础。
- 网络联通:在物理连接基础上,实现数据等信息的传输互通。
二、虚拟专用网简介
定义
虚拟私有网络是依靠互联网服务提供商(ISP)或其他网络服务提供商(NSP),在公共网络基础设施之上构建的专用安全数据通信网络,其网络形态为逻辑态,因此称为 “虚拟” 专用网。
IETF 草案对基于 IP 的 虚拟专用网定义为:使用 IP 机制仿真出私有广域网,即通过隧道技术在公共数据网络上模拟点到点专线技术。发展
传统 虚拟专用网指用户租用数字数据网电路(DDN)、ATM 永久性虚电路(PVC)、帧中继(FR)等组建二层 虚拟专用网络,骨干网由电信运营商维护,客户仅管理自身站点和路由;随着 IP 技术发展,现代虚拟专用网更多基于 IP 技术实现三层虚拟专用网技术。
三、虚拟专用网分类
按建设单位划分
- 租用运营商 VPN 专线搭建:如MPLS 虚拟专用网,由运营商负责骨干网维护,企业专注自身网络管理。
- 企业自行搭建:如GRE、L2TP、IPsec、SSL 虚拟专用网等,企业需自主管理整个 虚拟专用网架构。
按组网方案划分
客户到站点(Client-to-Site):Access 虚拟专用网
- 场景特点:客户端地址不固定,仅支持客户端单向向内网发起访问请求。
- 适用场景:出差员工、移动办公人员接入企业内网。
站点到站点(Site-to-Site)
- 场景特点:两端网络通过固定网关连接互联网,组网相对固定,支持双向访问。
- 细分类型:
- 内联网(Intranet 虚拟专用网):连接同一公司的多个 LAN,如总部与分支机构。
- 外联网(Extranet 虚拟专用网):连接企业与合作商、外包公司等外部机构的网络。
按层次分类
基于 OSI 七层模型,可分为二层虚拟专用网(如 L2TP)、三层虚拟专用网(如 IPsec、GRE)等,不同层次的 虚拟专用网对应保护不同层次的数据。
四、虚拟专用网关键技术
1. 隧道技术
- 核心地位:是虚拟专用网的核心技术,本质是封装技术。虚拟专用网通过封装对数据进行保护,工作在不同层次的虚拟专用网保护其所在层次及以上的数据(无加密时不保证安全)。
- 相关协议:网络封装涉及三类协议 —— 乘客协议(被封装的数据协议,如 IP、PPP)、封装协议(负责封装的协议,如 GRE、L2TP)、运输协议(承载封装后数据的协议,如 IP)。
- GRE(通用路由封装):典型的封装协议,用于创建 VPN 隧道,可封装多种网络层协议。
- 优势:
- 互联互通:实现不同网络类型(如 IPv4 与 IPv6)的跨网连接。
- 安全性:通过封装隐藏原始数据信息(需配合加密增强安全性)。
- 灵活性:可基于公共网络灵活部署,降低专线成本。
2. 身份认证技术
- 作用:虚拟专用网的安全前提,用于核实接入者(如分支节点、出差员工)的身份,防止恶意用户接入。
- 不同虚拟专用网技术的认证支持:
- GRE:不具备身份认证功能。
- L2TP:依赖 PPP 协议提供认证(如 PAP、CHAP)。
- IPsec虚拟专用网、SSL虚拟专用网:原生支持身份认证,可采用密码、证书等方式。
3. 加解密技术
- 定义:将明文转换为密文(加密),再将密文还原为明文(解密),加密对象包括数据报文和协议报文。
- 目的:保证信息被窃听或截取后,攻击者无法获取内容,抵抗网络被动攻击(如监听)。
- 技术实质:可逆的双向函数,需通过密钥实现加密与解密的对应。
- 支持情况:
- GRE、L2TP:不提供加解密功能,通常需与 IPsec 结合使用以增强安全性。
- IPsec、SSL:原生支持加解密,可通过对称或非对称加密算法实现。
4. 数据认证技术
- 作用:保证数据的完整性,验证接收的报文是否被伪造或篡改,若不通过则丢弃。
- 实现方式:采用 “摘要” 技术,通过 HASH 函数将长报文映射为固定长度的短报文(摘要),收发双方对比摘要值,一致则认可数据完整性。
- 支持情况:
- L2TP:本身无数据认证机制,需与 IPsec 结合实现。
- IPsec、SSL:原生支持数据认证。
- GRE:默认不支持,可通过添加校验和和关键字提供简单数据认证。
五、数据的安全传输 —— 密码学
1. 加密技术发展史
- 古典加密算法:安全性依赖算法本身保密(如凯撒密码),一旦算法泄露则完全失效。
- 现代加密算法:通过 “密钥” 解决古典算法的缺陷,安全性基于密钥保密而非算法保密,遵循 “算法公开、密钥保密” 原则,分为对称加密算法和非对称加密算法。
2. 对称加密算法(传统密码算法、秘密密钥算法、单钥算法)

特点:发送者和接收者使用相同的密钥进行加密和解密,安全性取决于密钥是否被未授权第三方获取。使用前需通过安全方式交换密钥。
密钥核心:基于双向函数,运算逻辑以异或算法为基础(二进制运算中,相同为 0,不同为 1)。
示例: 明文:11001110 密钥:10001010 密文:01000100(明文与密钥异或) 解密:01000100与密钥10001010异或,还原为明文11001110
分类
流加密:
- 特点:基于明文流逐位加密,密钥长度与明文流长度相同。
- 密钥传输方式:带外传输(如 U 盘拷贝)、带内传输(通过加密流量传输)。
- 典型算法:RC4,广泛用于无线通信网络。
分组加密(块加密算法):
- 逻辑:将明文切分为固定大小的块(分组),对每个块单独加密,块长度(分组长度)需权衡安全性与实用性(传统为 56 位,现多为 128 位)。
- 关键组成:
- 填充算法:当明文长度不是块长度的整数倍时,需填充至整数倍(如 PKCS7 算法)。
- 规则:设块长度为
BlockSize
,明文字节长度为SrcSize
,填充字节数P = BlockSize - (SrcSize % BlockSize)
,每个填充字节的值为P
(解密时根据最后一个字节去除填充位)。
- 规则:设块长度为
- 分组模式:解决多个块的协同加密问题,常见模式包括:
- ECB(电子密码本):每个块独立加密,相同明文块生成相同密文块,安全性低。
- CBC(密码块链接):明文块与前一个密文块异或后加密,需初始化向量(IV),加密串行、解密可并行。
- CFB(密文反馈):前一个密文块加密后与当前明文异或,无需填充,解密仍用块加密。
- OFB(输出反馈):基于前一个块加密的输出生成异或参数,与 CFB 类似。
- CTR(计数器模式):用计数器生成异或参数,加解密可并行。
- GCM(伽罗瓦 / 计数器模式):在 CTR 基础上增加认证功能,用于 TLS 协议。
- 分组加密算法:对单个块的具体加密逻辑。
- 填充算法:当明文长度不是块长度的整数倍时,需填充至整数倍(如 PKCS7 算法)。
常见算法
- DES/3DES:DES 分组长度 56 位,安全性较低;3DES 通过 “加密 - 解密 - 加密” 三次运算增强安全性,适用于大量数据加密,效率较高。
- AES(高级加密标准):分组长度支持 128、192、256 位,安全性最高、应用最广泛。
国密算法:国家密码局认证的国产算法,包括:
- SM1:对称加密,强度与 AES 相当,算法未公开,需通过加密芯片调用。
- SM2:非对称加密,基于 ECC,优于 RSA,已公开。
- SM3:消息摘要算法,类似 MD5,结果为 256 位,已公开。
- SM4:对称加密,用于无线局域网,分组长度 128 位。
特点与问题
- 流加密:速度快、资源消耗低;分组加密:安全性、可扩展性更优,是主流算法。
- 存在问题:密钥共享(如何安全传输)和密钥管理(密钥数量过多时的维护)。
3. 公钥密码体系
- 核心目标:解决对称加密的密钥共享问题,杜绝 “隐藏式安全性”。
非对称加密算法(公钥加密)

特点:每个用户拥有一对密钥 ——公钥(公开) 和私钥(保密),两者存在数学关联。公钥加密的数据仅能通过对应私钥解密,私钥加密的数据仅能通过对应公钥解密。
运算基础:基于不可逆的取模运算(如大整数因数分解、椭圆曲线离散对数问题)。
通讯方式:通讯双方需使用四个密钥(各自的公钥和私钥),发送方用接收方公钥加密数据,接收方用自身私钥解密。
注意事项:公钥由私钥推导而来,私钥泄露则公钥失效,私钥绝不能作为公钥使用。
常见算法:
- RSA:基于大整数因数分解问题,常用 2048 位密钥,目前仍广泛使用。
- ECC(椭圆曲线加密):基于椭圆曲线离散对数问题,256 位密钥安全性相当于 RSA 的 3072 位,运算速度更快。
与对称加密对比
特性 | 对称加密 | 非对称加密 |
---|---|---|
安全性 | 较低 | 较高 |
速度 | 较快 | 较慢 |
- 混合使用策略:数据传输用对称加密保证效率,对称密钥的共享通过非对称加密实现,兼顾安全性与效率(即混合密码体系)。
密钥分配问题
- 事先共享密钥:需通过安全渠道(如线下交付)传递,适用于固定场景。
- 密钥分配中心(KDC):集中管理密钥,用户仅需与 KDC 共享密钥,解决密钥数量过多问题,但需解决 KDC 的性能和自身安全性问题。
- DH 交换算法:
- 原理:双方不直接交换密钥,而是通过共享参数(公钥)、私有参数(私钥)和算法协商对称密钥。核心公式为
A = g^a mod p
(g
、p
为公开生成元,a
为私有参数)。 - 特点:仅传递生成密钥的参数,不直接传递密钥,安全性基于离散对数问题的复杂性。
- 原理:双方不直接交换密钥,而是通过共享参数(公钥)、私有参数(私钥)和算法协商对称密钥。核心公式为
- 非对称加密算法:通过公钥加密对称密钥,实现密钥的安全传输。
混合密码体系(数字信封)

- 逻辑:先用对称密钥加密消息(保证效率),再用接收方公钥加密对称密钥(保证密钥安全),接收方用私钥解密得到对称密钥,再解密消息。
- 优势:结合对称加密的高效性和非对称加密的安全性,广泛用于实际通信(如 HTTPS)。
六、身份认证和数据认证技术
1. Hash 散列(哈希算法)
定义:将任意长度输入转换为固定长度输出(散列值)的不可逆函数,非加密技术(加密可逆,散列不可逆)。
特点:
- 不可逆:无法从散列值反推原始输入。
- 固定长度:无论输入长度如何,输出长度固定(如 SHA-256 输出 256 位)。
- 唯一性:相同输入必产生相同散列值,不同输入(概率上)产生不同散列值(抗碰撞性)。
- 雪崩效应:输入微小变化导致散列值大幅变化。
分类:
- 密码学哈希:需保证抗碰撞性,如 SHA-2、SHA-3、SM3(安全);MD5、SHA-1(不安全,已被破解)。
- 非密码学哈希:用于非安全场景(如 CRC 校验、哈希表查找)。
用途:
- 网络传输校验和:验证数据传输完整性。
- 信息认证与完整性:如 MAC(消息认证码),在散列基础上加入密钥,确保消息来源合法性和完整性。
- 电子签名:对消息散列值签名,验证消息未被篡改。
- 敏感信息存储:如密码存储(仅存散列值,不存明文)。
- 散列表:快速查找数据(如字典、哈希映射)。
2. 数字签名
私钥 | 公钥 | |
---|---|---|
公钥密码体系 | 解密 | 加密 |
数字签名 | 加密 | 解密 |
谁持有密钥 | 个人持有 | 任何人 |
常用的是对消息的散列值签名的方式。散列值确保消息没有被篡改
数字签名的目的不是为了对数据信息进行加密,而仅仅是为了对数据的发送者进行验证。
- 作用:解决消息发送中的伪造和否认问题,消息认证码(MAC)无法解决 “第三方证明” 和 “防止否认” 问题。
- 过程:发送者对消息散列值用私钥加密(生成签名),接收者用发送者公钥解密并验证散列值是否匹配。
- 目的:验证数据发送者身份及消息完整性,不用于加密数据。
3. 数字证书与 PKI 体系AAAAA
从根CA开始 ---> 特点:自己给自己颁发证书,被称为自签名。
用户本地预埋的是可信的CA机构自己的数字证书,而不会直接预埋CA机构的公钥信息。
- 数字证书:由认证机构(CA)签名的公钥,包含用户信息、公钥及 CA 签名,证明公钥归属。
- PKI(公钥基础设施):围绕数字证书全生命周期的管理体系,遵循 X.509 标准,包括:
- CA(认证机构):生成、颁发、撤销证书,制作证书撤销列表(CRL)。
- RA(注册机构):接收证书申请并验证用户身份。
- VA(验证机构):管理 CRL,提供证书状态查询。
- 证书层次:从根 CA 开始,根 CA 自签名,用户本地预置可信 CA 证书,下级 CA 由上级 CA 签名,形成信任链。
- 相关协议:OCSP(在线证书状态协议),高效查询证书是否失效,替代 CRL 的周期性更新。