- 博客(15)
- 收藏
- 关注
原创 维纳攻击 Wiener Attack
如果要求p,q,由于已知N=pq,φ(N)=(p−1)(q−1)=pq−(p+q)+1,练习韦达定理,可以构造一元二次方程x2−(p+q)x+pq=x**2−(N−φ(N)+1)x+N=0,解出两根即为p,q。若d<1/3N**(1/4)时,给定公钥且ed≡1 mod λ(N),λ(N)=lcm(p−1,q−1)=(p−1)(q−1)/G=φ(N)/G,其中G=gcd(p−1,q−1)设λ(N)=lcm(p−1,q−1)=(p−1)(q−1)G=φ(N)G,其中G=gcd(p−1,q−1)
2025-02-24 19:40:49
313
原创 光栅与光栅尺简介
5.1安装光栅尺:①选择合适位置:根据测量对象和设备的结构,选择一个合适的位置安装光栅尺②固定光栅尺:使用合适的安装夹具或螺丝将光栅尺牢固地固定在选定的位置上③安装读数头:将读数头安装在与光栅尺相对应的位置上,使读数头能够准确读取光栅尺上的光栅信号。不同波长的光由于满足干涉加强的条件不同,所以会以不同角度射出,将复色光分解为单色光。4.3.2角度测量:利用光栅的衍射原理,可制作角度传感器来测量物体的旋转角度,当光栅绕某一轴旋转时,衍射光的角度会发生相应变化,通过检测这种变化,就可以计算出物体的旋转角度。
2025-01-25 09:42:47
928
原创 Python基本数据类型
是一种无序,可变的数据类型,用于储存唯一的元素,元素不会重复,并可以进行交集,并集,差集等常见集合操作,用{ }表示,用“,”隔开,也可以用set( )函数创建集合。写在方括号[]间,用逗号分隔开,可以被索引或截取,返回一个所需元素的新列表,可以+,合并为一个新列表,列表中元素可以改变。是无序的对象集合,字典中的元素是通过键来存取的,而不是通过偏移存取,字典是一种映射类型,字典用{ }标识,是一个。在python中,变量就是变量,它没有类型,我们常说”类型“是变量所指的内存中的对象的类型。
2024-12-06 15:44:02
935
原创 python基础语法概论
像if,while,def,class这样的复合语句,首行以关键字开始,以冒号结束(:)结束,该行之后的一行或多行代码构成代码组。3.10 字符串切片str[start:end] , start(包含)是切片开始的索引,end(不包含)...结束。3.5 按字面意义级联字符串,如”this“"is""string"会自动转为this is string。3.9 没有单独的字符类型,一个字符就是长度为一的字符串。在[],{},()中的多行语句,不需要使用\。2.3 float ,如1.23,3E-2。
2024-12-06 15:37:21
446
原创 DES加密过程详解
新E盒与密钥异或后有一个48比特输出,48位均等分成八组(8组×6比特),把一组6比特数据拎出来,两头拎出来,放一块得到一个十六进制的数,是第几行数,再把中间的四个数拎出来,换成16进制的,然后画出一张表格,该表行数恒为4行(因为有四种情况,分别为00,01,10,11)16列(0——f),共48个格子,相当于给15个数排序4次,一共8组数据,则有8张表(本来就给好的),取得第几组数据就看哪张表。逆置换是初始置换的逆运算,从初始置换规则中可以看到,原始数据的第1位置换到了第40位,第2位置换到了第8位。
2024-12-06 15:28:46
696
原创 DES密码算法
DES是以64比特的明文(比特序列)为一个单位进行加密的,这个64比特的单位称为分组。DES密码每次只能进行64比特数据的加密,因此,如果加密的明文超出了64比特,则需要对DES加密进行迭代(反复),而迭代的具体方式称为【模式】。但是,这样一来,右侧根本没有被加密,因此我们需要用不同的子密钥对一轮的处理进行若干次,并在每两轮处理之间调换左右,最后一轮结束不用调换。DES是一种一次处理要16轮循环的Feistel网络,就是这64比特的数据,要进行16轮的加密,才能得出最终的密文。
2024-11-16 08:39:07
210
原创 RC4加密解密
i也从角标为零的数字开始,算出j值后swap新表中的s[i]和s[j],然后把刚才的s[i]和s[j]拿出来,进行第二个式子的计算,然后计算出s[ s[i]+s[j] ],然后把这个s[ s[i]+s[j] ]与明文第一个字节的ASCII值进行异或,求出新的ASCII值。在此中, j的初始值为0,Ti为明文加密后的ASCII码值,Si为[0-255]的数字,被储存在S表(盒)中,新的j应为j=(j+T表中的值+S表中的值) mod 256.然后找到j在S表中对应的数字,与S表中的数字0进行替换,即可。
2024-11-15 21:20:04
2167
原创 一次性密码本(维纳密码)
原因:我们用暴力破解的确可以最后解出密文的明文midnight,但我们无法判断其是否为正确的明文,因为在用其他密钥破解时,也会出现其他的英文单词,所以本质上它的不会破译是无法判断出真正的密钥和明文。附录:密钥的生成是一种真正意义上的随机数,其还孕育出了一种“流密码”,流密码使用的并不是真正的随机比特序列,而是伪随机数生成器产生的比特序列,流密码虽然是无法破译的,但只要使用高性能的伪随机数生成器,就能构建出强度较高的密码系统。原因1:密钥的配送,如果能将密钥安全的送出,就也可以安全的送出明文,没必要加密。
2024-11-11 22:17:51
480
1
原创 《图解密码技术》——对称密码中的XOR算法
将明文转换为密文(比特序列)后,将密文打乱(比特序列),但打乱的密文需要让接收者正确解密(即不能随意打乱,需要让接收者能够还原)。对于密码技术来说,非常重要的一点为“是否可以预测”,所以在进行XOR运算中,我们需要产生不可预测的比特序列,即为随机数。同时我们可以注意到,相比于加法运算,XOR算法不需要进位,如上图中的1+1=0,但左一位没有多一位,这正印证了上文中的。类比奥赛罗棋,设一个棋子翻转一次为1,两次相当于0(即为原状,相当于不翻转),则可进一步得出规律为。不翻转⊕不翻转=不翻转;
2024-11-11 21:03:48
216
原创 古典密码做题笔记
依据图中的线索,我们不难看出,此题为一道base64编码的题,且为音符加密,则我们需要找到一个解出音符密码的解密网站,解出后结果为SFlOVUNURnsxX1JlQGwxeV9saWtlX2dpcmxzX2JhbmRfY3J5IX0=首先,我们需要根据元素周期表找出对应的元素序号,然后观察格式,可以看出此为ASCII码编码,然后根据ASCII码表中数字对找到对应的字母即可解出答案,即为HYNUCTF{D0_YOU_KWON_CHEMISTRY。(上侧为密文区,左侧为密钥区,比对解出即可)
2024-11-09 08:39:10
183
原创 古典密码学习笔记之摩斯密码
在古典密码中,有一种常见的加密方式叫做摩斯密码(又叫做摩尔斯密码,morse code),是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。其中,点用滴表示,划用哒表示。(3)敲击时,用手指敲击也可以打出摩尔斯编码,间隔短的敲击代表“滴”,间隔长的代表“嗒”,也可以用手掌敲击代表:“嗒”。间隔时间:滴=1t,嗒=3t,滴嗒间=1t,字符间=3t,单词间=7t(t为一个基本单位)例如,在摩斯码中最常见的SOS中,我们可以依据摩斯电码,发出其密码为.../---/...
2024-11-09 08:24:29
3451
原创 《图解密码技术》——两种破解密码的方式
凯撒密码是通过字母表平移的方式进行加密,因此,就会存在有26个字母对其它字母一一对应的关系,组成一套新密码表的情况,即我们经常所说的简单替换密码。因此,对简单替换密码的破译就需要频率分析的方式进行破译。但若在解题人不知道偏移量而无法进行解密的情况下的情况下,则可以采用暴力破解的方式进行解密,将二十六种密钥(0-25)全部尝试一次,找出明文即可。接下来,我们随机找一篇英语文章,找到其文章中的所使用的字母频率,然后找到频率最高的字母,对密文中的字母进行替换,然后进行猜测并交换即可。
2024-11-05 22:09:58
285
原创 base系列密码
base密码是一种常见的加密形式,主要存在以下几种。base64编码是一种将二进制数据转化为文本编码的方法,通常用于文本中传输二进制数据,如在电子邮件或URL(其实不太合适,因为URL编码器会把标准Base64中的和字符变为形如%XX的形式,而这些号在存入数据库时还需要再进行转换,因为中已将号用作通配符)中传递数据,较为好用。base64包含大写字母(A-Z),小写字母(a-z),数字(0-9),以及+ /,即一些基本ASCII字符(通常是UTF-8编码,兼容ASCII编码)。
2024-11-04 17:49:04
1725
原创 密码学笔记——浅谈栅栏密码
栅栏密码,属于古典密码的的一种,是将一组被加密的明文划为n组,然后取每个组的第一个字符,根据情况排列成一段话,字母不多,相对简单。可以先进行去掉空格的操作,得到:welcometoctf。然后按竖列取出字母,得到:woo emc let ctf。首先摆明上处加密明文:woo emc let ctf。按竖列顺序取字母,得到:welcome to ctf。例如,存在一串明文:welcome to ctf。依据上面的加密原理,我们可以进行一些基本的加密。第三组:o c t f。第二组:o m e t。
2024-10-31 18:25:37
448
原创 凯撒密码的相关内容
特殊的,当偏移量为13时,凯撒密码特殊的称为回转密码(ROT13),明文加密得到密文,二次加密后就又回到明文(原理:字母表为26位)。所以题目中的字眼一般会有“十三踢”,“回转”,“回旋”等。1.定义解密函数decryption(str,k),str为字符串,k为解密密钥,使用for循环计算每个字母解密后的ASCII码值。凯撒密码是一种古典密码,是一种移位密码,为单密码表性质,密文和明文都使用同一个映射,且这些映射都是一一对应的。例如,偏移量为三时,A替换为D,B替换为E,C替换为F,以此类推。
2024-10-30 19:42:33
496
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人