
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
大整数分解因子算法——Dixon的随机平方算法许多分解因子算法的理论依据是这样的事实:假设我们可以找到x≢±y(modn)x\not\equiv \pm y\pmod{n}x≡±y(modn),但是有x2≡y2(modn)x^{2}\equiv y^{2}\pmod{n}x2≡y2(modn)。那么有n∣(x−y)(x+y)n|(x-y)(x+y)n∣(x−y)(x+y)但是n∤(x+y)n
json.loads()加载的结果是字符串str类型今天爬虫时,发现从.json文件中用json.loads(file.read())返回的结果是str类型,并不是dict处理方法:再用一遍json.loads(),json_array = json.loads(json.loads(file.read())),这个结果是dict,可以调用字典的相关方法了。...
分解因子算法——Pollard ρ\rhoρ 算法攻击RSA密码体制最明显的方法就是分解大整数。关于大整数分解的算法有许多,常见的有试除法、p±1p\pm1p±1算法、Pollard ρ\rhoρ算法、数域筛法、二次筛法等等。这篇分享的就是其中之一的Pollard ρ\rhoρ算法。我们说因子分解,很多时候并不一定要把大整数nnn彻底分解成素数乘积,而是求出nnn的某个非平凡因子即可。求大整数的一
因子分解算法——Pollard 的p−1p-1p−1方法1 算法核心为了分解合数nnn。设数nnn的一个因子是ppp,那么并且p−1p-1p−1的每个因子qqq满足q≤Bq\le Bq≤B(B是自己选的一个数,称为界),此时必有(p−1)∣B!(p-1)|B!(p−1)∣B!证:设p−1=q1q2⋯qmp-1=q_{1}q_{2}\cdots q_{m}p−1=q1q2⋯qm,并且q1、q2
关于NP与co-NP、RP与coRP的理解在相信大多数人在接触计算复杂性领域时,都会被P、NP、NPC、NP-Hard、co-NP、RP……的等一系列困难问题的各种分类搞蒙。关于基本的定义,例如什么是P类问题什么是NP类或者NPC类问题,网上有很多很好的回答,我就不介绍了。这篇主要讲什么是co-NP以及如何理解它。定义语言LLL属于coNPcoNPcoNP当且仅当LLL的补集L‾∈NP\overl
线性密码分析(简单笔记)关于差分密码分析的可以看差分密码分析读书报告。欢迎大家讨论留言。1、发现在1993年的欧洲密码年会上,日本学者Matsui提出了对DES算法的一种新的攻击方法,即线性密码分析.同年的国际密码年会上,Matsui发现了DES算法中2条新的线性逼近关系,他利用这两条新的逼近关系对DES算法进行攻击,并引入了纠错码中的阵列译码思想来优化攻击过程.在动用12台工作站,花费50天左右
Montgomery Algorithm(蒙哥马利算法)蒙哥马利算法分为3种,蒙哥马利模乘,蒙哥马利约简,蒙哥马利模幂1、从蒙哥马利模乘说起模乘是为了计算ab(modN)ab\pmod{N}ab(modN)。普通算法中,在计算模N时,利用的是带余除法,除法运算需要太多次乘法,计算复杂度较高,蒙哥马利算法的思想就是利用进制表示简化除法运算,转化成位运算。蒙哥马利形式:为了计算ab(modN)ab\p
关于AES的列混合计算和解密流程问题我们知道AES的加解密过程都可以用有限域中的计算表示出来。关于AES的加解密过程,很多教材资料都有详细描述,这里我想强调①关于AES加密过程中的MixColumn阶段是如何计算的;②AES的解密流程问题。AES的列混合计算我们经常会看到参考资料说AES的列混合过程是对状态矩阵的每一列左乘一个确定的矩阵(如下图),一般表示为然后我们乘了之后会发现结果并不对。事实上
AES加解密算法全过程实现(C++)利用C++编程实现了AES的加解密过程。关于列混合计算不清楚的可以看上一篇博客。主要针对128bit的明文和密钥给出实现,其他情况需要改一下Nk,Nb,Nr的值和某些地方的数组维度。byte GFMultiplyByte(byte L, byte R)这个函数是计算多项式模乘的结果(列混淆中的那一步)。其他想自己动手编编的可以复制一下这里的S盒和逆S盒或者其他常
一个简单的百度爬虫实例最近在百度aistdio自学课程,看到一个基础课程的作业是爬取百度上《青春有你》选手信息,索性就跟着爬了一下,复习一下自己去年自学的已经忘得差不多的爬虫。直接上代码,适合刚学习的朋友一起交流,大神请忽略。import requestsfrom bs4 import BeautifulSoupimport jsonimport datetimedef getHTML(url):







