密码学

作者: geekAppke | 来源:发表于2018-02-26 13:06 被阅读19次
ssh :secure shell
加密:
    1. 对称加密 (加密密钥与解密密钥相同)
        des 、aes
    2. 非对称加密(加密密钥与解密密钥不同)
        RSA :公钥、私钥 
数字摘要:
    md5 \sha1

密码学

Base64编码,将任意二进制数据进行编码,有65中字符组成的文本(0-9、a-z、A-Z、+/=)

  • 6个二进制位为单位,最后用=来补齐
  • 所有数据都可以编码、图片也可以
  • base64 123.txt -o abc.txt
  • base64 abc.txt -o 234.txt -D
  • 给字符串加密 echo hello| base64
  • echo YW5nbGltdUAxNjMuY29tCg==|base64 -D
/** 字符串,进行base64编码 */
- (NSString *)base64Encode:(NSString *)string
{
    // 1.将字符串转成 二进制
    NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
    // 2.返回base64编码
    return [data base64EncodedStringWithOptions:0];
}

/** 给我一个base64编码,解码 */
- (NSString *)base64Decode:(NSString *)string
{
    // 1.将base64编码后的字符串,转换成 二进制
    NSData *data = [[NSData alloc] initWithBase64EncodedString:string options:0];
    // 2.返回字符串
    return [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
}
----------------------------------------------
NSLog(@"%@", [self base64Encode:@"haha"]);
// aGFoYQ==
NSLog(@"%@", [self base64Decode:@"aGFoYQ=="]);
// haha

位运算:与、或、非、异或(简单的加密)

  • 很多数据就是简单的异或!

密码学

上世纪70年代现代密码学——非对称加密算法 RSA(网络)

  • 私钥加密,公钥解密
  • 公钥加密,私钥解密

对称加密(本地)

  • 用什么来加密的,就用什么解密
  • DES、3DES、AES(高级密码标准,美国安全局使用)
    • 明文→密钥→密文
    • 密文→密钥→明文


哈希(散列)函数

  • MD5:32个字符,不管原始数据有多大,不可逆
    • 对相同数据加密一样、不同数据加密结果不一样
    • 信息摘要,只是信息的一部分(信息指纹!)
    • 这个指纹是张三的,不可能拿这个指纹把张三变出来
  • 可以反查询MD5解密网站,直接MD5加密就不安全了
  • 加盐,所有地方都有保持一致,pc\android\ios,还是有安全问题
  • HMAC加密:给定密钥对明文进行加密,做2次散列!得到结果也是32位(去反查询基本查不到)
// 直接md5太简单
//    pwd = pwd.md5String;
//    pwd = [pwd stringByAppendingString:salt].md5String;
pwd = [pwd hmacSHA1StringWithKey:@"helen"];
    
// 登陆
[self sendUserId:uid withPwd:pwd];
  • 实际开发中,密钥来自服务器!一个账号!对应一个密钥
  • 泄露只影响一个用户的
  • 指纹人脸是手机的主人,密码是账号的主人,手机绑定了账号所以能支费用

哈希(散列)函数应用

  • 文件识别、加密
    • 文件名、后缀,本身和文件没有关系,只是告诉操作系统的,改了名字它hash值还是不变,网站识别防止重复上传
    • 可以压缩文件,文件的二进制发生变化,hash值也改变
    • 拆词搜索,哈希求和,顺序不同结果相同

相关文章

  • 前后端数据传输安全——加密浅析

    加密 本文内容: 密码学起源 古典密码学 现代密码学 对称加密 非对称加密 数字签名 哈希 密码学起源: 在战争中...

  • 1.什么是密码学

    重点:密码学的主要功能及其含义现代密码学与信息安全的关系现代密码学的主要研究内容 1. 密码学定义 密码学是一个...

  • 关于区块链密码学

    什么是密码学 以下是密码学在维基百科中的解释: 密码学(英语:Cryptography)可分为古典密码学和现代密码...

  • 密码学基础知识

    密码学 推荐书籍 图解密码技术 结城浩 著 周自恒 译 密码学概览 密码学概览图密码学概览 消息的特性 机密...

  • iOS逆向攻防之密码学基础及RSA数学原理、Base64编码

    直接上密码学入门级知识部分,今天的内容如下: 一、密码学概述与发展历史 1、密码学的概述 2、密码学的主要发展历史...

  • IOS 逆向开发(一)密码学 RSA

    IOS 逆向开发(一)密码学 RSA 1. 密码学发展简介 密码学是指研究信息加密,破解密码的技术科学。密码学的起...

  • RSA加密

    一、密码学 密码学是指研究信息加密,破解密码的技术科学。密码学的起源可追溯到2000年前。而当今的密码学是以数学为...

  • 密码那些事儿|(二十八)战争对密码学的作用

    说完密码学对战争的作用,我们再来看看战争对密码学的影响。 在密码学的发展历史上,有这么一个规律 ——密码学总是在信...

  • 密码学-RSA

    密码学 密码学是指研究信息加密,破解密码的技术科学。密码学的起源可追溯到2000年前。而当今的密码学是以数学为基础...

  • iOS逆向实战--010:RSA加密

    密码学概述 密码学是指研究信息加密,破解密码的技术科学。密码学的起源可追溯到2000年前。而当今的密码学是以数学为...

网友评论

      本文标题:密码学

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