密码对于用户而言并不陌生,它是一种用于保护重要信息和文件的工具,只有输入正确的密码才可查看文件和信息的具体内容。黑客为了获取这些信息,会采用各种方式来破解密码,因此用户不仅需要了解黑客破解密码的常用方法,而且还要掌握防范密码被破解的常用措施。

  密码学中,加密与解密是互逆的操作,它们的操作对象都是密码。对解密而言,除了在知道密码的情况下进行解密操作,还可在不知道密码情况下进行解密,即破解密码。

一、认识加密与解密

  加密指以某种特殊的算法改变原有的信息数据,使得其他用户即使获取了已加密的信息数据,但因为不知道解密的方法,仍然无法了解信息的内容。其基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码(常称为“密文”),使其只能在输入相应的密钥之后才能显示出原来的内容,通过这样的途径达到保护数据不被非法窃取、阅读的目的。

  解密操作是加密操作的逆操作,即利用密钥将不可读的“密文”转换为“明文”,便于直接阅读。

二、破解密码常用方法

  破解密码指在不知道密码情况下采用各种方法进行破解密码的操作。破解密码常见的操作有暴力穷举、击键记录、屏幕记录、Internet钓鱼、嗅探及密码心理学几种。

1、暴力穷举

  暴力穷举是密码破解技术中最基本的招数,即通过将键盘上的字母、数字和符号进行不同的组合来尝试破译密码。若黑客在破解前知晓账号,如网上银行账号、支付宝账号等,且登录密码设置过于简单(简单数字或字母组合),黑客利用暴力破解工具在短时间内就可以将密码破解出来。

2、击键记录

  当用户密码设置较为复杂时,使用暴力穷举十分浪费时间,这时黑客会通过给目标计算机安装具有击键记录的木马或病毒程序,来记录和监听用户的击键操作,然后通过各种方式记录用户的击键内容并发送给攻击者,攻击者只需分析用户击键信息即可破解出密码。

3、屏幕记录

  除了通过键盘输入密码外,用户经常会采用通过鼠标和屏幕键盘录入密码的方法。面对这种情况,黑客仍然可以通过向计算机植入木马程序来截取目标计算机的屏幕记录鼠标的点击位置,通过记录鼠标位置对比截屏的图片,从而破解用户密码。

4、Internet钓鱼

  指黑客利用欺骗性电子邮件或伪造的网站来诱骗用户输入账号密码信息,从而获取这些信息。受骗者会上当受骗而泄漏自己的敏感信息(如用户名、密码、账号、PIN码或信用卡详细信息)。Internet钓鱼主要通过发送电子邮件引诱用户登录假冒的网上银行、网上证券网站,骗取用户账号、密码、实施盗窃行为。

5、嗅探

  局域网中,黑客若想迅速获取大量的账号,最为有效的手段就是利用嗅探工具嗅探局域网中的数据包。利用嗅探工具可以监视网络的状态、数据流动情况以及网络上传输的信息。当信息以明文的方式在网络上传输时,便可以使用网络监听的方式窃取网上传送的数据包。

6、密码心理学

  很多著名的黑客破解密码并非采用尖端的技术,而是借助密码心理学,从用户的心理入手,从细微入手分析用户的信息和心理(如用户喜爱将自己的密码设置为出生年月日、手机号码等),从而更快捷地破解密码。其实,获得信息还有很多途径,如果密码心理学掌握的好,可以非常快速地破解获得用户信息。

