电子货币安全解析
1. 引言
电子商务系统旨在以电子方式执行与传统商业流程相关的所有(或几乎所有)活动,其目的在于优化商业流程,具体表现为:
- 借助更高效的媒介加速商业流程和资金周转。
- 创造新型商品,如电子出版物、电子服务和多媒体产品等电子商品或“软商品”。
- 为客户提供更便捷的商业体验。
- 发掘新型商业活动,如信息检索服务。
- 拓展新客户群体,实现客户区域的全球化。
随着电子商务系统的发展,对合适支付系统的需求变得紧迫且重要。尽管已提出并实施了许多支付系统,但现有支付系统的质量仍有待提高,其发展尚未达到理想状态。电子货币问题与信息系统安全,尤其是密码学问题紧密相关。设计一个功能完善的电子支付系统并非难事,但要设计一个既功能完备又安全可靠的支付系统则颇具挑战,安全机制通常是支付系统的核心部分。
2. 电子商务与电子货币
“电子货币”这一术语在不同场景下用于描述多种支付系统和技术。“储值”产品通常是预付费支付工具,消费者拥有或可使用的资金记录存储在其持有的电子设备中,当消费者使用该设备进行购买或其他交易时,存储的“价值”会相应增加或减少。相比之下,“访问”产品通常涉及标准个人计算机和相应软件,使消费者能够通过互联网等计算机网络或其他电信链接访问传统支付和银行产品及服务,如信用卡或电子资金转账。
3. 电子货币的基本原则
3.1 电子货币的属性
在实施电子货币时,人们努力使其尽可能接近真实的物理货币。理想的电子支付系统应具备以下六个属性:
1. 独立性 :电子货币的安全性不依赖于特殊的物理条件,无需特殊硬件,可通过网络传输。
2. 安全性 :电子货币不能被复制、修改或重复花费。
3. 隐私性、匿名性和不可追踪性 :保护用户隐私,无人能推断用户与其支付之间的关联,客户可匿名操作。
4. 离线支付 :客户与商家之间的电子支付协议可离线执行,无需直接连接第三方(如银行)。
5. 传递性 :电子货币可转移给其他用户。
6. 可分割性 :电子硬币 C 可分割成任意数量的其他硬币,每个硬币的价值小于 C,且这些硬币的价值总和等于 C。
需要注意的是,这些属性是理想电子支付系统的特征,目前尚无一个运行中的电子支付系统能同时满足所有这些属性。
3.2 电子货币的实现
电子支付系统通常包含以下各方:
- 客户 :从客户银行(发行方)获取电子货币并向商家付款。
- 商家 :从客户处接收电子货币,并以支付交易的形式将这些货币发送给商家银行(收单方)。
- 收单方 :通常是商家的银行,从商家处接收交易(即电子货币),并与相应的发行方(客户银行)清算这些支付交易。
- 发行方 :通常是客户银行,向其客户提供电子货币,并随后从收单方接收这些货币。
该模型中的操作包括:
- 充值 :将货币价值从发行方转移到客户的支付工具(如电子钱包)。
- 消费 :将货币价值从客户的支付工具转移到商家的支付工具(通常是支付终端)。在终端中创建包含电子货币和其他支付细节的支付交易。
- 交易收集 :将支付交易从商家转移到收单方。
- 支付清算 :清算收单方和发行方之间的支付请求。
从安全角度来看,充值和消费是最敏感的操作,主要威胁集中在这两个操作上,包括使用伪造的支付工具、修改支付工具的通信内容以及非法充值。其他两个操作的敏感性较低,在这些操作期间发生安全事件的概率要小得多。
以下是电子支付系统的一般结构流程图:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
A(客户):::process -->|获取电子货币| B(发行方: 客户银行):::process
A -->|付款| C(商家):::process
C -->|发送交易| D(收单方: 商家银行):::process
D -->|清算交易| B
B -->|充值| A
A -->|消费| C
C -->|收集交易| D
D -->|清算支付请求| B
4. 电子支付系统的分类
一般来说,电子支付系统可分为在线系统和离线系统。在线系统在每次交易(充值或消费)时都需要与电子货币发行方(通常是银行)建立直接通信连接,而离线系统则允许在不与发行方进行在线连接的情况下进行支付交易。
从隐私角度来看,支付系统可分为可识别和匿名两类。可识别支付系统使电子货币发行方能够识别每笔交易的参与者,并追踪电子货币的流向。匿名支付系统保留了真金属硬币的一个特性——匿名性和不可追踪性,发行方无法追踪电子货币的路径。支付系统的匿名性是一个理想的特性。
此外,还可以根据以下标准对支付系统进行分类:
- 是否使用智能令牌(如智能卡,有时也称为电子钱包或电子皮夹)。
- 支付工具(如磁卡、智能卡、个人数字助理、个人计算机)是否携带电子货币价值(有电子货币系统和无电子货币系统)。
- 如果系统使用电子货币,还需考虑价值在支付工具中的实现方式,可使用计数器(基于计数器的系统)或电子硬币。
- 根据所使用的加密机制,电子支付系统可基于秘密密钥加密或公钥加密。
电子支付系统的分类如下表所示:
| 分类 | 子分类 | 示例 |
| ---- | ---- | ---- |
| 无电子货币的电子支付系统 | 电子银行 | 家庭银行、网上银行、电话银行等 |
| | 磁支付卡 | 信用卡 |
| | 支付智能卡 | VISA Easy Entry |
| | 无电子货币的网络系统 | SET |
| 基于计数器的电子支付系统 | 预付费智能卡 | 电话卡 |
| | 带电子支票的电子钱包 | |
| 基于电子硬币的电子支付系统 | 带电子硬币的电子钱包 | |
| | 带电子硬币的网络支付系统 | |
4.1 无电子货币的电子支付系统
无电子货币的电子支付系统的最显著特点是支付工具(如磁支付卡、智能卡或个人计算机)不包含任何电子货币。支付工具仅用于客户的身份识别和认证,有时用于消息的加密保护或客户的不可抵赖性。客户与其他方交换的消息也不包含任何电子货币,而是包含从一个账户到另一个账户转移资金的指令。这类系统通常是可识别的在线支付系统,典型示例包括电子银行系统、磁支付卡、支付智能卡和计算机网络支付系统。
- 电子银行系统 :通过个人计算机、调制解调器和电话线实现银行与客户之间的银行信息交换。系统通常允许对客户账户进行常见的被动操作(如查看账户余额和账户历史)以及一些主动操作(如发送支付指令)。显然,该系统不包含任何电子货币。
- 磁支付卡 :用于从自动取款机(ATM)提取现金或进行无现金支付。卡本身不包含任何电子货币,所有相关信息都存储在银行中央计算机中,支付卡(连同个人识别码 PIN)仅用于客户的身份识别和认证。
- 支付智能卡 :是磁支付卡的直接替代品,具有相同的功能。其优点是安全性更高,更难复制,可本地验证 PIN 码,并能有效限制 PIN 码输入失败的次数。
- 计算机网络支付系统 :包括无电子货币和有电子货币的系统,但由于电子货币的实现复杂性,大多数此类系统是无电子货币的。其主要特点是支付工具是个人计算机,通信通过互联网进行。理想情况下,客户端无需额外的硬件。由于客户端具有相对较大的计算能力,加密机制通常基于公钥加密。其中最著名的计算机网络支付系统之一是 SET(安全电子交易)。SET 旨在使用现有支付产品(如信用卡和借记卡)进行交易,而不是电子货币产品。该规范确定了任何交易的五个参与方:持卡人、发行方、商家、收单方和支付网关。持卡人通过个人计算机发起网络购买,使用 PC 上的“可信软件”和认证信息。SET 指定使用消息加密、数字签名和加密证书来确保信息的机密性、支付数据的完整性以及持卡人与商家的认证,采用基于 RSA 的加密技术,使用 768、1024 或 2048 位密钥和认证机构层次结构。
4.2 基于计数器的电子支付系统
实现电子货币的最简单方法是将客户携带的货币金额表示为存储在安全硬件令牌(用作支付工具)中的计数器值。当支付工具充值时,计数器会增加充值金额;当进行消费操作时,计数器会减少支付金额。该系统相对简单,各方之间交换的消息也简单,且与交换的货币价值无关。此类系统的安全性依赖于支付工具的安全性及其对未经授权篡改的抵抗力。如果支付工具被“破解”,攻击者可以创建任意数量的虚拟货币。基于计数器的支付系统最常见的变体是预付费卡和电子钱包。
- 预付费卡 :最初作为单用途支付工具开发,卡发行方和商家通常为同一方(如电话卡或停车卡)。由于卡中嵌入的价值(即计数器的值)用途有限,不具备货币的特征,因此未引起中央银行的关注。预付费卡通常由智能卡实现,但对于小额交易,也可使用磁卡。预付费卡是典型的匿名离线支付系统。
- 带电子支票的电子钱包 :借鉴预付费卡的经验,许多国家正在开发一种新型支付工具——多功能预付费卡,也称为“电子钱包”。电子钱包与其他无现金支付工具的不同之处在于,它预先提供了普遍接受的购买力。可以在银行柜台、自动取款机或通过专门配备的电话进行充值,可从银行账户扣除款项或使用纸币和硬币充值。在销售点,电子设备会适当调整卡上的信息,减少嵌入的购买力。电子钱包内部有一个直接代表货币价值的计数器。当钱包进行消费时,计数器的值会减少,并发出带有支付金额的电子消息(电子支票),该电子支票经过加密保护。商家将收到的电子支票存储在其支付工具(通常称为销售点或支付终端)中作为支付交易。然后,商家将这些交易提交给银行,银行相应地为商家的账户充值。电子钱包是典型的可识别离线支付系统。
4.3 基于电子硬币的电子支付系统
基于电子硬币的电子支付系统的主要特点是支付工具包含多个经过数字签名的数据片段——电子硬币。支付工具中存储的价值等于各个电子硬币的价值总和。
当支付工具充值时,发行方会创建所需数量的电子硬币并发送给客户的支付工具。支付工具仅用于存储电子硬币,同时防止同一电子硬币被重复使用。在支付时(即消费操作),支付工具会向接收方(通常是商家)发送适当数量的电子硬币。电子硬币保留了真硬币的大部分属性,基于电子硬币的支付系统通常是具有传递性的匿名离线系统。
从安全角度来看,基于硬币的系统优于基于计数器的系统。如果基于计数器的电子钱包被“破解”(即攻击者知道钱包中存储的秘密),攻击者可以创建大量伪造的电子货币,且识别攻击者的概率通常较小。而当基于硬币的电子钱包被“破解”时,攻击者无法生成新的电子硬币,只能尝试多次花费现有的电子硬币。
从技术角度来看,实现基于硬币的支付系统颇具难度,目前的实现仍不尽如人意。主要问题是重复花费,这是基于电子签名的电子硬币的固有问题。电子硬币虽然具有许多与真硬币相似的属性,但有一个本质区别——难以区分原件和副本。当真硬币被复制时,通常很容易辨别真伪;而当电子硬币被复制时,原件和副本完全相同,因此电子硬币可能被多次花费,这是非常不可取的。目前尚无通用且简单的解决方案。一种可能的解决方案是在接受电子硬币之前,在中央数据库中检查该硬币是否已被花费,这需要在线连接;另一种解决方案是使用通常由智能卡代表的“电子卫士”,确保硬币只被花费一次,但这种方案不允许仅通过软件实现支付工具。此外,电子硬币还存在可分割性问题,简单的实现方式无法解决可分割性,有时难以将可用的硬币组合成所需的金额。虽然有一些基于密码学的解决方案,但这些方案通常难以实现且成本高昂。
目前,大多数带有电子货币的支付系统是基于计数器的支付系统,只有少数真正有效的系统是基于硬币的。但基于硬币的系统具有许多优点,未来我们可以预期基于硬币的系统实现将变得更加普遍。
5. 密码学的作用
密码学在电子支付系统的设计中起着至关重要的作用。应用密码学机制可以帮助实现诸如机密性、数据完整性、认证和不可抵赖性等目标。电子支付系统中使用的密码学机制包括秘密密钥加密/解密、单向哈希函数、挑战 - 响应密码协议、数字签名和密钥管理协议。
电子货币安全解析
5. 密码学的作用(续)
为了更好地理解密码学机制在电子支付系统中的具体应用,下面详细介绍几种常见的密码学机制及其在支付系统中的作用:
- 秘密密钥加密/解密 :在电子支付中,秘密密钥加密用于保护敏感信息的传输,如客户的账户信息、支付金额等。只有持有相同密钥的双方才能对信息进行加密和解密,确保信息在传输过程中不被窃取或篡改。例如,在客户与商家进行交易时,使用秘密密钥对交易信息进行加密,商家收到加密信息后,使用相同的密钥进行解密,从而获取准确的交易内容。
- 单向哈希函数 :单向哈希函数将任意长度的输入数据转换为固定长度的哈希值。在电子支付系统中,哈希函数常用于验证数据的完整性。例如,在交易过程中,系统会对交易信息计算哈希值,并将其与接收到的哈希值进行比较。如果两个哈希值相同,则说明数据在传输过程中没有被篡改。
- 挑战 - 响应密码协议 :该协议用于验证双方的身份。在电子支付中,当客户发起交易时,商家会向客户发送一个挑战信息,客户需要使用自己的私钥对挑战信息进行签名,并将签名后的信息返回给商家。商家使用客户的公钥验证签名的有效性,如果验证通过,则确认客户的身份合法。
- 数字签名 :数字签名是一种用于确保信息真实性和不可抵赖性的密码学技术。在电子支付中,客户使用自己的私钥对交易信息进行签名,商家可以使用客户的公钥验证签名的有效性。一旦签名被验证,客户就无法否认该交易的发生。
- 密钥管理协议 :密钥管理协议用于安全地生成、存储、分发和更新密钥。在电子支付系统中,密钥的安全性至关重要,因为密钥的泄露可能导致信息的泄露和交易的不安全。密钥管理协议确保密钥在整个生命周期内的安全性,防止密钥被窃取或滥用。
以下是一个简单的表格,总结了这些密码学机制在电子支付系统中的作用:
| 密码学机制 | 作用 |
| ---- | ---- |
| 秘密密钥加密/解密 | 保护敏感信息传输,确保信息机密性 |
| 单向哈希函数 | 验证数据完整性 |
| 挑战 - 响应密码协议 | 验证双方身份 |
| 数字签名 | 确保信息真实性和不可抵赖性 |
| 密钥管理协议 | 安全管理密钥,保障密钥安全性 |
6. 电子货币安全面临的挑战与应对策略
电子货币的广泛应用带来了诸多便利,但也面临着一系列安全挑战。以下是一些常见的安全挑战及其应对策略:
6.1 重复花费问题
重复花费是电子货币面临的主要安全问题之一,尤其是在基于电子硬币的支付系统中。如前文所述,电子硬币难以区分原件和副本,容易被攻击者多次花费。为了解决这个问题,可以采取以下策略:
- 在线验证 :在接受电子硬币之前,在中央数据库中检查该硬币是否已被花费。这种方法需要在线连接,确保每笔交易都能及时验证硬币的有效性。例如,商家在收到电子硬币后,立即向发行方的中央数据库发送查询请求,确认该硬币是否已被使用。
- 电子卫士 :使用智能卡等设备作为“电子卫士”,确保硬币只被花费一次。智能卡可以存储硬币的使用状态,并在每次交易时进行验证。例如,当客户使用电子硬币进行支付时,智能卡会检查该硬币的使用记录,如果发现该硬币已经被使用过,则拒绝此次交易。
6.2 伪造支付工具问题
攻击者可能会伪造支付工具,如伪造智能卡或磁卡,以进行非法交易。为了防止伪造支付工具,可以采取以下措施:
- 加强身份验证 :使用多因素身份验证方法,如结合密码、指纹识别、面部识别等技术,确保只有合法用户才能使用支付工具。例如,客户在使用支付工具时,需要输入密码并进行指纹识别,只有两项验证都通过才能进行交易。
- 使用安全芯片 :在支付工具中使用安全芯片,如智能卡中的芯片,提供更高的安全性。安全芯片可以存储加密密钥和用户信息,并对交易进行加密处理,防止信息被窃取或篡改。
6.3 通信安全问题
在电子支付过程中,支付工具与商家、银行之间的通信可能会被拦截或篡改。为了保障通信安全,可以采取以下策略:
- 使用加密通信协议 :如 SSL/TLS 协议,对通信数据进行加密,确保数据在传输过程中的机密性和完整性。例如,在客户与商家进行交易时,使用 SSL/TLS 协议建立安全的通信通道,对交易信息进行加密传输。
- 定期更新密钥 :定期更新加密密钥,防止密钥被破解。例如,银行可以每月更新一次加密密钥,确保通信安全。
以下是应对电子货币安全挑战的流程图:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
A(重复花费问题):::process --> B(在线验证):::process
A --> C(电子卫士):::process
D(伪造支付工具问题):::process --> E(加强身份验证):::process
D --> F(使用安全芯片):::process
G(通信安全问题):::process --> H(使用加密通信协议):::process
G --> I(定期更新密钥):::process
7. 电子货币安全的未来发展趋势
随着技术的不断发展,电子货币安全也将面临新的挑战和机遇。以下是一些电子货币安全的未来发展趋势:
- 量子加密技术的应用 :量子加密技术基于量子力学原理,提供了更高的安全性。在电子支付系统中应用量子加密技术,可以有效防止信息被窃取和篡改。例如,使用量子密钥分发技术,确保密钥的安全性,从而保障交易信息的机密性。
- 生物识别技术的普及 :生物识别技术如指纹识别、面部识别、虹膜识别等将更加普及,用于加强身份验证。生物识别技术具有唯一性和不可复制性,可以有效防止伪造支付工具和身份盗用。例如,未来的支付工具可能会集成多种生物识别技术,提供更高级别的安全保障。
- 人工智能和机器学习的应用 :人工智能和机器学习技术可以用于检测和预防电子货币安全威胁。通过分析大量的交易数据,人工智能和机器学习算法可以识别异常交易模式,及时发现潜在的安全风险。例如,银行可以使用人工智能算法监测客户的交易行为,一旦发现异常交易,立即采取措施进行防范。
- 区块链技术的发展 :区块链技术具有去中心化、不可篡改等特点,可以为电子货币安全提供新的解决方案。在区块链上记录交易信息,可以确保交易的透明度和可追溯性,防止重复花费和篡改交易记录。例如,一些电子支付系统已经开始尝试使用区块链技术,构建更加安全可靠的支付网络。
电子货币安全是电子商务发展的关键因素。随着技术的不断进步,我们需要不断探索和创新,采取有效的安全措施,应对各种安全挑战,保障电子货币的安全使用,推动电子商务的健康发展。

2872

被折叠的 条评论
为什么被折叠?



