美文网首页
加密、编码、压缩、序列化、Hash

加密、编码、压缩、序列化、Hash

作者: Deck方 | 来源:发表于2024-01-03 00:53 被阅读0次

一、加密

1、对称加密

原理:使用秘钥和加密算法对数据进行转换,得到无意义的数据即密文;使用秘钥和解密算法对密文进行逆向转换,得到原数据。
经典算法:DES、AES

2、非对称加密

原理:使用公钥对数据进行加密得到密文;使用私钥对数据进行解密得到原数据。
金典算法:RSA(加密、签名)、DSA(专门用来设计签名)
签名原理:公钥和私钥加密的数据是可以互解的,非对称加密算法中至少有一个私钥,一个或者多个公钥。使用私钥对数据进行签名,可使用公钥解开验证私钥身份。

二、编码

1、Base64编码

Base64:将二进制数据转换成由64个字符组成的字符串的编码算法。包含A-Z,a-z,0-9,+,/共计64个字符。
二进制数据:非文本数据都是二进制数据。

2、URL encoding

三、压缩与解压缩

压缩:把数据换一种方式进行存储,以减小存储空间。
解压缩:把压缩后的数据还原成原先的形式,以便使用。
常见压缩算法:DEELATE、JPEG、MP3
常见图片、音频、视频文件的压缩、.zip文件等

四、序列化

序列化:把数据对象(内存中)转换成字节序列的过程。
反序列化:把字节序列重新转换成内存中的对象。
目的:让内存中的对象可以被存储和传输。

五、Hash

Hash:把任意数据转换成指定大小范围的数据。
作用:摘要、数字指纹。
金典算法:MD5、SHA1、SHA256等。
实际用途:

  • 数据完整性验证。
  • 快速查找:hashCode()和HashMap
  • 保护隐私(密码的非明文传输)

相关文章

  • 【Android】序列化

    序列化 序列化 反序列化 序列化是编码吗? Hash 实际用途 例:在重写equals时必须要重写hashCode...

  • 编码、加密、Hash、序列化、字符集

    密码学 古典密码学 : 起源于古代战争,为了防止书信被截获后重要信息泄漏,人们开始对书信进行加密 移位式加密 : ...

  • 编码、加密和 Hash

    Hash 定义 散列函数(英语:Hash function)又称散列算法、哈希函数,是一种从任何一种数据中创建小的...

  • 笔记-编码,加密,Hash

    涉及内容: 编码解码 Encoding & Decoding 加密解密 Encryption & Decrypti...

  • iOS-归档NSCoding序列化

    归档 归档->数据持久化的方式->加密(把文件加密《不是把数据加密》 归档分为: 1、存储数据(编码、序列化、归档...

  • Redis笔记之hash对象

    hash对象的编码可以是ziplist或者字典。 ziplist编码类型 每个键值对使用两个紧挨在一起的压缩列表节...

  • Android进阶开发 - 编码,加密,Hash

    涉及内容: 编码解码 Encoding & Decoding 加密解密 Encryption & Decrypti...

  • Java拾遗:004 - JDK、Hadoop、Hessian序

    JDK序列化 在分布式架构中,序列化是分布式的基础构成之一,我们需要把单台设备上的数据通过序列化(编码、压缩)后通...

  • PHP小程序

    Hash加密与验证 Hash加密function pass($pass){ $hashpass = passwor...

  • Redis 设计与实现 5:压缩列表 ziplist

    压缩列表是 ZSET、HASH和 LIST 类型的其中一种编码的底层实现,是由一系列特殊编码的连续内存块组成的顺序...

网友评论

      本文标题:加密、编码、压缩、序列化、Hash

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