cobfusc(1)

This document contains only a brief description of For a more complete documentation, please read the Info file or the T

Section 1 cutils bookworm source

Description

UNTITLED() LOCAL UNTITLED()

NAME

cobfusc — make a C source file unreadable but compilable

SYNOPSIS

cobfusc [-AabdemntxV] [-c case] [-f suffix] [-g file] [-i idobf]
[-o file] [-p prefix] [-r file] [-s seed] [-u file] [-w cols]
[-z file] [file ...]

DESCRIPTION

This document contains only a brief description of cobfusc. For a more complete documentation, please read the Info file or the Texinfo manual.

The cobfusc utility converts the input file, written in the C language, into a human unreadable one, but compilable. The main work is converting every identifier into a meaningless one, removing any comment and compacting all the white-spaces when they are not required.

The options are as follows:

-A

Enable a heavy obfuscation for the source file. This is equivalent to the -ademt -i numeric options. The digraphize option is not enabled by default since the Amendement 1 (1994) changes to ANSI X3.159-1989 (“ANSI C89”) are supported only by few C compilers.

-a

Garble every string with octal escapes.

-b

Enable the digraphize mode.

-c no | lower | upper | screw | random

Set the identifier case obfuscation mode.

-d

Compact the macros removing backslashes and white-spaces when they are not required.

-e

Compact the white-spaces when they are not required.

-f suffix

Put the output of each processed file in a separate file with suffix appended to file name instead of standard output. This is useful when processing a package with a lot of source files.

-g file

Add first the identifiers contained in file to the obfuscation table. Useful when those identifiers are shared between two or more source files.

-i no | numeric | word | random

Set the identifier obfuscation mode.

-m

Strip the comments.

-n

Garble integers with expressions.

-o file

Set the output destination to file.

-p prefix

Specify the prefix to use when generating the identifiers.

-r file

Tell cobfusc that the identifiers contained in file must not be obfuscated.

-s seed

Specify the seed for generating the random numbers.

-t

Enable the trigraphize mode.

-u

Dump the symbol table to file.

-V

Print version information on standard output then exit.

-w

Set the width limit of the output.

-x

Exclusive mode; obfuscate only the identifiers specified by the -g and -z parameters.

-z file

Add the identifiers pairs contained in file to the obfuscation table.

SEE ALSO

cunloop(1), indent(1)

AUTHORS

Sandro Sigala <sandro@sigala.it> GNU July 1, 2001 COBFUSC(1)