2021津门杯justOCB
Problem
昨天打了 2021 津门杯, 有道 justOCB,考察的是 OCB,之前没接触过。在此之前的 2021 红明谷杯也有类似的题 babyFogery,只不过这次的更难。
打得时候搜到了dawn_whisper 师傅关于 babyFogery 的 wp。发现 babyFogery 没 ...
线性同余生成器
线性同余生成器
线性同余方器(LCG)可以产生伪随机数。
它根据递归公式生成新的数:
si=(si−1a+b) mod ns_i = (s_{i-1} a + b) \bmod n
si=(si−1a+b)modn
其中 aaa、bbb、nnn 是生成器设定的常数,s0s_0s0 相当于一个 ...
反馈移位寄存器
反馈移位寄存器
反馈移位寄存器(FSR)是流密码产生密钥流的一个重要组成部分。在 GF(2) 上的一个 n 级 FSR 通常由 n 个二元存储器和一个反馈函数组成。
线性反馈移位寄存器
如果这里的反馈函数是线性的,我们则将称为线性反馈移位寄存器(LFSR),反馈函数是寄存器中某些位的异或,这些 ...
Shamir密钥分享算法
简介
Shamir 密钥分享算法最早是由 Shamir 和 Blackly 在 1970 年基于 Lagrange 插值和矢量方法提出的。
算法有 2 个重要参数:kkk 和 nnn。nnn 表示将明文加密为 nnn 个 ShadowShadowShadow,kkk 表示 至少需要 kkk 个 S ...
RSA Coppersmith相关攻击
Coppersmith 相关攻击与 Don Coppersmith 紧密相关,他提出了一种针对于模多项式(单变量,二元变量,甚至多元变量)找所有小整数根的多项式时间的方法。我们的目标是找到在模 N 意义下多项式所有的根,这一问题被认为是复杂的。Coppersmith method 主要是通过 Len ...
PHP中的随机数
php中常用的随机数产生函数是 rand() 和 mt_rand()。但是生成的是伪随机数,不能应用于生成安全令牌、核心加解密 key 等。否则会产生一些安全问题。
何时自动播种
都知道,同一个种子产生的随机序列完全相同,因此种子在随机数中起着至关重要的地位。
自 PHP 4.2.0 起,不再需 ...
CBC字节翻转攻击
CBC
密码分组链接(Cipher Block Chaining,CBC),是分组密码的工作模式之一。加解密原理如下图:
每个分组长度为 16 字节或 32 字节。CBC的填充规则是缺少 N 位,就用 N 个 \xN 填充,如缺少 11 位则用 11 个 \x0b 填充。
其中 IVIVIV 为 ...
CSRF小结
CSRF
跨站请求伪造(Cross-Site Request Forgery,CSRF),攻击者通过伪装来自某个网站受信任用户,对该网站发送恶意请求。
XSS 与 CSRF 的区别:
XSS:
攻击者发现XSS漏洞 —> 构造代码 —> 发送给受害人 —> 受害人打开 —> ...
浅谈CSP内容安全策略
CSP
内容安全策略(Content Security Policy,CSP),是一个附加的安全层,有助于检测并缓解某些类型的攻击,包括跨站脚本(XSS)和数据注入攻击。
CSP 的实质就是白名单制度,开发者明确告诉客户端,哪些外部资源可以加载和执行,等同于提供白名单。它的实现和执行全部由浏览器完 ...
浅谈SOP同源策略
web 安全的基石就是同源政策。
何为同源
几个页面的协议、主机名、端口相同,那么就认为这些页面是同源的。
如与 http://book.nonuplebroken.com:80/index.php 比较:
URL
是否同源
备注
http://book.nonuplebroken. ...