要么改变世界,要么适应世界
脚本 效率 教程 C 分享 工具 学习 命令行 HTML基础 CSS基础 JavaScript基础 Vue 动态规划 排序 分治 java 并查集 Shell 字符串 进程通信 单例模式 静态代理 动态代理 模板方法 观察者模式 高精度 阶乘 深度优先 递归 BFS 最大流 C语言课程设计 操作系课设 数据库 MySql Git SpringBoot 缓存 移位运算 与运算 或运算 位操作 快速排序 二分查找 LIS 单调递减栈 归并排序 链表 康托展开 映射 Jsp Cookie 质数 筛选法 凸包 最小生成树 贪心算法 最短路 多线程 KMP DFS 匈牙利算法 KM AC自动机 axios 框架 UI 算法 自动机 C++ 图论 ST表 模拟 总结 OpenCV 图像 Echarts 日历热力图 线性回归 多项式回归 泰勒展开 python NumPy 逻辑回归 MNIST Nuxt 前端 include漏洞 文件上传 SSRF 密码学 CBC fastjson RCE漏洞 pwn 栈溢出 数字签名 Solidity Web3.0 PoW 汇编 docker 容器 性能调优 仿真 信号 任务调度 并发 内存管理 GDB web 代理 红黑树 搜索 Django
该标签下的文章

数字签名背后原理

2022-10-29 23:36:33
340
算法

最近在学习区块链的知识,觉得其中的数字签名挺有意思的,想了解一下背后的大致数学原理。当然了,数字签名有很多种,一般采用非对称密钥密码体制来实现,常见的非对称加密算法有`RSA`和椭圆曲线加密算法,下面记录一下基于这两种算法的数字签名大致原理,注意,本文并不是在强调如何调用高级API,而是打算从数学原理出发。 ...

RSA的常见攻击

2022-08-15 09:56:47
416
算法

上文我们介绍了RSA算法原理,只要我们设置得当,我们有足够多的理由相信我们的RSA系统是安全的,但是粗心的我们,能否禁得住黑客的攻城掠池?下面介绍一些RSA的常见攻击。 ...

公钥密码算法之RSA

2022-08-14 12:45:56
336
算法

1976年,Whitfield Diffie和Martin Hellman发表了[New directions in cryptography]这篇划时代的文章,奠定了公钥密码系统的基础,而在1977年,Ron Rivest、Adi Shamir和Leonard Adleman发明了一种直到今天还被广泛运用的公钥密码算法——RSA。 ...

CBC字节翻转攻击

2022-07-10 17:24:08
296
算法

上文我们初步了解了`CBC`加密原理以及模拟实现,但是根据原理,我们可以控制第一段密文来控制第二段明文的形成,这就是所谓的`CBC`字节翻转攻击。当然实现该攻击是要具备一定条件的,例如我们需要获取到`iv`向量,密文段,以及修改后的第一段错误明文。 举个例子,阿强爱上了阿珍,他将信息 ...

带你了解CBC加密解密

2022-07-09 18:21:17
278
算法

`CBC`加密技术属于分组模式加密指将前一个密文分组与当前明文分组的内容混合起来进行加密,这样就可以避免`ECB`模式的弱点。 > 对给定的随机密钥,每一块明文对应固定的密文块,即相同的明文组蕴含着相同的密文组,类似电码本的码字,这就是ECB模式 `CBC`模式的全称Cipher Block Chaining 模式(密文分组组链接模式),之所以叫这个名字是因为密文分组是像链条一样相互连接在一起。 ...