The Security Environment

Threats 威胁

  • 目标和威胁:
    • Data confidentiality
    • Data integrity
    • System availablity
    • 排除外来者:病毒接管系统

Intruder 入侵者

  • 入侵者:在他们没有生意的地方打听的人

  • 常见类别:

    • 非技术用户的随意窥探。
    • 被内部人士窥探。
    • 下定决心要赚钱。
    • 商业或军事间谍活动。

Accidental Data Loss 意外数据丢失

  • 常见的原因

    • 自然灾害:

      • 火灾,洪水,地震,战争
    • 硬件或软件错误:

      • CPU故障,不可读的磁盘或磁带,程序错误。
    • 人类错误:

      • 数据输入不正确,丢失磁盘。

Basic of Cryptography 密码学基础

  • 编码: \(C = E(P,K_E)\)
    • P:明文
    • \(K_E\):加密密匙
    • C:秘文
    • E:加密算法
  • 解码:\(P = D(C,K_D)\)
    • P:明文
    • \(K_D\):解密密匙
    • C:秘文
    • D:解密算法
  • Kerckhoffs的原则:加密算法应该是公开的,保密性应该只存在于密钥中。

Secret-Key Cryptography 私钥加密技术

  • 单字母替换:使用键表将每个字符替换为新字符。
  • 密钥加密也称为对称密钥加密,因为在给定加密密钥的情况下很容易找到解密密钥,反之亦然。
  • 如果密钥足够长,则密钥加密是相对安全的。

Public-Key Cryptography 公钥加密技术

  • 所有用户都使用一对加密密钥和解密密钥。加密密钥可以公开,而私有解密密钥可以保密。
    • 加密密匙和解密密匙是不同的
  • 给定一个精心选择的加密密钥,不可能发现相应的解密密钥。
    • 步骤1:发送方使用加密密钥对单据进行编码
    • 步骤2:接收方使用解密密钥对文档进行解码。
  • 缺点:需要大量的计算成本。
Public-Key Encryption (RSA)

RSA:最着名的公钥加密算法

一种方法 单向函数:

一个事实:对计算机来说,将真正大的数字相乘要比将真正大的数字因式分解容易得多。

Digital Signatures 数字签名

  • 步骤1)发送方公开加密密钥并使用解密密钥对哈希值D进行编码

  • 步骤2)接收器使用解码的加密密钥,并将其与计算的哈希值进行比较。如果值一致,则接受。

Authentication 认证

  • 基本规则:
    • 唯一身份验证
    • 在用户访问系统之前完成
  • 三项原则:
    • 用户知道的东西 Something the user knows
    • 用户拥有的东西 Something the user has
    • 用户是什么 Something the user is

  • 存储加密文件
    • 使用salt来阻止加密密码的预计算

  • 要检查用户拥有的某些物理对象,
    • 磁条卡、磁卡、IC卡

  • 测量用户难以伪造的物理特征。

Insider Attacks

Logic Bombs

  • 逻辑炸弹:公司的程序员可能故意在程序中隐藏bug,
    • 例如,一种只要程序员输入每日密码就什么也不做的设备,而当程序员突然被炒鱿鱼而第二天又不输入密码时,它就会关机。

Trap door

插入到程序中的一段附加代码,以便绕过一些正常的检查。

Login Spoofing

一种通过提供类似但虚假的登录窗口窃取用户登录名和密码的方法

Outsider Attacks

Buffer Overflow Attacks

问题

A:Data confidengially

B:Data integrity

C:System availability

D:System availability

C、B、A