一、 对称加密算法 (Symmetric Encryption)
- 核心特点 :加密和解密使用同一把密钥。运算速度极快,适合处理海量数据。
- 常见算法 :
- AES(高级加密标准):目前全球最主流、最安全的对称加密算法。
- DES / 3DES:早期的标准,因安全性较低,现在基本已被淘汰(面试时提到这点能体现你的技术前瞻性)。
- 国密 SM1 / SM4:中国自主研发的商用密码算法(SM1通常通过专用芯片实现,SM4算法公开)。
- 金融/虚拟币业务应用 :
- 数据库敏感字段加密:比如用户的个人信息、KYC证件照等大量数据的落盘存储。
- 数字信封:在传输大文件时,用对称密钥加密数据本身,再用非对称密钥加密这个对称密钥,兼顾了效率与安全。
🔑 二、 非对称加密算法 (Asymmetric Encryption / 公钥密码)
- 核心特点 :拥有一对密钥------公钥(公开)和私钥(绝对保密)。用公钥加密的数据只能用私钥解密,反之亦然。它完美解决了"密钥如何在网络上安全分发"的难题。
- 常见算法 :
- RSA:最成熟、应用最广泛的算法,但密钥较长,计算速度相对较慢。
- ECC(椭圆曲线加密) :(面试必杀技) 在同等安全强度下,ECC的密钥长度远短于RSA,运算更快,资源消耗更少。
- 国密 SM2:基于椭圆曲线密码学,是中国国家密码管理局发布的标准,安全性与性能均优于RSA。
- 金融/虚拟币业务应用 :
- 虚拟货币钱包与交易签名 :这是虚拟币的基石。比特币和以太坊的底层正是使用了 ECC(椭圆曲线加密)算法来生成钱包地址(公钥衍生)和签署交易(私钥签名)。
- HTTPS/SSL证书:保障用户访问交易所官网或App接口时的通信链路安全。
🔍 三、 哈希算法 / 摘要算法 (Hash Function)
- 核心特点 :单向不可逆。无论输入多长的数据,都会输出固定长度的"指纹"(摘要)。输入数据的任何微小改动,都会导致输出的哈希值完全不同(雪崩效应)。
- 常见算法 :
- SHA-256:比特币的核心算法(挖矿和生成区块哈希)。
- MD5 / SHA-1 :已被证实存在碰撞风险,严禁用于金融安全场景。
- 国密 SM3:中国自主设计的密码杂凑算法,安全性优于SHA-256。
- 金融/虚拟币业务应用 :
- 数据完整性校验:确保交易数据、区块数据在传输过程中没有被黑客篡改。
- 区块链结构:通过哈希指针将一个个区块串联起来,形成不可篡改的链式结构。
- 用户密码存储:数据库中绝不存明文密码,而是存加盐(Salt)后的哈希值。
💡 面试高分话术与加分项
在回答完上述分类后,你可以主动抛出以下两点,展现你对国内合规和底层技术的深刻理解:
1. 主动提及"国密算法"(SM系列)
"除了国际通用的AES、RSA和SHA-256,我也关注到国家在推行国密标准(SM系列) 。在金融和政务领域,**SM2(非对称)、SM3(哈希)、SM4(对称)**正在逐步替代传统算法。如果咱们公司的业务涉及国内合规或信创要求,我有信心能快速上手国密算法的集成。"
2. 柯克霍夫原则 (Kerckhoffs's Principle)
"现代密码学有一个核心原则叫柯克霍夫原则 :即密码系统的安全性不应依赖于算法的保密,而应完全依赖于密钥的保密。所以在我们的系统设计中,算法可以公开(如使用标准的AES或ECC),但必须投入最大的精力在'密钥管理系统(KMS)'的建设和保护上,比如使用冷热钱包隔离、HSM硬件安全模块等。"
一句话总结给面试官: "简单来说,在咱们的虚拟币业务中,非对称加密(ECC/SM2) 负责管'人'(身份认证与签名),哈希算法(SHA-256/SM3) 负责管'账'(数据不可篡改),而**对称加密(AES/SM4)**负责管'数据'(高效存储与传输)。"