• Base64攻略


    Base64编码,是网络传输过程中常用的一种编码,使用预先定义好的64个字符,来编码二进制或文本数据。

    编码原理为:
    将待编码数据依次取出3个字节的数据(共24位),每6位为一个编码单元,编码为4个Base64字符
    例如:
    设编码表(BaseTable)为ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
    那么对字符串abc的编码过程如下:
    1。abc的二进制表示为:
        01100001     01100010    01100011
    2。将其按六位为一个单元拆分为
        011000    010110    001001    100011
        这样得到4个2进制数值
        分别为十进制的24,22,9,35
    3。从编码表中取出分别第25,23,10,36个字符(所有+1,因为下标从0开始)
        组成Base64字串,即YWJj

    每次3个字节循环取出所有数据,分别编码并将结果字串连接
    例如:
    待编码字串为abcqwe
    BaseTable同上
    1。每次取三个字节数据,分别为abc和qwe
    2。将abc编码得到YWJj
    3。将qwe编码得到cXdl
    4。连接编码结果,得到整个字串编码结果YWJjcXdl

    如果最后待编码字串不足3位,以0代替补足三位进行编码,并以=补足编码结果
    例如:
    待编码字串为qweab
    BaseTable同上
    1。每次取三个字节数据,分别为qwe和ab,其中ab不足三位
    3。将qwe编码得到cXdl
    3。将ab编码:
        1。abc的二进制表示为:
            01100001     01100010    
            用0补足后得到:
            01100001     01100010  00000000
        2。按没6bit为一单元进行编码
            011000    010110    001000   000000
        3。前三单元对应编码表YWI,最后一位,用=来代替
        4。编码为YWI=
    4。整体编码为cXdlYWI=


       

  • 相关阅读:
    ABP文档
    ABP框架没有httpPost,httpget,httpput特性
    使用命令关闭占用80端口的程序
    nginx安装编译详解
    docker端口映射设置
    centos6.3安装nginx
    process有个env属性,env属性就是环境变量,里面可以访问到NODE_ENV;NODE_ENV是在启动nodejs时添加上去的;
    使用nssm在windows服务器上部署nodejs
    对象相等与不相等
    可用的CSS文字两端对齐
  • 原文地址:https://www.cnblogs.com/calmzeal/p/379093.html
Copyright © 2020-2023  润新知