• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

AWK/H03-May-2022-6652

DOS-asm/H03-May-2022-153142

Java/H03-May-2022-330237

PHP4/H03-May-2022-11393

test/H03-May-2022-10188

LICENSEH A D01-Nov-20061.5 KiB2622

MakefileH A D03-May-2022914 4433

NEWSH A D01-Nov-20062.3 KiB6553

READMEH A D01-Nov-20062.3 KiB7650

base91.1H A D01-Nov-20061.7 KiB5856

base91.cH A D01-Nov-20064.9 KiB160109

base91.hH A D01-Nov-2006561 2914

cli.cH A D01-Nov-20067.3 KiB295238

README

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