📄 readme
字号:
DES-Linux 1.0 10/04/93 Public-domain DES library, commands, and utilities for Linux (With SunOS-Compatible des(1))(Modified by Chris Cappuccio (chris@g386bsd.first.gmd.de) for Linux)The DES functions in libdes.a are defined in des(3). Various twitchesand such have been made to this DES package, it should compile onany operating system that uses a standard C compiler. (It likes GCC,I know that for sure :) It has been optimized and configured for Linux,using the following environment: o Linux kernel version 0.99.13 o GCC version 2.4.5 o Libc version 4.4.1It should compile sweetly under any version of Linux, newer or older.Not to mention *BSD, Ultrix, SunOS(Why?), SVR?, etc... Running DOSwith DJGPP, I bet you can at least get des(1) working, so you canexchange data between DOS<->Linux<->SunOS in a somewhat secure manner(Our des(1) is compatible with the SunOS version thereof). It seemsfun to play around with some of this stuff anyways. Note that DOS userswill need to compile in test/getopt.c if they have no getopt() function.This package includes: des(1): (/usr/bin/des) A program compatible with SunOS des(1) to encrypt files using DES encryption routines. des(3): (/usr/lib/libdes.a) A library of des functions, defined in the des(3) man page. ('man 3 des' will show you this page) radlogin: (/bin/radlogin) A login program for secure login over over insecure channels (such as packet radio). Defined in detail below. descalc: (/usr/bin/descalc) Used with radlogin to encrypt/decrypt challenges with the key listed in /etc/rkeys. Defined in detail below. descert: (/usr/bin/descert) Used to test the des(3) library functions for validity. descycle: (/usr/bin/descycle) Investigate cycles in DES output feedback mode. benchmark: (/usr/bin/benchmark) Run a DES loop consuming CPU time, useful for benchmark tests. test/: This directory contains unfinished and somewhat useless programs that were some of Phil's ideas. I may hack on them if I gain interest :). Look for one of these in version 1.1.Here are the basic steps to getting this DES implementation workingon a normal Unix system:1. 'make certify' - It should give you a screen full of K: 0001... P: 33895... C: 39393... OKIf it says 'Encrypt FAIL' instead of 'OK', you have your byte-orderset wrong. Take -DLITTLE_ENDIAN from the 'CFLAGS' in Makefile.2. Make sure you are root and 'make install' This step will compile everything and install it in the proper place (/usr/bin for all utilities except radlogin, /bin for radlogin, /usr/lib for libdes, and /usr/man/manX for the manual pages)If you do not have root/superuser access and you wish to install desfor your own use, type 'make all' and this will make and test des,leaving it in the current directory.Usage Example:Say you want to encrypt the file credit-history.1092, here's how you woulddo it:john$ des -e < credit-history.1092 > credit-history.1092.desEnter key:<enter your secret key, (make up a good one!) it won't show up as you type it>Enter key again:<enter it again>john$ rm credit-history.1092Say you want it back in readable form:john$ des -d < credit-history.1092.des > credit-history.1092Enter key:<use the same key you did last time>Enter key again:<again...>join$Now your credit-history.1092 file is restored.Public-domain DES commands, library and utilities by Phil Karn, KA9QThis file last updated 21 Dec 1987 (Updated 04 Oct 1993 by chris-)The Makefile compiles everything and runs test data (from the NBScertification suite) through DES. Everying runs as-is under Linux andmost other Unixes. For DOS, change the name of the console in getpass.c.For big-endian machines like Pyramid and the 68000 (Macintosh, Sun, Amiga),comment out the definition of LITTLE_ENDIAN in the makefile. DEC VAXen andthe Intel 8086 family (IBM PC) are little-endian, so this definition shouldbe left in for them regardless of the operating system. If you get thebyte order wrong, the test output in "certify" will say "ENCRYPT FAIL"instead of "OK"; just change the flag and recompile.The des executable (source in main.c) is an encrypt/decrypt filtercompatible with Sun's des command.Radlogin is an experimental program for secure login over insecurechannels (like packet radio). It runs under Berkeley UNIX only. Makeit the shell for a special, password-free login (e.g., "radio"). Whenit starts the user will be asked his REAL login name, which is thenlooked up in /etc/rkeys. (This file must be protected since it containsDES keys). The time of day is then printed in hex as a challenge, andthe user must encrypt it using DES and his key and type the answer back. The user uses the program "descalc" to perform his local calculation.All this is very clumsy; it requires manual retyping of the challengein plain and ciphertext form. Ideally this should be part of net.exe(Phil Karn's networking package for DOS), invoked perhaps by a specialtelnet option after the user's name is entered. If the client telnetrefuses the option, it sends an ordinary password prompt; otherwise itdoes the authentication and bypasses the password. The format of /etc/rkeys is as follows:user_name<sp>DES_key_in_hexkarn 0123456789abcdefn4hy fedcba987654321This is all experimental, of course; improvements are most welcome.Phil
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -