Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

setlocale(3C)



isencrypt(3G)     MISC. REFERENCE MANUAL PAGES      isencrypt(3G)



NAME
     isencrypt  -  determine  whether  a  character   buffer   is
     encrypted

SYNOPSIS
     cc [flag ...] file ...  -lgen [library ...]

     #include <libgen.h>

     int isencrypt (const char *fbuf, size_t ninbuf);

DESCRIPTION
     isencrypt uses heuristics to determine whether a  buffer  of
     characters  is  encrypted.   It  requires  two  arguments: a
     pointer to an array of characters and the number of  charac-
     ters in the buffer.

     isencrypt assumes that the file is not encrypted if all  the
     characters  in  the  first  block  are ASCII characters.  If
     there are non-ASCII characters in the first  ninbuf  charac-
     ters,  isencrypt assumes that the buffer is encrypted if the
     setlocale LC_CTYPE category is set to C or ascii.

     If the LC_CTYPE category is set to a value other than  C  or
     ascii,  then  isencrypt  uses a combination of heuristics to
     determine if the buffer is  encrypted.   If  ninbuf  has  at
     least  64 characters, a chi-square test is used to determine
     if the bytes in the buffer have a uniform distribution;  and
     isencrypt  assumes  the  buffer is encrypted if it does.  If
     the buffer has less than 64 characters, a check is made  for
     null  characters  and  a  terminating  new-line to determine
     whether the buffer is encrypted.

DIAGNOSTICS
     If the buffer is encrypted, 1 is returned; otherwise zero is
     returned.

SEE ALSO
     setlocale(3C).
















                          Last change:                          1



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026