自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 分组密码.

本文介绍了分组密码的基本概念、经典算法、工作模式及密码分析技术。分组密码通过扩散和混淆原则将固定长度明文加密为等长密文。重点分析了DES(Feistel结构)、AES(SPN结构)和SM4(非线性迭代)三种经典算法及其参数特点。详细阐述了ECB、CBC、CFB、OFB和CTR五种工作模式的加密流程与特性。最后探讨了线性密码分析(基于概率偏差)和差分密码分析(利用差分特征恢复密钥)两种主要攻击方法,揭示了分组密码的安全性设计原理与潜在攻击途径。

2025-12-24 02:34:56 732

原创 线性分析.

线性分析由日本密码学家 松井充在 1993 年提出。在此之前,Biham 和 Shamir 的差分分析已经让世界震惊,但差分分析通常需要“选择明文”。松井提出的线性分析只需要。松井利用这种方法,首次在实验上成功破解了 DES 算法。在理想的随机密码中,明文P、密文C和密钥K的比特之间应该没有任何统计规律。Pi1​​⊕⋯⊕Pia​​⊕Cj1​​⊕⋯⊕Cjb​​Kk1​​⊕⋯⊕Kkc​​这个等式成立的概率为pp1/2p。

2025-12-24 00:03:26 572

原创 差分分析.

差分分析是一种强大的密码攻击技术,通过研究明文差分与密文差分的关系来破解加密算法。本文系统介绍了差分分析的核心概念和方法: 基础差分分析:通过异或运算抵消密钥影响,利用差分分布表(DDT)寻找高概率差分特征,以FEAL-4为例展示了具体攻击过程。 高级差分技术:包括截断差分分析(关注部分特征)、不可能差分分析(排除概率为0的路径)和飞来去器分析(将算法分段处理)。 自动化搜索方法:介绍了松井算法和MILP(混合整数线性规划)方法,将差分路径搜索转化为数学优化问题。 这些方法展现了差分分析从基础理论到现代应用

2025-12-21 02:50:49 680

原创 RSA 加密体制及其安全性分析

密钥生成:我们要选择两个大素数p和q,计算Np⋅q。公钥pkNe,私钥skpqde和d必须满足e⋅d≡1modp−1q−1))cmemodNmcdmodN正确性验证:cd≡med≡med≡mmodN。

2025-12-16 16:22:08 785

原创 DNS协议安全

许多企业的防火墙会拦截内部员工直接访问外部网站的 HTTP/TCP 连接,但通常会放行 DNS 流量,因为员工需要解析域名才能工作。阴影域名:黑客攻破了合法网站(如 example.com)的管理权,创建了恶意的子域名(如 bad.example.com)。DNS 协议在设计之初就像是在“明信片”上写字,任何人都可以拦截、修改(中间人攻击),或者伪造一张新的明信片发给你(欺骗/投毒)。:为了防止命令控制服务器(C&C)的域名被封杀,僵尸程序会内置一套算法,每天自动生成成千上万个随机域名。

2025-12-12 03:13:07 1048

原创 Hash分析

hmHmh2nm1​m2​m1​Hm1​Hm2​2nm1​m2​Hm1​Hm2​2n/2生日攻击是理解Hash安全性的基石。如果摘要长度M为256比特,我们只需要约2128次尝试就能以大于1/2的概率找到碰撞。结构演变:从MD到海绵MD结构: 传统的Hash函数多采用此结构,利用压缩函数迭代处理消息块。

2025-12-09 01:20:25 589

原创 SSL协议

(1)它直接建立在 TCP 之上。:负责对上层的数据进行封装。(通过加密)和(通过 MAC 校验)。(2):最核心部分,用于双方相互认证、协商加密算法和交换密钥。:非常简单,用于告知对端“接下来的数据将使用我们刚协商好的加密策略进行加密”。:用于指示安全错误或关闭连接。

2025-12-09 00:28:50 788

原创 非线性分类

核心逻辑: 在之前的章节中,我们学习的线性分类器(如感知机、逻辑回归)试图画一条直线(或超平面)把两类数据分开。但现实世界的数据往往是“你中有我,我中有你”,一条直线根本切不开(比如异或问题 XOR)。

2025-12-03 23:15:29 1029

原创 线性分类.

