原理:

转码过程例子:
3*8=4*6
内存1个字符占8位
转前: s 1 3
先转成ascii:对应 115 49 51
2进制: 01110011 00110001 00110011
6个一组(4组) 011100110011000100110011
然后才有后面的 011100 110011 000100 110011
然后计算机是8位8位的存数 6不够,自动就补两个高位0了
所有有了 高位补0
科学计算器输入 00011100 00110011 00000100 00110011
得到 28 51 4 51
查对下照表 c z E z

  先以“迅雷下载”为例: 很多下载类网站都提供“迅雷下载”的链接,其地址通常是加密的迅雷专用下载地址。
其实迅雷的“专用地址”也是用Base64"加密"的,其过程如下:
一、在地址的前后分别添加AA和ZZ
二、对新的字符串进行Base64编码
另: Flashget的与迅雷类似,只不过在第一步时加的“料”不同罢了,Flashget在地址前后加的“料”是[FLASHGET]
而QQ旋风的干脆不加料,直接就对地址进行Base64编码了
OC 的代码:
// 1. Base 编码格式 一般应用于少量数据的编码// 编码- (NSString *)stringWithBase64 {// 字符串 转 dataNSData *stringData = [self dataUsingEncoding:NSUTF8StringEncoding];// data 进行 base编码, 生成字符串NSString *baseString = [stringData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];return baseString;
}// 解码- (NSString *)base64WithString {// 根据Base64字符串, 生成dataNSData *base64Data = [self base64StringWithData];// 将 data 转为 字符串NSString *orginString = [[NSString alloc] initWithData:base64Data encoding:NSUTF8StringEncoding];return orginString;
}//
- (NSData *)base64StringWithData {return [[NSData alloc] initWithBase64EncodedString:self options:NSDataBase64DecodingIgnoreUnknownCharacters];
}

转载于:https://www.cnblogs.com/mafeng/p/5777819.html

Base64---加密相关推荐

  1. java 和 Android Base64加密

    Java8 Base64 Java 8 新特性 在Java 8中,Base64编码已经成为Java类库的标准. Java 8 内置了 Base64 编码的编码器和解码器. Base64工具类提供了一套 ...

  2. MD5+Base64加密(密码常用加密方式)

    import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import sun.misc.B ...

  3. base64加密原理及python、C语言代码实现

    base64算法 base64加密原理 关于base64,百度百科给出的解释是: Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制 ...

  4. hive 解密_hive 中自定义 base64 加密 解密 UDF 函数

    一.maven依赖 org.apache.hadoop hadoop-client 2.7.3 org.apache.hive hive-exec 1.2.1 org.apache.maven.plu ...

  5. 前台页面Base64加密与服务端Base64解密

    2019独角兽企业重金招聘Python工程师标准>>> 一般对于用户登录的密码,在网络传输的过程中,不会使用明文传送,此处介绍一种简单的加密用户密码信息的方法:Base64加密解密. ...

  6. android Base64加密解密

    // 加密传入的数据是byte类型的,并非使用decode方法将原始数据转二进制,String类型的数据 使用 str.getBytes()即可 String str = "Hello!&q ...

  7. Android网络传输中必用的两个加密算法:MD5 和 RSA 及Base64加密总结

    (1)commons-codec包简介 包含一些通用的编码解码算法.包括一些语音编码器,Hex,Base64.MD5 一.md5.base64.commons-codec包 commons-codec ...

  8. [C#]最简单的Base64加密解密

    /// <summary> /// Base64加密,解密方法 /// </summary> /// <paramname="s">输入字符串& ...

  9. Base64 加密字符串和文件

    代码 using System; namespace shapBse64 {     /// <summary>   /// 有关base64编码算法的相关操作   ///By 自由奔腾( ...

  10. js中实现base64加密、解密

    //base64加密 解密/* //1.加密 var result = Base.encode('125中文'); //--> "MTI15Lit5paH"//2.解密 va ...

最新文章

  1. 预编码 matlab,无线通信-预编码-MATLAB代码合集
  2. linux进程socket通信,linux进程间通信--socket套接字 实例代码
  3. jqprint控件使用
  4. 关于MapReduce中自定义Combine类(一)
  5. 使用AWS CloudWatch 调优Lambda函数 | 技术头条
  6. 【Flink】Flink 写入 MySQL主键冲突 默认Upsert策略
  7. AMD 证实停止向中国提供 x86 新技术授权!
  8. 企业在推行流程管理过程中可能出现以下四个问题
  9. 使用proxy转发post请求_3分钟短文 | Linux 使用curl发起post请求的4个常用方式
  10. 面试官:谈谈分布式一致性机制,我一脸懵逼。。
  11. 《王道》数据结构笔记整理2022
  12. restlet client插件下载
  13. rpgmakermv存档修改网站_NexT 网站配置——雏形初成
  14. 基于荔枝派Lichee Nano(全志f1c100s)的u-boot移植(一)
  15. SecureCRT配置详细图文教程
  16. 怎样卸载deepin系统_双系统卸载deepin的方法是什么_双系统完全卸载deepin的方法图文步骤...
  17. 国内云服务器提供商排名(仅供参考)
  18. 端到端图像压缩《Checkerboard Context Model for Efficient Learned Image Compression》
  19. EMC 双活数据中心实战
  20. Linux访问外网,有图和命令,简单易懂

热门文章

  1. plsql dev中Dynamic Performance Tables not accessible分析解决(转载)
  2. mysql启动报错解决-1
  3. 微软面试题系列(三):求子数组的最大和
  4. 带透明png转换成c数组
  5. SQLite指南(2) -- 帮助及编译SQLite
  6. 如何在升级数据表的同时保留原数据
  7. 在IPCAM上实现RTSP协议直播-live555 转
  8. LeetCode 633. Sum of Square Numbers
  9. 怎么看电脑有没有蓝牙_怎么选购电脑音响?挑选到性价比高的电脑桌面音箱,看完这篇推荐指南就懂了!...
  10. cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration的解决