base64 与 base58 原理简单介绍。

1.base64 字符集 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 + /

原字符串 -> 转化成二进制 -> 一共64个字符 也就是6个bit(2的6次方) 每六个bit对应一个base64字符。也就是原始数(一个字符占一个字节 8个bit)据每3个字节对应 base64的4个字符。如果原始数据的大小字节数不能被三整除就往后面加00000000.后面加的每一个空字节以=表示

2.base58 字符集 相比Base64,Base58不使用数字"0",字母大写"O",字母大写"I",和字母小写"l",以及"+"和"/"符号。也就是少掉了6个

原字符串 -> 转化成二进制 ->大整数 -> 循环对58取余 余数对应字符集的下标取出字符,商替换成原来的大整数 直到商为零 -> 反转结果。

你可能感兴趣的:(base64 与 base58 原理简单介绍。)