在贝叶斯中,我们关注概率分布。在线性分类中,我们需要把一切数据都看作向量空间里的点。核心概念: 无论数据长什么样,最后都要变成n维空间里的一个点x∈Rn。

2025-12-03 20:02:23 801

原创 贝叶斯学习

贝叶斯学习的核心不是直接判断“它是A还是B”,而是计算“它是A的概率是多少,它是B的概率是多少”,然后选概率大的那个。Pci​∣x∝Px∣ci​Pci​Pci​xci​Px∣ci​ci​xPci​∣xxci​结论: 贝叶斯分类器的训练过程,本质上就是在统计数据,估计先验概率和似然概率。

2025-12-03 18:58:14 1041

原创 SHA-3举例

这个例子的关键点 (Takeaway)

2025-12-03 11:04:59 585

原创 LFSR代数攻击

f(s₀, s₁, s₂) = s₀*s₁ (二次)最后,我们带入k₁k₂=0,k₁=0。所以,K = (1, 0, 1)代数攻击的巧妙之处在于,它并不直接求解原始的高次方程组f,而是寻找一个。为了防止直接被破解,设计者在 LFSR 后面加了一个。:我们要找一个 g,使得 f * g = = 0。截获z₂=1,s₀=1,k₂=1。截获z₁=0,无法利用零化子。截获z₀=1,即f=1。

2025-11-27 21:01:56 276

原创 本原多项式

在有限域 GF( pⁿ)(其中 p 是素数)中,本原元是一个特殊的元素,它的幂可以生成整个乘法群(即除了0以外的所有元素)。常见的不可约多项式:x+1,x²+x+1,x³+x+1,x³+x²+1,x⁴+x+1,x⁴+x³+1。同样的,g(x)=x³+x²+1也是本原多项式,GF(2)[x]/g(x)也有8个元素,同构于 GF(8)x² + x + 1在 GF(2) 上是不可约的。当我们计算 x,x² ,x³ ,...,xⁿ mod f (x)构造等价类(商环):GF(8)=GF(2)[x]/(f(x))

2025-11-24 16:22:28 176

原创 素数检验方法

并且 a 是一个与 p 互质的整数(即 gcd⁡(a,p)=1),那么。这里要用到先前文章(二次同余式和平方剩余)的。最小的卡迈克尔数是 561=3×11×17。因此,费马检验无法将561识别为合数。这是目前最强大、最广泛使用的概率性素数检验算法。结果为1, a 是模 p 的。如果存在一个整数 a,使得。结果为-1,a 是模 p 的。

2025-11-22 23:10:25 396

原创 指数(阶)与原根

例如,m=7,φ(7)=6,φ(φ(7)) = φ(6) = 2。所以模 7 有两个原根。我们找到了 3,另一个是 5。的原根,那么集合 {g^1, g^2, ..., g^{φ(m)}} 构成了模。并不是所有正整数都有原根。(2)a的逆元和同余数的阶 和 a的阶 相同。(3)阶与最大公约数。有原根,那么它一共有。

2025-11-19 15:06:58 218

原创 求解ϕ(n)的几种方法

欧拉函数是乘性函数:如果 gcd⁡(a,b)=1,则 ϕ(ab)=ϕ(a)ϕ(b)。因此,可以将 n 分解为互素的因子,分别计算 ϕ 值后相乘。对于 n=10,素因子分解为 10=2×5,则 ϕ(10)=10×(1−1/2)×(1−1/5)=10×1/2×4/5=4。:对于 n=10,由于 10=2×5 且 gcd⁡(2,5)=1,则 ϕ(10)=ϕ(2)×ϕ(5)=1×4=4。n能分解成若干个素因子。

2025-11-19 14:00:21 226

原创 群、环、域

设R是一个非空集合,定义了两种运算:加法和乘法。那么(R, +, ·)关于加法 (R, +) 的公理(R, +) 是一个阿贝尔群:关于乘法 (R, ·) 的公理乘法封闭性与结合律:连接加法与乘法的公理分配律:设F是一个非空集合,定义了加法和乘法。那么(F, +, ·)关于加法 (F, +) 的公理(F, +) 是一个阿贝尔群:关于乘法 (F{0}, ·) 的公理(F{0}, ·) 是一个阿贝尔群:连接加法与乘法的公理0 ≠ 1(这排除了只有一个元素的平凡域)

2025-11-17 03:32:26 649

