zoukankan      html  css  js  c++  java
  • 从数学到密码学(一)

    为什么需要密码学?
    满足现实中双方(或多方)利用计算机进行远距离应用(比如网上购物、网络投票、文件的安全传输)的要求,包括
    一、通信内容保密--对要传输的数据进行保护,让其他人无法看到/知道
    二、数据的完整性--能够验证接收到的数据在传输过程中是否被修改(包括有人恶意修改、通信信道产生的自然干扰)
    三、事前身份认证--正式传输(机密)数据前,能够确认当前正在与我通信的对方确实就是我期望与之通信的人,即对方不是假冒的
    四、事后对方不可抵赖--当前通信结束后,可以给出明确的证据证明对方参与了本次通信,使对方无法否认或抵赖

    说明:
    双方远距离通信是前提--如果双方(或多方)都在一起,直接面对面沟通就行了(第二、三个要求自然满足)
                第一个要求,在没有其他人的场景下可以满足,第四个要求则需要辅助手段完成(比如录音,或者让对方对谈话内容签字)

    第二个要求,如果数据验证不通过,则只能丢弃数据报文,并通知/期待对方重发。
    第三个要求,非常重要,需要优先保障--辨别对方的身份真假是一切行动的前提。谁是我们的敌人?谁是我们的朋友?这是一个问题。
    第四个要求,由于在计算机上伪造双方的通信记录很容易(即证据可以随便造假),一般很难给出令人信服的证据,证明对方参与了本次通信。

    密码学是怎么实现的?--数学

  • 相关阅读:
    <C> 链表 双向链表 栈 队列
    <C> 结构体
    <C> getchar()函数 如何把getchar()到的字符串存起来的实际应用
    DataSet转换为泛型集合和DataRow 转成 模型类
    对DataSet,DataRow,DateTable转换成相应的模型
    Json对象与Json字符串互转(4种转换方式)
    Android开发 使用HBuilder的缓存方法
    MIT_AI公开课p1p2学习笔记
    LeetCode_02 两数相加【链表】
    leetcode_01两数之和
  • 原文地址:https://www.cnblogs.com/efzju/p/2115145.html
Copyright © 2011-2022 走看看