怎样实现对私钥(公钥)进行解密?
要实现安全登录,可以采用下面三种方法,一种基于非对称加密算法,一种基于对称加密算法,最后一种基于散列算法。下面我们来分别讨论这三种方法。
非对称加密算法中,目前最常用的是 RSA 算法和 ECC(椭圆曲线加密)算法。要采用非对称加密算法实现安全登录的话,首先需要在客户端向服务器端请求登录页面时,服务器生成公钥和私钥,然后将公钥随登录页面一起传递给客户端浏览器,当用户输入完用户名密码点击登录时,登录页面中的 JavaScript 调用非对称加密算法对用户名和密码用用公钥进行加密。然后再提交到服务器端,服务器端利用私钥进行解密,再跟数据库中的用户名密码进行比较,如果一致,则登录成功,否则登录失败。
看上去很简单,但是这里有这样几个问题。目前 RSA 算法中,1024-2048 位的密钥被认为是安全的。如果密钥长度小于这个长度,则认为可以被破解。但这样的长度超过了程序设计语言本身所允许的数字运算范围,需要通过模拟来实现大数运算。而在 Web 系统的客户端,如果通过 JavaScript 来模拟大数运行的话,效率将会是很低的,因此要在客户端采用这样的密钥来加密数据的话,许多浏览器会发出执行时间过长,停止运行的警告。然而,解密或者密钥生成的时间相对于加密来说要更长。虽然解密和密钥生成是在服务器端执行的,但是如果服务器端是 PHP、ASP 这样的脚本语言的话,它们也将很难胜任这样的工作。ECC 算法的密钥长度要求比 RSA 算法要低一些,ECC 算法中 160 位的密钥长度被认为与 RSA 算法中 1024 位的密钥长度的安全性是等价的。虽然仍然要涉及的模拟大数运算,但 ECC 算法的密钥长度的运算量还算是可以接受的,但是 ECC 算法比 RSA 算法要复杂的多,因此实现起来也很困难。
对称加密算法比非对称加密算法要快得多,但是对称加密算法需要数据发送方和接受方共用一个密钥,密钥是不能通过不安全的网络直接传递的,否则密钥和加密以后的数据如果同时监听到的话,入侵者就可以直接利用监听到的密钥来对加密后的信息进行解密了。
那是不是就不能通过对称加密算法实现安全登录呢?其实只要通过密钥交换算法就可以实现安全登录了,常用的密钥交换算法是 Diffie-Hellman 密钥交换算法。我们可以这样来实现密钥的安全传递,首先在客户端向服务器端请求登录页面时,服务器端生成一个大素数 p,它的本原根 g,另外生成一个随机数 Xa,然后计算出 Ya = gXa mod p,将 p、g、Ya 连同登录页面一起发送给客户端,然后客户端也生成一个随机数 Xb,计算 Yb = gXb mod p,然后再计算 K = YaXb mod p,现在 K 就是密钥,接下来就可以用 K 作密钥,用对称加密算法对用户输入进行加密了,然后将加密后的信息连同计算出来的 Yb 一同发送给服务器端,服务器端计算 K = YbXa mod p,这样就可以得到跟客户端相同的密钥 K 了,最后用客户端加密算法的相应解密算法,就可以在服务器端将加密信息进行解密了,信息解密以后进行比较,一致则登录成功,否则登录失败。需要注意的时候,这里服务器端生成的随机数 Xa 和 客户端生成的随机数 Xb 都不传递给对方。传递的数据只有 p、g、Ya、Yb 和加密后的数据。
但是如果我们不采用加密算法而采用散列算法对登录密码进行处理的话,可以避免被直接解密出原文,但是如果直接采用 MD5 或者 SHA1 来对登录密码进行处理后提交的话,一旦入侵者监听到散列后的密码,则不需要解密出原文,直接将监听到的数据提交给服务器,就可以实现入侵的目的了。而且,目前 MD5 算法已被破解,SHA1 算法则被证明从理论上可破解,就算采用离线碰撞,也可以找出与原密码等价的密码来。所以直接采用 MD5 或者 SHA1 来对密码进行散列处理也是不可行的。
但是如果在散列算法中加入了密钥,情况就不一样了。hmac 算法正好作了这样的事情,下面我们来看看如何用 hmac 算法实现安全登录。首先在客户端向服务器端请求登录页面时,服务器端生成一个随机字符串,连同登录页面一同发送给客户端浏览器,当用户输入完用户名密码后,将密码采用 MD5 或者 SHA1 来生成散列值作为密钥,服务器端发送来的随机字符串作为消息数据,进行 hmac 运算。然后将结果提交给服务器。之所以要对用户输入的密码进行散列后再作为密钥,而不是直接作为密钥,是为了保证密钥足够长,而又不会太长。服务器端接受到客户端提交的数据后,将保存在服务器端的随机字符串和用户密码进行相同的运算,然后进行比较,如果结果一致,则认为登录成功,否则登录失败。当然如果不用 hmac 算法,直接将密码和服务器端生成的随机数合并以后再做 MD5 或者 SHA1,应该也是可以的。
这里客户端每次请求时服务器端发送的随机字符串都是不同的,因此即使入侵者监听到了这个随机字符串和加密后的提交的数据,它也无法再次提交相同的数据通过验证。而且通过监听到的数据也无法计算出密钥,所以也就无法伪造登录信息了。
对称和非对称加密算法不仅适用于登录验证,还适合用于最初的密码设置和以后密码修改的过程中,而散列算法仅适用于登录验证。但是散列算法要比对称和非对称加密算法效率高。
怎么破解安全密钥
BT,beini,都是非常流行的无线密钥破解工具。
但这些破解工具和方法,都只对WEP加密比较有效,如果是WPA/WPA2的加密,破解出来的机率比较小。
近段时间,出了一个新技术,即通过WPS破解WPA/WPA2的加密,但前提是AP必须采用WPS加密,所以也是有局限性的。
如何破解无线网络的密钥?
二:开始破解(请拿自己的AP开刀)
1.把我们附送的破解光盘放进光驱,重新启动电脑,选择第一项 BT3 Graphics mode(KDE);如果不选择会倒数 10 秒自动进入。
(.备注:1.请确定您的电脑是光驱启动,一般电脑默认的都是光驱启动;如果不是,请先设置为光驱启动。2. 部分ATI的显卡进入BT3(linux)系统可能会报错,这不属于光盘问题,请在网上下载ATI显卡的补丁,或者在网上下载虚拟主机(VM),就可以直接在XP中破解,VISTA系统下,也会进入不了BT3系统,请在XP下尝试破解。)
2.进入BT3系统,再点击左下角第二个图标(黑色)开启一个命令窗口,输入:spoonwep 回车后 10 秒左右弹出spoonwep2程序:
如下图,按照下面的选项选择:
NET CARD 网卡接口 选择WLAN0
DRIVER 驱动 选择NORMAL
MODE 模式 选择UNKNOWN VICTIM
点击右上角LAUNCH 按钮(点完后会变成ABORT),20秒左右程序会扫描到周围无线信息。
ESSID 路由广播名称;
MAC 路由的 地址;
CHAN 使用的频道;
POW 信号强度;
DATA 数据包;
CLIS 空白代表无客户端,打钩则代表有客户端;
(备注:无线网卡搜索一阵后,被搜索到的无线信号的SSID将会以列表显示。如果某加密无线信号的CLIS方框内有“勾”,表示该无线信号此刻拖有客户端,这时破~解会高效、快速一些。如果你选中了这样的无线信号,紧接着窗口的下方会显示出客户端列表,你应该把下方的客户端也选中1项参与破解。不要迷信一定要带客户端才能破~解,没有客户端的AP也可以破解,理论上pow值大于18的都可以破解的)
有客户端模式比无客户端成功率要高,选中打算破解的路由,下面会显示当前所有连接到这个路由的客户端,选择一个POWER PACKETS都比较高的客户端(如上图)。
然后点SELECTION OK 转到ATTACK PANEL窗口:
第一个下拉菜单有4个选项,后面3个可作为无客户端攻击模式,其中:
APR REPLAY ATTACK (有客户端时用)
P0841 REPLAY ATTACK (次次选)
CHOPCHOP FORGEATTACK (次选)
FRAGMENTATION FORGE ATTACK (首选)
第二个下拉菜单有3个选项,其中:
??? LENGTH (不指定加密位数,首选)
128 BITS LENGTH (指定128位加密,次次选)
64 BITS LENGTH (指定64位加密,次选)
两个下拉菜单右边 Inj Rate 是每秒发包数量,选默认的600即可。
选择好两个下拉菜单,点击左边LAUNCH按钮(点完后会变成ABORT),开始破解,一般十分钟内密码可以出来。
此时注意观察抓包窗口,如果10分钟内DATA没有快速增长,则换一种攻击模式。
最下面的WEP Key 既是破解出来的密码:AE07938C6F(无需输入冒号)
三:畅游网络
1,双击桌面的“螃蟹”图标,打开驱动软件,点击“可用网络”,如下图:
2,找到刚才破解的ESSID名称,单击选中,点“添加到配置文件”,会出现如下画面:
3,把刚才破解得到的密码填到“网络密匙”,再重复填到“确认网络密匙”,点最下面的“确认”按钮,就可以开始畅游网络啦!
四:操作注意事项:
1, 进入BT3后,不知道怎么退出?很多朋友都是强行关机退出。
应该选择BT3的第一个图标“ ”,在出现的下拉菜单选择最后一项,会出现如下页面(我的软件已汉化,英文版的请参照)。
2, 正常使用网卡,每次关机前,请先退出驱动管理软件。方法是电脑桌面右下角的“”,右键选择“退出”。
(此点特别注意,高功率网卡每次关机前一定要正常退出,否则会影响到使用的寿命和效果!)
Related Posts
重启按F8,进一次VGA模式就能摆平
回答者: npscrscwj - 实习生 一级 2007-11-30 12:11
检举 当设置了计算机不支持的大分辨率导致Windows不能启动时(黑屏),可以修改分辨率来解决。进入安全模式,运行regedit.exe,在这个键的Resolution键值中把数据值修改为640,480或者800,600这样的低分辨率,然后重新启动计算机即可。
windows7笔记本电脑如何破解无线网络密钥 越简单越好
一般都只能破解WEP。破解WPA是个奇迹。
要先买个卡王,然后在电脑上装个Win7的卡王无线网卡驱动。接着装个《VMware虚拟机7》,要导入CDlinux
所谓的(BT5)这样一个ISO系统文件。
连接好卡王,进入VMware虚拟机也就是LINUX系统后,点桌面的一个图标。进行扫描信号,有WEP的信号的话,(信号的条件要充足)再点启动,进行破解密码。这个东西没有说简单就能解决的。自己弄的话要慢慢摸索,找教程。我就是用WIN7系统自己摸索后,破解了一个WEP和一个WPA。关键是我这里信号都是WPA的。现在都收不到好破的信号了。还是接了网线。
大概就是如此。也无法说得太细。实操的工作更多!
如何破解WIFI的密钥? 高手速来探讨
软件能破
但前提是你的无线网卡支持监听功能
而且你要有一个Linux的系统环境,Windows对于这种高端技术显然不够给力~~
用得比较多的系统是基于Linux的BackTrack系统,内置大量的黑客工具,具体操作方法不是一句两句可以说清楚的。如果真想用可以上网去查查BackTrack的教程。
当然,如果你纯粹为了破解WIFI密码。那现在用这个意义也不大
原来用BackTrack主要是破解用WEP加密模式加密的密码。那种加密模式本身就存在一定的缺陷
所以用教程中的方法,几个命令下来大都能自动破解
但现在越来越多的人发现这个问题了,所以大部分的加密方式都改为了WPA的加密模式
这个目前还没有通用的破解方法。破解工具倒是有,BackTrack系统里自带的
但这种破解,工具就真的只是一个辅助了,到底能不能破解,还要看破解者自身的密码分析水平和运气了……能破解WPA加密的人并不多~~
如何使用Openssl 私钥进行解密
在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了。 首先需要进入openssl的交互界面,在命令行了输入openssl即可; 1)生成RSA私钥: genrsa -out rsa_private_key.pem 1024 该命令会生成1024位的私钥,生成成功的界面如下: 此时我们就可以在当前路径下看到rsa_private_key.pem文件了。 2)把RSA私钥转换成PKCS8格式输入命令pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM –nocrypt,并回车得到生成功的结果,这个结果就是PKCS8格式的私钥,如下图: 3) 生成RSA公钥 输入命令rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem,并回车,得到生成成功的结果,如下图: 此时,我们可以看到一个文件名为rsa_public_key.pem的文件,打开它,可以看到-----BEGIN PUBLIC KEY-----开头,-----END PUBLIC KEY-----结尾的没有换行的字符串,这个就是公钥。
ntfs加密证书私钥丢失如何解密
您使用的方法是EFS加密。
EFS加密后是需要备份加密证书的,如果不备份证书,重装系统或者等换用户后,文件就无法打开。如果你备份的有加密证书,你可以导入证书,然后解密。如果没有备份就没有办法了。
以后如果您需要加密文件或文件夹,我推荐您使用文件夹加密超级大师。
文件夹加密超级大师是一款专业的文件夹加密软件,文件夹加密后如果需要使用,只需要输入正确密码,点击打开,使用完毕后,文件夹就自动回复到加密状态了。
操作方法极其简便,您可以到百度上下载文件夹加密超级大师来试试。看看文件加密的效果究竟怎么样?
如何破解无线网络安全密钥?
我就不明白了,为什么老有人想着破解无线网络的密码。
现在一般的都是WPA的密码了。要破解它你要有设备,还得要软件,还得有知识。最主要的是还得有时间。
现在的组密钥都是定期更新的,即便你很幸运跑出密码来了,你破解出来的只是表面上的,其实它的真实密钥早变了。
即便你花了几天时间破解了一个没设置组密钥更新的密码,而且能用。你一蹭网人家知道了,修改密码,再绑定MAC了,你不白破解了?几天功夫你不白费了?你再花几天功夫破解出来,想用才发现人家设置了IP和MAC绑定,你这几天时间又都白忙活了。光这几天你连续不断地开着电脑的电钱就得好几块吧?
总而言之,我的意见是:
WPA类型的密码基本无法破解;即便很幸运你破解了,也不见得能用;即便能用,也不见得能用几天即便能用那么几天,但是相对于你付出的设备的成本、计算机的损耗、还有你的时间、精力的消耗想都是得不尝失的。
结论是:建议你别再想这样的事情。你要是非想试试,那就试试吧。去电脑城一问就有人告诉你该买什么。试过以后你反过头来再看我说的对不对。