编码->Hash->加密;序列化

本文详细介绍了编码过程,包括文本、图片和视频的压缩,以及URL编码和字符集的概念。接着讨论了哈希的作用,如唯一性验证、快速查找和数据完整性。还提及了加密技术,包括对称加密和非对称加密,以及它们的优缺点。最后,解释了序列化的概念,它是将内存中的对象转换为可传输和存储的字节序列。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


    1. 编码
        a. 压缩:文本、图片、视频。
            i. 视频图片的编解码。
            ii. 有损压缩和无损压缩。
        b. 二进制数据(非文本)Base64/58(去掉难区分的字符,比特币)
        "Man"不是非文本,仅用作举例
        
        
            i. 用途:
                1) 用文本传输非文本数据
                    a) 正常情况下图片不编码,因数据增大1/3。
                2) 防偷窥
            ii. 缺点:因6位变8位,数据会增大约1/3。
        c. 文本:
            i. (仅用于URL的表单部分)字符串--->URL百分号编码:
                1) 作用:URL表单里移去不能传送的字符,避免解析错误。
                2) 编码规则:
                URL编码遵循下列规则: 每对name/value由&;符分开;每对来自表单的name/value由=符分开。如果用户没有输入值给这个name,那么这个name还是出现,只是无值。任何特殊的字符(就是那些不是简单的七位ASCII,如汉字)将以百分符%用十六进制编码,当然也包括象 =,&;,和 % 这些特殊的字符。其实url编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上“%”。比如“\”,它的ascii码是92,92的十六进制是5c,所以“\”的url编码就是%5c。
                    a) Ascii    英[ˈæski]
                    b) 举例:浏览器自动编码
                        不自动编码    自动编码
                    浏览器地址栏给人看的    https://baike.baidu.com/item/API/10154?fr=aladdin    https://baike.baidu.com/item/URL编码/3703727?fr=aladdin
                    其实的真正请求链接    https://baike.baidu.com/item/API/10154?fr=aladdin    https://baike.baidu.com/item/URL%E7%BC%96%E7%A0%81/3703727?fr=aladdin
            ii. 字符集:
                1) ASCII:128个字符,1字节
                2) IS0-8859-1:对ASCII进行扩充,1字节
                3) Unicode字符集:13万个字符,多字节
                    a) UTF-8编码分支:Unicode的编码分支
                    b) UTF-16编码分支:Unicode的编码分支
                4) GBK/GB2312/GB18030:中国自研标准,多字节。字符集+编码:既是字符集也是编码。
    2. Hash(MD5其实不能算加密算法,但国内普遍错了):
        a. 作用:提取摘要信息当数字指纹。
            i. 唯一性验证
            ii. 快速查找
            iii. 签名和验证:数据完整性验证
            
            
            iv. 隐私保护
    3. 加密
        a. 对称加密:
            i. 优点:效率高。
            ii. 缺点:如何保证只有咱俩有这个密钥。
        b. 非对称加密(RSA、DSA):公钥私钥。用作数字签名。
        
        
            i. 缺点:性能很差。
    4. 序列化:序列化是把数据由内存中的对象(而不是某种具体的格式)转换成字节序列。序列化后就可传输和存储。
        a. 区别于编码:编码是把数据由一种数据格式转换成另一种数据格式。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值