精华内容
下载资源
问答
  • 5用户密码加密方式,哪种最安全

    千次阅读 2021-01-19 11:17:20
    作为互联网公司的信息安全从业人员经常要处理撞库扫号事件(撞库是黑客无聊的“恶作剧”,黑客通过收集互联网已泄露的用户+密码信息,生成对应的字典表,尝试批量登陆其他网站后,得到一系列可以登陆的用户),产生撞...

    作为互联网公司的信息安全从业人员经常要处理撞库扫号事件(撞库是黑客无聊的“恶作剧”,黑客通过收集互联网已泄露的用户+密码信息,生成对应的字典表,尝试批量登陆其他网站后,得到一系列可以登陆的用户),产生撞库扫号的根本原因是一些企业发生了信息泄露事件,且这些泄露数据未加密或者加密方式比较弱,导致黑客可以还原出原始的用户密码。

    以京东之前的撞库举例,首先京东的数据库并没有泄漏。黑客只不过通过“撞库”的手法,“凑巧”获取到了一些京东用户的数据(用户名密码),而这样的手法,几乎可以对付任何网站登录系统,用户在不同网站登录时使用相同的用户名和密码,就相当于给自己配了一把“万能钥匙”,一旦丢失,后果可想而知。

    今天主要分别介绍用户密码的加密方式以及主要的破解方法。

    彩虹表:如果将哈希后的密文比作一把锁,暴力破解的方法就是现场制作各种各样不同齿形的钥匙,再来尝试能否开锁,这样耗时无疑很长;我以前错误理解的“彩虹表”,是事先制作好所有齿形的钥匙,全部拿过来尝试开锁,这样虽然省去了制作钥匙的时间,但是后来发现这些钥匙实在是太多了,没法全部带在身上。而真正的彩虹表,是将钥匙按照某种规律进行分组,每组钥匙中只需要带最有特点的一个,当发现某个“特征钥匙”差一点就能开锁了,则当场对该钥匙进行简单的打磨,直到能开锁为止。这种方法是既省力又省时的。

     

    用户密码加密方式

    用户密码保存到数据库时,常见的加密方式有哪些?以下几种方式是常见的密码保存方式:

    1. 明文保存

    比如用户设置的密码是“123456”,直接将“123456”保存在数据库中,这种是最简单的保存方式,也是最不安全的方式。但实际上不少互联网公司,都可能采取的是这种方式。

    2. 对称加密算法来保存

    比如3DES、AES等算法,使用这种方式加密是可以通过解密来还原出原始密码的,当然前提条件是需要获取到密钥。不过既然大量的用户信息已经泄露了,密钥很可能也会泄露,当然可以将一般数据和密钥分开存储、分开管理,但要完全保护好密钥也是一件非常复杂的事情,所以这种方式并不是很好的方式。

    3. MD5、SHA1等单向HASH算法

    使用这些算法后,无法通过计算还原出原始密码,而且实现比较简单,因此很多互联网公司都采用这种方式保存用户密码,曾经这种方式也是比较安全的方式,但随着彩虹表技术的兴起,可以建立彩虹表进行查表破解,目前这种方式已经很不安全了。

    其实之前公司也是采用的这种MD5加密方式。

     

    4. PBKDF2算法

    该算法原理大致相当于在HASH算法基础上增加随机盐,并进行多次HASH运算,随机盐使得彩虹表的建表难度大幅增加,而多次HASH也使得建表和破解的难度都大幅增加。

    在使用PBKDF2算法时,HASH一般会选用sha1或者sha256,随机盐的长度一般不能少于8字节,HASH次数至少也要1000次,这样安全性才足够高。一次密码验证过程进行1000次HASH运算,对服务器来说可能只需要1ms,但对于破解者来说计算成本增加了1000倍,而至少8字节随机盐,更是把建表难度提升了N个数量级,使得大批量的破解密码几乎不可行,该算法也是美国国家标准与技术研究院推荐使用的算法。

    5. bcrypt、scrypt等算法

    这两种算法也可以有效抵御彩虹表,使用这两种算法时也需要指定相应的参数,使破解难度增加。

    在密码学中,scrypt(念作“ess crypt”)是Colin Percival于2009年所发明的金钥推衍函数,当初设计用在他所创立的Tarsnap服务上。设计时考虑到大规模的客制硬件攻击而刻意设计需要大量内存运算。

    Scrypt不仅计算所需时间长,而且占用的内存也多,使得并行计算多个摘要异常困难,因此利 用rainbow table进行暴力攻击更加困难。Scrypt 没有在生产环境中大规模应用,并且缺乏仔细的审察和广泛的函数库支持。但是,Scrypt 在算法层面只要没有破绽,它的安全性应该高于PBKDF2和bcrypt。

     

    各个算法的特性

     

    总结

    采用PBKDF2、bcrypt、scrypt等算法可以有效抵御彩虹表攻击,即使数据泄露,最关键的“用户密码”仍然可以得到有效的保护,黑客无法大批量破解用户密码,从而切断撞库扫号的根源。

    展开全文
  • 网络安全种加密方式

    千次阅读 2018-11-01 18:07:26
    下面介绍几网络传播加密方式: 1.密钥散列 采用MD5或者SHA1等散列算法,对明文进行加密(这里的加密仅对人,不对机器,因为这些算法机器可以用对应算法算出来) 适用场景:普通文件下载 缺点:不具备安全性...

    下面介绍几种网络传输加密方式:
    注.这些加密涉及明文传输的,需要在https协议上加密传输

    1.密钥散列

    采用MD5或者SHA1等散列算法,对明文进行加密(这里的加密仅对人,不对机器,因为这些算法机器可以用对应算法算出来)

    在这里插入图片描述
    优点:防篡改
    适用场景:普通文件下载
    缺点:不具备安全性,可认证性

    2.对称加密

    在这里插入图片描述
    优点:安全、可认证
    适用场景:收发方数量固定,密钥使用对象少
    缺点:BS网络传输关系,密钥过多难维护,除非对密钥进行加密传输

    3.非对称加密

    3.1接收方发送公钥(保证数据完整性)

    前提:首次通信时发送方接收了接收方的公钥,并保存在本地
    在这里插入图片描述

    3.2发送方发送公钥(保证发送方认证)

    前提:首次通信时接收方接收了发送方的公钥,并保存在本地
    在这里插入图片描述

    4.数字签名

    网络传输数字签名
    适用场景:登录认证
    缺点:不具备足保密性

    速记

    1. 对称算法

    对称算法(SymmestricAlgorithm).Create()=>
    Provider.CreateEncryptor()
    Provider.CreateDecryptor()
    CryptoStream(Stream stream,ICrytoTransform transform,CryptoStreamMode mode):
    CryptoStream(encryptedSteam,encryptor,CryptoStreamMode.Write)//加密 准备读取 空encryptedSteam准备被写入
    CryptoStream(encryptedSteam,decryptor,CryptoStreamMode.Read)//解密 准备写入 密文流encryptedSteam准备被读取

    1. 非对称加密

    非对称加密(ASymmistricAlgorithm):
    Provider provider
    provider.ToXmlString(true);//获得公私钥对
    provider.ToXmlString(false);//获得公钥
    provier.FromXmlString(publicKeyXml);
    provier.FromXmlString(privateKeyXml);
    provider.Encrypt();
    provider.Decrypt();

    实例:

    对称加密:

    
                string key = "abc";
                string sendContent="你好!";
                var byteKey = Encoding.UTF8.GetBytes(key);
                var byteIV = Encoding.UTF8.GetBytes(key);//加密算法初始化向量
                DESCryptoServiceProvider des = new DESCryptoServiceProvider();//使用des加密
                byte[] bytesContent = Encoding.UTF8.GetBytes(sendContent);
                MemoryStream ms = new MemoryStream();
                CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(byteKey, byteIV), CryptoStreamMode.Write);
                cs.Write(bytesContent, 0, bytesContent.Length);
                cs.FlushFinalBlock();
    
    展开全文
  • 数据传输安全的几种加密方式

    千次阅读 2019-03-14 11:13:44
    Android数据加密之Rsa加密 前言:   &...最近无意中和同事交流数据安全传输的问题,想起自己曾经使用过的Rsa...其他几种加密方式: Android数据加密之Rsa加密 Android数据加密之Aes
    展开全文
  • 种加密方式

    万次阅读 2018-11-30 15:29:03
    1 Base64加密方式(可逆) Base64中的可打印字符包括字母A-Z/a-z/数组0-9/ 加号’+’斜杠’/’ 这样共有62个字符 Base64 ios7之后加入系统库   2 MD5加密 Message Digest Algorithm MD5(中文名为消息摘要算法...

    1 Base64加密方式(可逆)

    Base64中的可打印字符包括字母A-Z/a-z/数组0-9/ 加号’+’斜杠’/’ 这样共有62个字符

    Base64 ios7之后加入系统库

     

    2 MD5加密

    Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护

    是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。

    根据输出值,不能得到原始的明文,即其过程不可逆

     

    MD5算法具有以下特点:

    1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。

    2、容易计算:从原数据计算出MD5值很容易。

    3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。

    4、强抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

     

    MD5的作用是让大容量信息在用数字签名软件签署私人密钥前被”压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)。除了MD5以外,其中比较有名的还有sha-1、RIPEMD以及Haval等。

     

    MD5加盐

     

    3 钥匙串加密方式

     

    iCloud钥匙串,苹果给我们提供的密码保存的解决方案,iOS7之后有的

     

    存沙盒:

    1、如果手机越狱,密码容易被窃取。

    2、当软件更新时,沙盒里的内容是不被删除的。但是,如果将软件卸载后重装,沙盒里的数据就没有了。

    3、每个APP的沙盒是相对独立的,密码无法共用。

     

    存钥匙串里:

    1、苹果提供的安全方案,rsa加密,相对安全。

    2、无论软件更新或删除,密码都存在,都可以自动登录。

    3、同一公司的APP密码是可以共用的。

     

    4 对称加密算法

     

    优点:算法公开、计算量小、加密速度快、加密效率高、可逆

    缺点:双方使用相同钥匙,安全性得不到保证

    现状:对称加密的速度比公钥加密快很多,在很多场合都需要对称加密,

    算法: 在对称加密算法中常用的算法有:DES3DES、TDEA、Blowfish、RC2、RC4、RC5IDEA、SKIPJACK、AES等。不同算法的实现机制不同,可参考对应算法的详细资料

    相较于DES和3DES算法而言,AES算法有着更高的速度和资源使用效率,安全级别也较之更高了,被称为下一代加密标准

     

    nECB :电子代码本,就是说每个块都是独立加密的

    nCBC :密码块链,使用一个密钥和一个初始化向量 (IV)对数据执行加密转换

     

    ECB和CBC区别:CBC更加复杂更加安全,里面加入了8位的向量(8个0的话结果等于ECB)。在明文里面改一个字母,ECB密文对应的那一行会改变,CBC密文从那一行往后都会改变。

     

    5 RSA加密(非对称加密算法)(Secruty.framework系统库)

     

    非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)

    非对称加密中使用的主要算法有:RSAElgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)等。

    公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密

    特点:

    非对称密码体制的特点:算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快

    对称密码体制中只有一种密钥,并且是非公开的,如果要解密就得让对方知道密钥。所以保证其安全性就是保证密钥的安全,而非对称密钥体制有两种密钥,其中一个是公开的,这样就可以不需要像对称密码那样传输对方的密钥了

     

    但是RSA加密算法效率较差,对大型数据加密时间很长,一般用于小数据。

    转自:https://www.cnblogs.com/ritian/p/5422777.html

     

     

    展开全文
  • 密码学的几种加密方式

    千次阅读 2019-05-30 12:13:17
    常用的加密方式有这四,比特币的交易就是基于数字签名加密方式的。 1、对称加密 对称加密是使用同一个密钥对信息进行加解密。 算法:DES、3DES、AES 优点:速度快,适合加密大量数据 缺点:密钥的传递存在着安全...
  • 无线加密的几种加密方式

    千次阅读 2017-05-15 20:04:27
    无线加密的几种加密方式     目前无线路由器里带有的加密模式主要有:WEP,WPA-PSK(TKIP),WPA2-PSK(AES)和WPA-PSK(TKIP)+WPA2-PSK(AES)。   WEP(有线等效加密) WEP是WiredEquivalentPrivacy的...
  • 加密WIFI和未加密WIFI的安全性获取方式
  • 无线路由的四种加密方式

    千次阅读 2019-02-28 13:54:28
      WEP(Wired Equivalent Privacy,有线等效保密)是早出现在无线中使用的技术,采用的是对称加密机制,技术源自RC4的RSA数据加密技术,目前常见的是64位WEP加密和128位WEP加密。 1.2 安全性概述   数据...
  • 简述https的几种加密方式

    千次阅读 2019-09-25 14:50:23
    加密方式常见的加密方式:对称加密和非对称加密。对称加密算法和非对称加密算法只不过是密码学中的两加密算法罢了,所谓的算法就是一可以将信息从一形式转变为另一形式的规则...
  • wifi 的几种加密方式

    千次阅读 2012-07-02 15:51:27
    要想知道怎样才能保护好我们的无线网络,首先,就要先来了解一下主流的无线加密方式,也就是在无线路由器的安全设置中常常出现的WEP、WPA、WPA2以及WPA+WPA2这几种加密方式。  WEP(Wired Equivalent Privacy,...
  • 安全加密技术】 对称加密

    千次阅读 2015-07-09 22:28:36
     上篇了解了《非对称加密》后 今天我来继续了解下加密技术中对称... 对称加密是传统的加密方式,比上非对称加密,缺少安全性,但是它依旧是用的比较多的加密方法。  对称加密采用单密钥加密方式,不论是加密还是
  • 一、md5(php中的常用的加密方式) 在用md5进行加密时,至少要将md5加密两次以上(包含两次),或者再加上盐进行加密 二、password_hash(php5.5以上版本才可以使用) 官方说明链接:...
  • java中的几种加密方式

    万次阅读 2018-08-06 14:17:12
    第一 DES加解密 import java.security.Key; import java.security.SecureRandom; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import org.slf4j.Logger; import org.slf4j.LoggerFactory;...
  • wifi的几种加密方式

    千次阅读 2014-12-04 14:13:14
    wifi加密是一数据加密算法用于提供等同于有线局域网的保护能力。它的安全技术源自于名为RC4的RSA数据加密技术,...WPA协议是一保护无线网络(WiFi)安全的系统,它是在前一代有线等效加密(WEP)的基础上产生的,解决了
  • AES的5种加密方式

    千次阅读 2018-06-01 16:30:13
    分组密码在加密时明文分组的长度是固定的,而实用中待加密消息的数据量是不定的,数据格式可能是多种多样的。为了能在各种应用场合安全地使用分组密码,通常对不同的使用目的运用不同的工作模式。 一、电码本模式...
  • 针对第一flv加密方式存在的问题,如算法单一、视频过大。更多有实力的厂商,在此基础上优化、衍生出更加优秀的解决方案。 采用切片方式的优点较多,如加载更快速、播放更流畅、每一个数据片段都采用了加密,解密...
  • 加密方式有两:对称加密 和 非对称加密 对称加密 原理: 加密算法是公开的,靠的是密钥来加密数据,使用一个密钥加密,必须使用相同的密钥才解密。 常用的对称加密算法: DES、3DES、AES 优点: 计算...
  • JS 几可逆加密方式

    千次阅读 2020-01-20 16:54:22
    一、Base64加密 加密: var str64 = window.btoa("hello"); 解密 : console.log("base64解码后:"+window.atob(str64)); 二、CryptoJS加密 <script src=...
  • 安全架构-加密算法-对称加密

    千次阅读 2020-12-21 21:50:03
    安全架构-加密算法-对称加密 本系列安全架构文章中,之前谈到了api接口签名防止数据篡改,但是关键数据在通讯过程中是不能明文传递的,这就涉及到另外的安全问题,数据加密传输。 加密算法根据加密秘钥的不同分为...
  • hostapd加密方式

    千次阅读 2018-05-24 19:13:30
    hostapd有三种加密方式:WEP、WPA/WPA2、WPA-PSK/WPA2-PSK WEP 比较差的加密方式,已被破解并且不支持80211n。 配置文件中wep加密为: wep_key0=“xxxx” WPA/WPA2 WPA/WPA2是一比WEP强壮的加密算法,挑选...
  • 写在前面写前端的时候,很多的时候...但是也有一些数据库里面存放的是加密后的密码,这样有一个比较安全的地方在于,即使黑客将用户输入的文本密码得到了,也不知道具体是什么,因为密码是经过加密的。今天就简单的...
  • SSL 加密方式

    万次阅读 2018-08-23 11:44:36
    加密方式   密码学是涉及数学、电子信息、计算机等多学科的一门重要学科,是现代互联网安全的基石,也是目前如火如荼的区块链技术的安全保障。概括来说,加密方式可归结为不可逆加密与可逆加密。   不可逆加密...
  • Java.Utils:AES-128-CBC 加密方式

    万次阅读 2020-02-13 18:18:50
    /** * * AES-128-CBC 加密方式 * 注: * AES-128-CBC 可以自己定义“密钥”和“偏移量“。 * AES-128 是 jdk 自动生成的“密钥”。 * * * @author:bood * @date:2020/10/16 */ public class AesCbcUtils { public...
  • Android安全加密:对称加密

    万次阅读 多人点赞 2016-09-09 22:46:57
    Android安全加密专题文章索引 Android安全加密:对称加密 Android安全加密:非对称加密 Android安全加密:消息摘要Message Digest Android安全加密:数字签名和数字证书 Android安全加密:Https编程 以上学习所有...
  • android 三常用的加密方式

    万次阅读 2018-07-23 10:49:01
    android应用中常用的加密方式有三:MD5,AES,RSA。在进行实际的开发过程中,一般是几种加密方式配合使用,这样加密效果会更好,被破解的概率会越小。下面我们就分别讲一下三种加密方式的实现过程。 一、MD5 MD5...
  • 常见加密方式

    千次阅读 2017-09-30 10:18:46
    对称加密是快速、简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key)。对称加密有很多算法,由于它效率很高,所以被广泛使用在很多加密协议的核心当中。 对称加密...
  • 1、常用的加密算法分类 常见的加密算法可以分成五类: 对称加密算法、非对称加密算法和、Hash 算法(也称摘要算法)、数字签名(Hash&...假设两个用户需要使用对称加密方法加密然后交换数据,则用户...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 335,799
精华内容 134,319
关键字:

哪种加密方式最安全