base64加密解密算法

base64算法

1)解决的问题:

网络传送渠道不支持所有的字节的传输

2)定义:

base64是一种基于64个可打印的字符来表示二进制数据的表示方法

3)元素:

A-Za-Z0-9+/总共64个字符,这也是base64名称的由来

4)空间利用率:

base64字符是8个位,但只有6位是有用的,左边的两位永远是0

5)方法:

8和6的最小公倍数是24,该算法会3个字符3个字符的解一个字符串,每3个字符用对应的四个字符(base64的64个元素表示),最后不足的位默认为0,如果6位全为0,则为=,因此=只能出现在末尾。

6)eg:A,BC的解码如下所示:

时间: 2024-08-01 10:43:38

base64加密解密算法的相关文章

Base64加密解密算法的C/C++代码实现

base64加密规则如下: Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4*6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论上将要比原来的长1/3. 具体实现方法: 第一个字节,根据源字节的第一个字节处理. 规则:源第一字节右移两位,去掉低2位,高2位补零. 既:00 + 高6位 第二个字节,根据源字节的第一个字节和第二个字节联合处理. 规则如下,第一个字节高6位去掉然后左移四位,第二个字节右移四位 即:源第一字节

android -------- Base64 加密解密算法

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法.可查看RFC2045-RFC2049,上面有MIME的详细规范. Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息.例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数.在其他应

php与java通用AES加密解密算法

php与java通用AES加密解密算法 AES指高级加密标准(Advanced Encryption Standard),是当前最流行的一种密码算法,在web应用开发,特别是对外提供接口时经常会用到,下面是我整理的一套php与java通用的AES加密解密算法. php版代码如下: <?php class CryptAES { protected $cipher = MCRYPT_RIJNDAEL_128; protected $mode = MCRYPT_MODE_ECB; protected

javaScript base64算法的实现 与 java中的base64 加密 解密

前段时间,工作需要,需要用js和java配套的base64算法,奈何没找到,然后网上抄一套.用起来还是很有效的. 闲言少絮,直接上干货. js 版base 64 算法  base64.js var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; //将Ansi编码的字符串进行Base64编码 function encode64(input) { var output = &quo

DES对称加解密、AES RijndaelManaged加解密、Base64加密解密、MD5加密等操作辅助类 EncodeHelper

/// <summary> /// 使用默认加密 /// </summary> /// <param name="strText"></param> /// <returns></returns> public static string DesEncrypt(string strText) /// <summary> /// 使用默认解密 /// </summary> /// <pa

RC4加密解密算法

RC4相对是速度快.安全性高的加密算法.在实际应用中,我们可以对安全系数要求高的文本进行多重加密,这样破解就有一定困难了.如下测试给出了先用RC4加密,然后再次用BASE64编码,这样双重锁定,保证数据信息安全(个人见解,不周之处请谅解!). package com.bao.tools.encryption; import java.io.Console;import java.io.IOException;import java.util.Scanner; import org.junit.T

Base64加密解密原理以及代码实现

1. Base64使用A--Z,a--z,0--9,+,/ 这64个字符.    2. 编码原理:将3个字节转换成4个字节( (3 X 8) = 24 = (4 X 6) )先读入3个字节,每读一个字节,左移8位,再右移四次,每次6位,这样就有4个字节了.    3. 解码原理:将4个字节转换成3个字节.先读入4个6位(用或运算),每次左移6位,再右移3次,每次8位.这样就还原了. Base64是一种非经常见的编码规范,其作用是将二进制序列转换为人类可读的ASCII字符序列,经常使用在需用通过文

Base64加密解密原理以及代码实现(VC++)

Base64加密解密原理以及代码实现 转自:http://blog.csdn.net/jacky_dai/article/details/4698461 1. Base64使用A--Z,a--z,0--9,+,/ 这64个字符.    2. 编码原理:将3个字节转换成4个字节( (3 X 8) = 24 = (4 X 6) )先读入3个字节,每读一个字节,左移8位,再右移四次,每次6位,这样就有4个字节了.    3. 解码原理:将4个字节转换成3个字节.先读入4个6位(用或运算),每次左移6位

介绍三种PHP加密解密算法

PHP加密解密算法 这里主要介绍三种常用的加密解密算法:方法一: 1 /** 2 * @param $string 要加密/解密的字符串 3 * @param string $operation 类型,ENCODE 加密:DECODE 解密 4 * @param string $key 密匙 5 * @param int $expiry 有效期 6 * @return string 7 */ 8 function authcode($string, $operation = 'DECODE',