美文网首页
加密方法初解

加密方法初解

作者: iOS_July | 来源:发表于2018-07-02 17:48 被阅读28次
lock

前言:
依旧是可以说很良心了,今天了解了一下加密,才发现其中内容真的多,涉及具体的需求
一般常用MD5,再进一步就是加盐,再进一步就是乱序,再再进一步就是HMAC

@非对称加密算法

RSA - 加密算法
  • 公钥加密-私钥解密
  • 私钥加密-公钥加密
  • KEY-其实就是一个数字
  • 只能通过因式分解破解

哈希(散列)函数
  • MD5
  • SHA1
  • SHA256/512

@对称加密算法

  • DES
  • 3DES
  • AES(高级密码标准,美国国家安全局使用,iOS操作系统内部使用)

散列函数-特点

  • 算法公开
  • 对相同数据加密,得到的结果是一样的
  • 对于不同的数据加密,得到的结果都是定长的(32位字符a--z,0--9)
  • 信息摘要--信息指纹,用来做识别
  • 不能反算!

散列函数-用途

  • 用户登录 : 服务器里存储的是加密后的密码,并不是明文密码,用户登录时,我们客户端也只是发送加密后的识别码
  • 搜索
  • 版权

散列函数-破解

  • 目前破解的散列只有 MD5,SHA1 也在边缘
  • 散列碰撞,不同的数据使用MD5之后,能够得到相同结果的散列结果,这个网站,目前95%的正确查找率

Example->MD5& HMAC

MD5加盐[加入一段复杂且长的特殊字符串,使得MD5暴力破解数据库无法匹配]
  • 缺点-->盐是写死在程序里的,被认为掌握,存在泄漏的危险
HMAC[另类加盐]
  • 优点-->给定一个密钥[一般从服务器获取,在注册时存储到服务器本地、客户端本地,客户端仅获取一次,这样减小了key被拦截的机率],对明文进行加密,并做两次散列--32位字符,这样的好处是,服务器随机给,客户端仅获取一次,所有的开发人员都不知道,不存在认为泄漏的潜在危险,也大大降低了被拦截的可能。
  • 缺点-->如果用户更换设备登录,那么该设备上是不具备对应的密钥的,此时用户便不能再登录了。所以,服务器端应该更换普通的账户保存方式[账号:密钥:加密之后的密码->(原始密码+KEY)HMAC<-]
HMAC客户端登录思路
  • 1.1 用户输入账号、密码
  • 1.2 本地查找密钥[如果没有密钥,向服务器获取(对应账号)]
  • 1.3 举例:QQ的设备锁(异地登陆),通过判断本地是否有密钥,进而判断是否为用户的设备,如果判断不是用户设备,则向之前有密钥的手机客户端发送是否解锁的信息,解锁后,服务器则向你发送新的密钥。
使得HMAC更进一步的安全[登录时]
  • 客户端:加密之后的密码 == (原始密码 + KEY)HMAC,再进一步做处理,最终向服务器发送的密码 == (加密之后的密码 + 201807021620)MD5
  • 服务器端:这时的判断进一步做更改,(加密之后的密码 + 201807021621) || (加密之后的密码 + 201807021620),使得只有1分钟的时效

钥匙串访问

1> 苹果的生态圈,从iOS7.0.3版本,开放给开发者
2> 钥匙串加密方式是AES加密,可以将保存的密码以明文的方式反算给你
3> 苹果原生的接口,都是C语言

1.下载 SSKeyChain
2. 根据GitHub上的指示,操作项目
3. TARGETS-> Capabilities-> Keychain Sharing ->ON

结束语

毕业了,心情复杂,略带平静......

相关文章

  • 加密方法初解

    前言:依旧是可以说很良心了,今天了解了一下加密,才发现其中内容真的多,涉及具体的需求一般常用MD5,再进一步就是加...

  • (Android、Java) AES加密方法

    Android、Java在做http请求的时候,都会做两端加密验证,一般都会使用到AES加密,方法很简单! 加密解...

  • SSH原理及应用

    加密方法分类 单钥加密1.1 加密解密同一套密码 双钥加密2.1 公钥私钥一一对应,公钥公开,私钥私密,公钥可以解...

  • SSH原理及应用

    加密方法分类 单钥加密1.1 加密解密同一套密码 双钥加密2.1 公钥私钥一一对应,公钥公开,私钥私密,公钥可以解...

  • 方法论初解

    世界上没有一个答案能完美解答所有问题,但有一种模板能应用于答案中,使答案契合问题,这种模板称之为方法论。 方法论,...

  • 小说解读方法初解

    小说:以塑造人物为中心,通过完整的情节和具体的环境描写来反映社会现实的一种文学体裁。这是对小说这种文学形式的定义,...

  • iOS 常规加密算法

    非对称加密: RSA:https、苹果的p12证书等 认证都是通过RSA--公钥加密,私钥解秘--私钥加密,公钥解...

  • iOS几种加密方式

    iOS 几种加密方法2017-06-19 [iOS开发] iOS常见的几种加密方法 普通加密方法是讲密码进行加密后...

  • 安捷伦 OpenlabChemstation 用户密码加密方法解

    安捷伦 OpenlabChemstation 如果忘记了管理员密码可能需要重装软件,相当麻烦。本文尝试其他方法用有...

  • 数据分析:微生物数据分析方法讲解

    拆解地址 14 种差异分析方法步骤以及原理初解[https://xbiomeanalysis.github.io/...

网友评论

      本文标题:加密方法初解

      本文链接:https://www.haomeiwen.com/subject/nyfluftx.html