
crypto
badm0nkey
https://badmonkey.site
展开
-
线性反馈移位寄存器-LFSR
LFSR最开始了解到LFSR的时候是在学习MT19937伪随机数生成器的时候,当时也是初步了解。也没有用代码实现过,最近做了几道相关的题,在这里记录一下。原理证明过程不太会,简单说一下大致的原理。LFSR是用于生成随机数序列的,每一个LFSR都是有级数的,级数决定了潜在的循环周期(即随机数序列的周期)。对于每个LFSR还需要有一个线性函数,用于生成随机数。比如四级LFSR参数...原创 2020-03-30 15:09:20 · 4000 阅读 · 0 评论 -
ECDSA_SVP_Attack
ECDSA_SVP_Attack很有意思的一个点,之前做cryptoals的时候又遇到类似的点,但是只是简单了解了一下,没想到真的会有这样的漏洞,而且还是在2019年发现的,只能说太牛x了.利用点,ECDSA中随机数k的选择不同,导致k的大小有差异,从而导致了在计算 sig中的 r 所用的时间也会不同,利用时间来判断k的位数,进而利用lattice进行分析和攻击.符号具体含义参考ECDSA实现...原创 2020-03-30 15:08:28 · 829 阅读 · 1 评论 -
pairing function
一道pairing function的题,很像离散里面证明可数性的样子pairing_function,还有一篇大佬文章讲的很详细superior-pairing-function.这些函数不是用来加密的但是也挺好玩的,正好借一道CTF题了解一下.Susec-2020-gantun#!/usr/bin/pythonfrom Crypto.Util.number import *from ...原创 2020-03-30 15:07:16 · 433 阅读 · 0 评论 -
AES-GCM
AES-GCMAES-GCM是基于AES-CTR模式改编的,不同于CTR的是GCM在对明文进行加密的时候还会产生tag(类似签名的东西),可以有效的抵御选择明文攻击,因为GCM首先会看tag是否合法,然后才决定是否调用decrypt oracle 进行解密。加密的流程在这篇paper讲的很清楚,我把其中的一部分拿了出来(只有两个明文块的情况)具体的符号定义如下:其中:H=Enck(01...原创 2020-03-30 15:05:14 · 3429 阅读 · 0 评论