企业安全——密码学基础

0x00 前言

密码学的内容一直都是零零散散的,学一遍忘一遍,对于这些很少用到的内容,只能这样子去进行重复,效率低从此没有效率会稍微好一点。

总会比说出base64是一种加密方式贻笑大方的好一点。

0x01 密码学的目的

密码学的主要目的是:

  • 保密性
  • 完整性
  • 身份认证
  • 不可否认性

保密性:

  • 对称密码体系: 使用一个共享秘钥
  • 非堆成:使用公私钥结合的方式

完整性

通常使用加密的消息摘要来实现,也就是数字签名。通过验证消息的数字签名的有效性,来确保消息在传输过程中未被改动。注意这里通过数字签名的方式仅仅是为了保证内容在传输过程中不被更改,而没有验证数据真实性的能力。

身份认证

用于验证系统用户自称的身份。

A:你好,我是张三

B:请证明你是张三,请加密"key"

A:密钥(key)

B:你好,张三

这里需要A使用,B知道的或者可以验证的内容对key进行加密。然后B通过相同的内容进行相同的计算,如果计算内容一致则身份验证通过。

不可否认性

不可否认性使用非堆成密钥密码系统提供,比如BTC等,发送的消息是不可以否认的。

0x02 密码数学

布尔运算

布尔数学(Boolean mathematics)为用于构成任何计算机神经系统的位和字节定义了规则。你可能非常熟悉十进制系统。这是一个逢十进位的系统,其中的每个位上都有一个整数(从0到9),每个位值都是10的倍数。我们对十进制系统的依赖极可能起源于生物学方面的原因---人类用十根手指头来数数。

逻辑运算

AND与:同真为真,有一假则为假

OR:有真则为真

NOT 非:真为假,假为真

XOR异或:不同为1,同为0

mod:模运算

单向函数:每种组合都只能输出一种数学运算,比如hash

分割知识:

当执行某项操作所要求的信息或权限被分散到多名用户手中时,任何一个人都不会具有足够的权限来破坏环境的安全。这种把职责分离和双人控制融于一个解决方案的做法叫分割知识(split knowledge)。

代价函数

代价函数

你可以用代价函数(work fnction)或代价因子从耗费成本和/或时间的角度测算破解一个密码系统时需要付出的努力,从而衡量密码系统的强度。对一个加密系统实施一次完整暴力破解攻击时需要付出的时间和精力,通常是代价函数所代表的内容。

相关推荐
Suckerbin44 分钟前
基于HTTP头部字段的SQL注入:SQLi-labs第17-20关
网络·笔记·网络协议·安全·http·网络安全
武汉格发Gofartlic1 小时前
FEKO许可证的安全与合规性
大数据·运维·安全
Blossom.1181 小时前
低代码开发:开启软件开发的新篇章
人工智能·深度学习·安全·低代码·机器学习·计算机视觉·数据挖掘
AI大模型顾潇3 小时前
[特殊字符] 本地部署DeepSeek大模型:安全加固与企业级集成方案
数据库·人工智能·安全·大模型·llm·微调·llama
qyresearch_4 小时前
全球实物文件粉碎服务市场洞察:合规驱动下的安全经济与绿色转型
安全
玥轩_5216 小时前
BUUCTF 大流量分析(三) 1
安全·网络安全·wireshark·ctf·misc·buuctf·大流量分析
海尔辛7 小时前
学习黑客5 分钟读懂什么是 CVE?
网络·学习·安全
电报号dapp1198 小时前
区块链钱包开发全解析:从架构设计到安全生态构建
安全·web3·去中心化·区块链·智能合约
Frankabcdefgh9 小时前
前端进化论·JavaScript 篇 · 数据类型
javascript·安全·面试·数据类型·操作符·初学者·原理解析
智驱力人工智能9 小时前
AI智慧公园管理方案:用科技重塑市民的“夜游体验”
人工智能·科技·安全·边缘计算·视觉分析·人工智能云计算·垂钓检测