首页 > 编程语言 >加密算法/常见编码

加密算法/常见编码

时间:2024-02-25 14:13:49浏览次数:19  
标签:编码 字节 二进制位 32 常见 算法 加密算法 MD5

MD5
1.MD5算法是单向散列算法的一种。单向散列算法也称为HASH算法,是一种将任意长度的信息压缩至某一固定长度(称之为消息摘要)的函数(该压缩过程不可逆)。在MD5算法中,这个摘要是指将任意数据映射成一个128位长的摘要信息(32位的数字字母混合码)。MD5值是32位或者16位由数字"0-9"和字母"a-f"所组成的字符串。并且其是不可逆的,即从摘要信息无法反向推演中原文。
2.MD5算法无法防止碰撞(collision),因此不适用于安全性认证。
3.但是由于某些MD5破解网站,专门用来查询MD5码,其通过把常用的密码先MD5处理,并将数据存储起来,然后跟需要查询的MD5结果匹配,这时就有可能通过匹配的MD5得到明文,所以有些简单的MD5码是反查到加密前原文的。为了让MD5码更加安全,涌现了很多其他方法,如加盐。 盐要足够长足够乱 得到的MD5码就很难查到。
BASE64
1.BASE64值是由数字"0-9"和字母"a-f"所组成的字符串,大小写敏感,结尾通常有符号=
2.第一步,将待转换的字符串每三个字节分为一组,每个字节占8bit,那么共有24个二进制位。
第二步,将上面的24个二进制位每6个一组,共分为4组。
第三步,在每组前面添加两个0,每组由6个变为8个二进制位,总共32个二进制位,即四个字节。
第四步,根据Base64编码对照表(见下图)获得对应的值。
0 A  17 R   34 i   51 z

1 B  18 S   35 j   52 0

2 C  19 T   36 k   53 1

3 D  20 U   37 l   54 2

4 E  21 V   38 m   55 3

5 F  22 W   39 n   56 4

6 G  23 X   40 o   57 5

7 H  24 Y   41 p   58 6

8 I  25 Z   42 q   59 7

9 J  26 a   43 r   60 8

10 K  27 b   44 s   61 9

11 L  28 c   45 t   62 +

12 M  29 d   46 u   63 /

13 N  30 e   47 v

14 O  31 f   48 w   

15 P  32 g   49 x

16 Q  33 h   50 y
3.Base64字符表中的字符原本用6个bit就可以表示,现在前面添加2个0,变为8个bit,会造成一定的浪费。因此,Base64编码之后的文本,要比原文多大约三分之一。
4.分完组后位数不足用0添,然后如果四个字节里有的字节完全没有数据则用“=”补上,所以经常会有=。
URL编码
URL编码是由数字"0-9"和字母"a-f"所组成的字符串,大小写敏感,通常以%数字字母间隔

标签:编码,字节,二进制位,32,常见,算法,加密算法,MD5
From: https://www.cnblogs.com/ljastudy/p/18032361

相关文章

  • 统信UOS用户登录常见的一些问题
    1.统信UOS忘记开机密码问题描述:在使用统信UOS系统时,忘记登录密码无法进入系统又不想重装系统解决思路:1.需要先了解UOS的版本,和机器架构,制作相同版本的系统启动盘镜像下载资源中心|统信UOS生态社区(chinauos.com) 2.从启动盘启动,在选择安装的界面选中“install”开头......
  • Go语言精进之路读书笔记第33条——掌握Go并发模型和常见并发模式
    不要通过共享内存来通信,而应该通过通信来共享内存。——RobPike33.1Go并发模型CSP(CommunicatingSequentialProcess,通信顺序进程)模型。一个符合CSP模型的并发程序应该是一组通过输入/输出原语连接起来的P的集合。Go始终推荐以CSP模型风格构建并发程序。Go针对CSP模型提供......
  • 图片Base64编码解码的优缺点及应用场景分析
    随着互联网的迅猛发展,图片在网页和移动应用中的使用越来越广泛。而图片的传输和加载往往是网页性能的瓶颈之一。为了解决这一问题,图片Base64编码与解码技术应运而生。本文将介绍图片Base64相互转换的优缺点,以及它可以解决的问题和适用的方面,并提供完整的JavaScript示例。图......
  • 20个改善编码的Python异常处理技巧,让你的代码更高效
    异常处理是写好代码的一个重要的方面,虽然许多开发人员都熟悉基本的try-except块,但是有很多更深入的知识可以使异常处理更高效、更可读和更python化。所以本文将介绍关于Python异常的20个可以显著改善编码的Python异常处理技巧,这些技巧可以让你熟练的掌握Python的异常处理。Python......
  • 『数学记录』测度论学习笔记(一):测度与常见测度基本定义
      在数学中,测度(measure)是对长度、面积、体积等概念的一般化。对于一个可测的(measurable)集合,一个集合可以给出这个集合的“大小”。本文将从简介绍测度的基本定义与一些常见测度。Part1 基本定义  测度通常定义在一个集合的\(\sigma\)-代数(sigma-algebra)上的......
  • 在mapper.xml中编写sql规则和常见函数写法
    在mapper.xml中编写规则和常见函数写法目录在mapper.xml中编写规则和常见函数写法service传到mapper.xml常见查询语句的写法group_concatcasewhenelseendCOALESCEDUAL模糊查询写法关于where1=1xml中不能存在的特殊字符——特殊转义或<![CDATA[]]>sql编写的一些......
  • 常见IO模型
    任何技术的发展都是经过不断的演变迭代的,同样IO模型的演变代表着人们在计算机世界对效率的追求,对不同场景的解决方案,从某种方面来说IO模型的演变也一定程度见证着互联网的发展,随着学习的不断深入,也需要对底层实现原理不断加强。接下来主要针对计算机网络、网络分层模型、网络协议......
  • “卷”出来的那些 10 倍开发者 | 编码人声
       “10倍”这个概念早在我们讨论现代程序员之前就已经存在了。随着各类AICopilot工具的出现,这个词又开始在社交网络中出现——在各类AI技术的加持下,开发者的开发效率和能力边界,能达到十倍提升么?所谓的「10倍开发者」,又体现在哪些方面? 本期节目中,我们邀请了商......
  • 常见dos命令
    常用的Dos命令盘符切换cmd->f:回车即可查看当前目录下的所有文件dir切换目录!cd..-->返回上一层级目录清理屏幕cls(clearscreen)退出终端exitipconfig#查看电脑的ip打开应用calc--->打开计算器mspaint-->打开画图软件notepad-->打开记事本ping命令pin......
  • python中常见的异常 error
    python中常见的异常在python2中可以通过一个模块来查看所有的内置异常,而在python3中就无法查看。>>>importexceptions>>>dir(exceptions)['ArithmeticError','AssertionError','AttributeError','BaseException','BufferError',&#......