原创 二次同余式和平方剩余

p 是一个奇素数,a是一个整数,且 p∤a(即 a不被 p 整除)。如果存在某个整数 x,使得同余方程有解那么我们就称a 是模 p 的二次剩余。否则,a是模 p 的二次非剩余。设 n是一个正奇数,且其素因数分解为:其中,pi是奇素数。

2025-11-12 15:50:37 843

原创 RSA解密的CRT方法

解释一下最后用CRT求解的式子:m = m2 + h*q (m为明文)

2025-11-11 14:23:47 381

原创 同余、同余式、中国剩余定理、高次同余式

其中 a,b,m 是整数,且 m>0。设 d=gcd⁡(a,m)。即,最大公约数 d必须整除 b。此时,方程恰好有 d个不同解。

2025-11-11 14:19:40 129

原创 IPSec协议

一、传输模式:只保护IP数据包的,不保护原始的IP头。:网络上的路由器能看到原始的源IP和目标IP,并据此进行路由,但看不到里面的TCP/UDP数据。。即通信的双方就是数据的最终发送者和接收者。:比如公司的Web服务器和数据库服务器在同一个数据中心,但需要加密它们之间的数据传输。:某些企业应用要求员工电脑与服务器建立安全的IPsec连接,而不是通过。

2025-11-03 15:55:39 241

原创 Shamir‘s trick && Montgomery约减 && Barrett约减

Shamir's trick 是一种用于同时计算两个幂的乘积 gᵃhᵇ 的快速算法,其中 g 和 h 是群元素,a 和 b 是整数。该算法通过同时处理 a 和 b 的二进制表示来减少计算次数,特别适用于数字签名算法(如 DSA)和椭圆曲线密码学。

2025-10-30 13:58:10 332

原创 Baby Step Giant Step

---------------------------------------------- 自留,这篇当草稿用-------------------------------------------------来求解离散对数问题。是“巨步”部分的索引,范围大约是。是“婴儿步”部分的索引,范围是。是一个预设的步长(通常取。找到im和j,就把a解出来了。算法的原理是通过找到。

2025-10-21 22:49:58 93

原创 模重复平方计算法

• a = a · b_currentⁿ² mod m = 6 · 4⁰ mod 7 = 6 · 1 mod 7 = 6 (因为 n₂ = 0 不需要乘)迭代:对于 i = 1 到 k - 1,计算 aᵢ = aᵢ₋₁ · bᵢⁿⁱ mod m,并更新 bᵢ₊₁ = bᵢ² mod m。公式:bⁿ = bⁿ⁰ · (b²)ⁿ¹ · ⋯ · (b²ᵏ⁻²)ⁿᵏ⁻² · (b²ᵏ⁻¹)ⁿᵏ⁻¹ mod m。初始化:a₀ = bⁿ⁰ mod m,b₁ = b² mod m。设 a = 1 (初始结果)

2025-10-21 22:21:02 415

原创 FTT和NTT

最近又学到NTT了,索性就把以前的笔记重新整理一遍,希望能帮助大家。

2025-10-21 21:51:23 873

原创 Vigenere密码分析

互重合指数不关心具体的文本内容,只关心。

2025-10-21 14:53:23 547

原创 密码攻击技术

时间空间折中技术(简称TMTO,Time-Memory Trade-Off)是一种密码破解思路,主要用于攻击加密系统,比如找回密钥或破解哈希值。它不是一种“暴力破解”的笨办法,而是聪明地平衡“计算时间”和“存储空间”,让攻击更高效。发明人是Martin Hellman,在1970年代提出,常用于对称加密(如DES)或密码哈希(如Rainbow Table的变种)。

2025-10-17 15:58:11 510

原创 贝叶斯概念

假如你们班有 100 人,此时你还全都不认识,从中随便挑选一个人,你来判断下,

2025-10-16 13:35:36 334

原创 图解网络(第二集)

就往右移动,直到碰到了窗口的上边界,此时 A 就无法继续发包,达到了流量控制。但是当 A 不断发包的同时,A 也会收到来自 B 的确认包,此时。

2025-10-14 23:16:42 672

原创 图解网络(科普版)

你是一台电脑A希望与另一台电脑 B 建立通信,于是各开了一个网口,用一根连接了起来有一天,一个新伙伴 C 加入了,但聪明的你们很快发现,可以每个人开,用一共,彼此相连随着越来越多的人加入,你发现身上开的网口实在太多了,而且网线密密麻麻,混乱不堪于是你们发明了一个中间设备,你们将网线都插到这个设备上,由这个设备做转发,就可以彼此之间通信了,本质上和原来一样,只不过网口的数量和网线的数量减少了,不再那么混乱。你给它取名叫,它仅仅是无脑将电信号,不做任何处理,你觉得它是没有智商的,因此把人家定性在了。

2025-10-14 22:28:09 958

原创 java基础部分知识点

静态方法:直接通过类名调用,无需创建对象,不能直接访问类的非静态成员(变量或方法),因为它们依赖于实例。静态变量:属于类,与类一起加载一次,在内存中只有一份,可以被类和类的所有对象共享。类中的成员变量全部私有,只负责数据存取,而对数据的处理交给其他类的对象来完成。用来限制类中的成员(成员变量、成员方法、构造器)能够被访问的范围。子类能继承父类的非私有成员(成员变量、成员方法),同时遵循。类必须实现接口中所有的抽象方法(除非类是抽象的)。一个类继承抽象类,必须重写完抽象类的全部抽象方法。关键字让类实现接口。

2025-04-22 14:35:59 427

原创 正则表达式

功能正则示例说明匹配数字\d+匹配连续数字匹配单词\b\w+\b匹配整个单词(边界控制)邮箱验证基础邮箱格式替换空格\s+→将多个空格替换为一个提取引号内容"([^"]*)"捕获双引号内的文本匹配中文匹配单个中文字符。

