zoukankan      html  css  js  c++  java
  • 加密

    一、加密

    1、对称加密与非对称加密的区别

    • 对称加密。同一把钥匙进行加密和解密
    • 非对称加密,公钥加密,私钥解密。

    对称加密:

    常见算法:AES、DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK
    AES:高级加密标准(Advanced Encryption Standard)
    DES:数据加密标准(Data Encryption Standard)

    案例一:

     对称加密相对于非对称加密不安全(key被得到,就可以被破解)

    非对称加密

    常见算法:RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)等

    应用场景:银行和电商网站,他就采用非对称加密,将公钥给所有人,你们就用这个公钥加密,私钥我自己留着,谁也不知道,所以除了我,谁也解密不了。

    二、篡改风险

    摘要算法(HASH算法)

    Hash算法的特点是单向不可还原,用户可以通过hash算法对目标信息生成一段特定长度的唯一hash值,却不能通过这个hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。只要源数据不同,算法得到的摘要必定不同。

    常见算法有:MD5、RIPEMD、SHA、MAC和国密的SM3。【MD5不建议使用,已经被爆】。

    数字签名

    一般来说,不直接对消息进行签名,而是对消息的哈希值进行签名,步骤如下。

    (1)对消息进行哈希计算,得到哈希值
    (2)利用私钥对哈希值进行加密,生成签名
    (3)将签名附加在消息后面,一起发送过去
    (4)验证签名
    (5)收到消息后,提取消息中的签名
    (6)用公钥对签名进行解密,得到哈希值1。
    (7)对消息中的正文进行哈希计算,得到哈希值2。
    (8)比较哈希值1和哈希值2,如果相同,则验证成功。
     
     
  • 相关阅读:
    DTM DEM DSM 介绍
    VC自定义消息
    一句话设计模式基本原则
    抽空写了一个ICON图标的转换程序
    (转载)C# 中的委托和事件
    类的字段和静态字段的使用
    Command 对象总结
    使用 DataReader 检索数据的步骤
    分享一部电影
    C#处理ACCESS数据库
  • 原文地址:https://www.cnblogs.com/fger/p/13452317.html
Copyright © 2011-2022 走看看