摘要: Curve Learning 希望能够从数学上更深入地了解一些曲线的一些性质吧,之前遇到ECC只会调包属实有点难受了:cry: 这里我们讨论elliptic curve 参考材料 introduce def 我们称满足Weierstrass方程Y2=X3+AX+B的点集为椭圆曲线(elliptic 阅读全文
posted @ 2022-05-02 19:14 hash_hash 阅读(242) 评论(0) 推荐(1) 编辑
摘要: Lattice based cryptosystems LLL algorithm 算法细节 NTRU 之前就有了解过,只不过是在数域上的,理解起来较为简单,这里介绍的是环上的NTRU及其实现 加密前需选择公共参数N,p,q,d满足gcd(N,p,q)=1,q>(6d+1)p 其中N一般在250到2 阅读全文
posted @ 2022-04-08 12:00 hash_hash 阅读(226) 评论(0) 推荐(1) 编辑
摘要: Lucas sequence 高中的时候有接触过这个数列,但似乎并没有仔细研究过性质,刚开始学密码学的时候我有思考过能否用数列作为公钥体制的载体呢?只可惜当时只是想着把明文m放在递推次数上,似乎并没有什么效果,后面居然能在比赛中见到真是件神奇的事情 其实不止是lucas序列所有的二阶递推都可以同样的 阅读全文
posted @ 2022-03-25 18:54 hash_hash 阅读(143) 评论(0) 推荐(1) 编辑
摘要: 之前做题目的时候知道了DES使用的Feistel结构,比较有意思,顺带把DES的原理弄清楚一点 Feistel密码结构 简单来说Feistel结构是顺序地执行两个或多个基本密码系统,使最后结果的密码强度高于每个密码系统的结构 工作流程如下 F为轮函数,K0~Kn作为轮密钥 对于Encryption 阅读全文
posted @ 2022-02-10 11:08 hash_hash 阅读(56) 评论(0) 推荐(0) 编辑
摘要: Streamcipher Learning MT19937 简介 即Mersenne Twister(梅森旋转)算法,得名于梅森素数$2^{19937}-1$ MT19937是一种周期很长的伪随机数生成算法,可以快速产生高质量伪随机数 由三部分组成 1.利用seed初始化624的状态 2.对状态进行 阅读全文
posted @ 2022-02-07 13:11 hash_hash 阅读(112) 评论(0) 推荐(0) 编辑
摘要: Streamcipher Learning LFSR 简介 对于给定的初状态(a1 , ... ,an)和反馈函数f [反馈函数一般为$a_{i+n}=\sum_{j=1}^nc_ja_{i+n-j}$] 有f(ai , ... ,ai+n-1) = (ai+1 , ... ,ai+n) 考虑到f是 阅读全文
posted @ 2022-02-02 20:20 hash_hash 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 嗯,我相信AES(Advanced Encryption Standard)的内部结构一定很美妙,试图理解和实现一下 学长说要用c++实现,离开了python打包好的模块真的好难呀:cry:(慢慢补吧) 总流程如下 Step1:SubBytes 就是实现S盒的功能,我感觉是这几步里原理最复杂的了 A 阅读全文
posted @ 2022-01-29 12:55 hash_hash 阅读(84) 评论(0) 推荐(0) 编辑
摘要: Lattice Learning 这一节利用格的知识解决一下之前遗留的问题 1.coppersmith 我们知道的是coppersmith是通过将求$x_0$满足$f(x_0)≡0$转换为一个具有相同根的小系数多项式F,使得能够满足$F(x_0)=0$ 考虑一个简单情况下的应用: N=17×19=3 阅读全文
posted @ 2022-01-23 16:57 hash_hash 阅读(218) 评论(0) 推荐(0) 编辑
摘要: Lattice Learning 也学了几个月的crypto了,收获不小,但是对于很多的概念并不是很清楚,虽然有关格的内容之前也有遇到过,但是都只停留在会使用别人写好的代码层面上,趁寒假还有时间把这一块内容补补 概念 格是几何空间中按照一定规则排列的无穷点的集合 定义1:设$b_1,b_2,···, 阅读全文
posted @ 2022-01-22 23:57 hash_hash 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 数学实在是太菜了,是时候补补抽代知识了:cry: 群 群简介 群是集合上赋予的某种二元运算的代数结构(具有封闭性) 定义1:集合S和S上满足结合律的二元运算 · 所形成的代数结构叫做半群,这个半群记作(S,·) 在此基础上如果运算又满足交换律,则(S,·)叫做交换半群 定义2:设S是半群,元素e∈S 阅读全文
posted @ 2022-01-18 19:44 hash_hash 阅读(527) 评论(0) 推荐(0) 编辑