2025-04-10 19:56:02 934

原创 java内部类

类型定义位置访问外部类成员实例化方式典型用途成员内部类外部类内部(非静态)所有成员紧密关联的逻辑静态内部类外部类内部(静态)仅静态成员工具类、辅助功能局部内部类方法/代码块内部所有成员在代码块内直接实例化临时逻辑封装匿名内部类直接实例化接口或抽象类所有成员单次使用的回调或监听器。

2025-04-10 18:09:27 391

原创 java代码块

静态代码块(仅第一次创建对象时执行)。实例代码块(每次创建对象都执行)。构造函数(每次创建对象都执行)。static {System.out.println("1. 静态代码块");System.out.println("2. 实例代码块");System.out.println("3. 构造函数");1. 静态代码块2. 实例代码块3. 构造函数2. 实例代码块3. 构造函数代码块类型语法执行时机典型用途静态代码块static {}类加载时(一次)初始化静态资源。

2025-04-10 16:41:06 552

原创 汇编代码伪指令

汇编代码中的伪指令更相当于C语言中数据的定义和初始化,而代码开始执行循环,分支和顺序语句才是真正的指令。在上面这个程序中,一直到assume都是伪指令。

2023-12-31 18:01:11 461

原创 位,字,字节

字: 我(CPU)一次能吃下(能处理)一勺或几勺花生米(一个字节或几个字节)字长: 我(计算机)一次吃下(处理的)这几勺里一共有多少粒(多少位数)花生米。位b:一粒花生米,每一粒=一个二进制位 0/1。一个字节B:拥有8粒花生米的一勺花生米。

2023-04-16 17:45:34 169

原创 传统密码和量子密码

用途:加密对称加密算法中的密钥。对大数据量的内容主体使用对称加密,,并且每次都更换随机密钥。这样上一次的密钥即使泄露,也不会影响以后的通信。然后把对称加密的密钥 进行非对称加密,这样把密钥的密文连同数据的密文一起发送给对方。对方先用私钥解出对称加密的密钥的明文,再用这个明文密钥解密出具体的数据内容。缺点:速度太慢,由于基于大素数分解,进行的都是大数运算,对于同样安全级别的对称密码算法要慢上成百上千倍。特点:算法,加密密钥公开,这个公开的密钥称为公钥;加密密钥和解密密钥相同,可以同时用于加密和解密。

2023-03-11 14:00:58 1683

原创 概率等于1一定是必然事件吗?/概率为0的事件未必是不可能事件?

有关于概率的小问题

2023-03-05 20:56:06 4411

原创 Openssl的安装和简单使用

openssl安装

2023-03-04 20:29:25 2849

原创 求最短路径问题

每日一题

2022-11-13 17:10:43 274

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除