Hacker(21)----密码攻防之加密与解密基础的更多相关文章

  1. js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结

    写前端的时候,很多的时候是避免不了注册这一关的,但是一般的注册是没有任何的难度的,无非就是一些简单的获取用户输入的数据,然后进行简单的校验以后调用接口,将数据发送到后端,完成一个简单的注册的流程,那么 ...

  2. C#:使用MD5对用户密码加密与解密

    C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...

  3. 使用kettle转换中的JavaScript对密码进行加密和解密

    日常开发中,为了确保账号和密码的安全,时常要对密码进行加密和解密.然而kettle是怎么对密码进行加密和解密的呢? 下面的代码需要再转换中的JavaScript中运行. var encrypted_p ...

  4. java代码实现对excel加密、解密(设置或去除打开密码)

    使用jxcell组件来完成对excel加密.解密的功能. jxcell.jar[点击下载](此jar没有使用限制,你懂得) 具体代码如下: import java.io.IOException; im ...

  5. C# 实现对PPT文档加密、解密以及重置密码的操作

    工作中我们会使用到各种各样的文档,其中,PPT起着不可或缺的作用.一份PPT文档里可能包含重要商业计划.企业运营资料或者公司管理资料等.因此,在竞争环境里,企业重要资料的保密工作就显得尤为重要,而对于 ...

  6. 转 C#:使用MD5对用户密码加密与解密

    C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...

  7. 密码基础知识(2)以RSA为例说明加密、解密、签名、验签

    密码基础知识(1)https://www.cnblogs.com/xdyixia/p/11528572.html 一.RSA加密简介 RSA加密是一种非对称加密.是由一对密钥来进行加解密的过程,分别称 ...

  8. params关键字、工具辅助类与、加密与解密

    一.params关键字 在C#中如果给方法的参数加上关键字params则会形成可变参数,在传递时可以是0-n个对象. 示例: using System; using System.Collection ...

  9. Javascript中双等号(==)隐性转换机制 JS里charCodeAt()和fromCharCode()方法拓展应用:加密与解密

    Javascript中双等号(==)隐性转换机制   在Javascript中判断相等关系有双等号(==)和三等号(===)两种.其中双等号(==)是值相等,而三等号(===)是严格相等(值及类型是否 ...

随机推荐

  1. samba服务日志文件-密码文件及启停

    1.Samba服务日志文件日志文件对于samba非常重要,它存储着客户端访问samba服务器的信息,以及samba服务的错误提示信息等,可以通过分析日志,帮助解决客户端访问和服务器维护等问题.在/et ...

  2. Objective-C探究alloc方法的实现

    OS X,iOS中的大部分作为开源软件公开在 Apple Open Source 上.虽然想让大家参考NSObject类的源代码,但是很遗憾,包含NSObject类的Foundation框架没有公开. ...

  3. DOM不同的结点类型

    1)node类型 nodeName(what node) and nodeValue(always null) node父子之间可以用childNodes来表示 firstChild,childNod ...

  4. 线段树:Segment Tree(单点修改/区间修改模板) C++

    线段树是非常有效的数据结构,可以快速的维护单点修改,区域修改,查询最大值,最小值等功能. 同时,它也很重要.如果有一天比赛,你卡在了一道线段树模板题目上,这就真的尴尬了.不过,随着时代的进步,题目也越 ...

  5. RMQ问题

    关于RMQ的问题我就直接截取刘汝佳的<算法竞赛训练指南>上的解释了

  6. ie6里png图片不透明

    ie6下img图片或背景图片为png时,图片变成了一片黑色: 图中的jquery-timepicker的两个黑方块和img就是由此原因引用的.解决方法:由Drew Diller提供,对img.back ...

  7. web标准(复习)--3 二列和三列布局

    今天学习二列和三列布局,将涉及到以下内容和知识点 二列自适应宽度 二列固定宽度 二列固定宽度居中 xhtml的块级元素(div)和内联元素(span) float属性 三列自适应宽度 三列固定宽度 三 ...

  8. Jquery 网站保存信息提示消息实现,提示后自动消失

    现在的大多数网站都有校验,以及信息提示:为了给用户更好的体验可以不用alert提示消息,采用jQuery提示完消息,自动消失 css <style> #tip_message { z-in ...

  9. [转载]css3属性box-sizing:border-box的作用

    http://jastate.com/css3-properties-box-sizingborder-box.html 定义和用法 按照w3c school的说法,box-sizing:border ...

  10. SelectedNode与e.node的区别

    SelectedNode与e.node的区别 待补.......