timezone |
---|
Asia/Shanghai |
- 自我介绍 大家好,我是Bob Yan,一个对Web3感兴趣的RISCV Engineer,初级前端开发者,很开心参加这次残酷供学。
- 你认为你会完成本次残酷学习吗? 当然
今天首先过了 https://epf.wiki/#/ 以及 https://epf.wiki/#/eps/intro 对epf有了大概了解,这是一个起源于2024年,致力于提升Ethereum core protocol教育的项目,完全开源免费。
学习了Week0提供的密码学介绍,从一开始较为简单的Caesar加密,所有字母使用固定的偏移进行加密,只用发送、接受双方都知道偏移长度,就可以进行加密解密。再到稍微复杂一点的Vigenere加密,每个字母都使用可能不同的偏移。
随着数学的发展,后续又出现了更加复杂的对称式加密,但其也有缺陷,其信息传递的安全完全取决于key传递的安全,如果key不慎暴露,那么其传递的信息完全暴露给其他人。
在1976年,非对称加密出现,不同于对称加密,非对称加密有两个Key,公钥和私钥。私钥由大量随机的数字组成,他的大小甚至可能多于宇宙中的原子数量,公钥由私钥经过确定的算法生成。接受者可以将公钥给发送者,发送者将信息通过公钥加密,私钥可以将加密后的信息解密。
安全加密只是非对称加密的一种功能。私钥可以创建任意数据到公钥的数学证明,称为数字签名(这里我不太懂)。
在之前的学习生涯中,我使用非对称加密的场景只有github的公钥及私钥0V0
今天的时间较为紧张,自己将时间投入到了Week0的视频观看中,观看了约40分钟的视频。
- 学习了Verkle Tree
- 开通了自己的Web3钱包
学习了现代密码学
- 保密性:通过加密技术将信息转化为密文,只有拥有正确解密密钥的接收者才能还原为明文,其他人即使截获也无法理解内容。比如,在网上银行转账时,用户的账户信息和转账金额等数据在传输过程中被加密,防止被窃取。
- 完整性:确保信息在传输或存储过程中没有被篡改。使用消息认证码(MAC)或哈希函数,对信息进行运算生成固定长度摘要,接收方通过重新计算摘要并对比,就能判断信息是否完整。例如,下载文件时,文件提供方会公布文件的哈希值,用户下载后可自行计算哈希值并与公布值对比,以确认文件是否完整。
- 认证性:确认信息的来源和接收方的身份真实可靠。在登录网站时,用户输入用户名和密码,网站通过验证机制确认用户身份,防止非法用户访问。数字证书也是实现认证性的重要手段,常用于证明网站服务器身份。
- 不可抵赖性:防止信息的发送方或接收方事后否认曾经发送或接收过该信息。通过数字签名技术,发送方用私钥对信息签名,接收方用发送方公钥验证,由于私钥只有发送方持有,一旦签名验证通过,发送方就无法否认发送过该信息。
- 对称加密算法:加密和解密使用相同密钥,如 AES(高级加密标准)。优点是加密速度快,适合对大量数据加密;缺点是密钥管理困难,因为通信双方需共享相同密钥,若密钥泄露,信息就不安全。在视频流加密场景中,因数据量大、实时性要求高,常使用 AES 算法加密。
- 非对称加密算法:使用一对密钥,即公钥和私钥。公钥可公开,用于加密;私钥由用户自己保存,用于解密。常见算法有 RSA、ECC(椭圆曲线密码体制)。优点是密钥管理方便,适合在网络环境中进行密钥交换和身份认证;缺点是加密和解密速度慢,一般不用于对大量数据加密。例如,在 HTTPS 协议中,服务器将公钥发送给客户端,客户端用公钥加密数据传输给服务器,服务器用私钥解密。
- 哈希函数:将任意长度的输入数据转换为固定长度的哈希值,如 SHA - 256。哈希值具有唯一性,输入数据哪怕只有微小变化,哈希值也会截然不同。常用于数据完整性验证、密码存储等。网站存储用户密码时,通常存储密码的哈希值,用户登录时输入密码,系统计算其哈希值并与存储的哈希值对比,避免直接存储密码带来的安全风险。
- 数据加密存储:在数据库中,对用户敏感信息(如身份证号、银行卡号)加密存储,防止数据库泄露导致信息被窃取。云存储服务提供商也会采用加密技术,保障用户数据在云端存储安全。
- 安全通信:在网络通信协议(如 SSL/TLS)中,使用密码学技术保障数据在传输过程中的安全。无论是浏览网页、发送电子邮件还是即时通讯,都依赖密码学防止信息被监听和篡改。 身份认证与授权:Web 应用通过密码、短信验证码、指纹识别等结合密码学技术实现用户身份认证。在区块链技术中,采用非对称加密和数字签名实现节点身份认证和交易授权。