指数爆炸问题的基本思路
随着密钥位数的增加,需破解试验的次数呈指数级上涨。目前常用的密钥都在128位及以上,如512位的密钥总数为:
2^512 = 13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096
那么指数爆炸问题的基本思路有四种:
1、暴力求解
通过增强计算机性能及增加运算时间等方法,有顺序的穷举所有可能情况。这就变成了密钥规模和计算机性能的比赛。
2、变相求解
将待解问题转换为简单问题来求解,寻找更好的解决算法;比如反证法来排除问题范围。但遗憾的是,这是一项极具难度的工作,而且并非总能找到更优的方法。
3、近似求解
不求完全答案,只求近似解。通过估值或使用模拟器求解的方法,得出的结果虽然在数学层面缺乏严密性,但是对于解决实际问题有指导意义。
4、概率求解
通过随机数的方法,可能在短时间内得到解。虽然有运气成分,但是在实际运用中确实非常重要的方法。
指数爆炸问题的基本思路相关推荐
- 指数爆炸c语言编程,【草稿】贪吃蛇,黑白棋,五子棋,扫雷的思路。大家来看看行不行...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 [新手进阶教程]贪吃蛇,黑白棋,五子棋,扫雷的思路. 以上我只做过贪吃蛇,看过<C语言入门经典>的黑白棋(具体玩法上网搜搜)的代码,不过,个人 ...
- 指数爆炸 体验幂的可怕
题目描述 本题是一个很简单的题目,目的是让同学们体验一下指数爆炸的威力.有了这个体验以后,相信大家在写算法时会更加重视时间复杂度这个因素的. 问题如下: 假设现在有一张厚度为1mm的纸,纸质非常柔软, ...
- 程序员的数学课16 二分法:如何利用指数爆炸优化程序?
正式讲课之前,我先问你这样一个问题,请你尽可能快速回答. 一张 1 毫米厚度的纸,对折几次后,可以达到地球到月球的距离(39 万公里)? 我在写这篇稿子的时候,问了身边的几个朋友.最小的回答是 1 万 ...
- 测试中的指数爆炸问题
有这样一个故事,就是介绍指数问题的:一位数学家发明了国际象棋,国王十分感谢这位数学家,于是就请他自己说出想要得到什么奖赏.这位数学家想了一分钟后就提出请求--把1粒米放在棋盘的第1格里,2粒米放在第2 ...
- c语言指数爆炸月球,指数爆炸带来的震撼
1. 有个乞丐与皇帝下中国象棋,有个条件,如果他输了,愿意把脑袋拿掉,但是如果乞丐赢了的话,只要求皇上给一些米. 皇上说,''想要多少米?'' 不知您是否愿意?你这个棋盘,就这么多方格,第1个里面放1 ...
- c语言指数爆炸月球,指数爆炸:一张纸对折103次后,将填满整个宇宙?
一张纸能填满整个宇宙吗? 常见的A4纸厚度是0.104毫米,可观测宇宙的直径是930亿光年,虽然其外还有空间,但受限于每秒30万公里的光速,天文学家暂时只能看这么多. 在关于对折纸张的纪录里,美国人创 ...
- 《程序员的数学:7指数爆炸》
本文属于<程序员的数学>读书笔记系列.本文内容相对比较容易. 什么是指数爆炸? 通过思考一张1mm的纸(假设可以无限次折叠),每次折叠厚度翻一倍,折多少次能够有地月距离39万KM那么厚,作 ...
- c语言指数爆炸月球,第一节:一枚硬币的两面:指数爆炸与索引之快
1.折纸游戏 此为开篇之作,让我们来领略一下指数爆炸.请看下面的思考题: 假设现在有一张厚度为1mm的纸,纸质非常柔软,可以对折无数次.每对折1次,厚度便翻一番.已知地球距月球约39万公里,请问对折多 ...
- 程序员的数学 学习(指数爆炸)
通过思考一张1mm的纸(假设可以无限次折叠),每次折叠厚度翻一倍,折多少次能够有地月距离39万KM那么厚,作者引出指数的概念. 凭直觉也得千儿八百次,答案是39次,的确很震撼. 把这种数字急剧增长的情 ...
最新文章
- 题目1024:畅通工程
- u盘插在linux电脑上没有反应,U盘插在自己电脑上没有反应,别人电脑有反应的解决方法...
- 深度学习之数据增强方案和TensorFlow操作
- python字符串命名_python-字符串及其常用方法
- pycharm与python连接_pycharm2017实现python3.6与mysql的连接
- c++ windows 光标操作_电脑操作常用快捷键
- linux查看zip文件内容、统计内容大小
- 高等数学(同济第七版上)课后习题及解答
- spring整合redis菜鸟版
- 电脑配置PC2022年版(4000元左右)详细配置表——(专业数据)
- 在html5水平边距属性hspace,HTML5 常用语法一览(列举不支持的属性)
- golang 实现微信聊天机器人
- MATLAB之黄金分割法求极值
- python 导入自己写的包
- Java for循环和foreach循环区别
- ISO26262道路车辆功能安全标准-(1)适用范围
- 小红书笔记下沉怎么做到的?
- [灵敏度]底噪的计算
- 分布式系统全链路压测方法
- Web前端大作业制作个人网页(html+css+javascript)