basE91 - converting binary data to ASCII text
Version 0.5.2, (c) 2000-2006 Joachim Henke
basE91 is an advanced method for encoding binary data as ASCII characters. It is similar to UUencode or base64, but is more efficient. The overhead produced by basE91 depends on the input data. It amounts at most to 23% (versus 33% for base64) and can range down to 14%, which typically occurs on 0-byte blocks. This makes basE91 very useful for transferring larger files over binary insecure connections like e-mail or terminal lines.
- Alphabet
As the name suggests, basE91 needs 91 characters to represent the encoded binary data in ASCII. From the 94 printable ASCII characters (0x21-0x7E), the following three ones have been omitted to build the basE91 alphabet:
- (dash, 0x2D) ' (apostrophe, 0x27) \ (backslash, 0x5C)
The translation table is composed of the remaining characters as shown below.
0 A 13 N 26 a 39 n 52 0 65 % 78 > 1 B 14 O 27 b 40 o 53 1 66 & 79 ? 2 C 15 P 28 c 41 p 54 2 67 ( 80 @ 3 D 16 Q 29 d 42 q 55 3 68 ) 81 [ 4 E 17 R 30 e 43 r 56 4 69 * 82 ] 5 F 18 S 31 f 44 s 57 5 70 + 83 ^ 6 G 19 T 32 g 45 t 58 6 71 , 84 _ 7 H 20 U 33 h 46 u 59 7 72 . 85 ` 8 I 21 V 34 i 47 v 60 8 73 / 86 { 9 J 22 W 35 j 48 w 61 9 74 : 87 | 10 K 23 X 36 k 49 x 62 ! 75 ; 88 } 11 L 24 Y 37 l 50 y 63 # 76 < 89 ~ 12 M 25 Z 38 m 51 z 64 $ 77 = 90 "
- Developer
Joachim Henke <digital@he-jo.net>
- Copying
This package is released under the zlib license. See the file COPYING for copying permission.
- See also
Please visit the basE91 home page [http://he-jo.net/base91/] for the latest version and pre-compiled binaries.
