home *** CD-ROM | disk | FTP | other *** search
- ImCrypt v0.2 alfa
-
- Samenvatting
- ============
-
- ImCrypt is een hulpmiddel voor MS-DOS platforms om het verzenden en ont-
- vangen van met PGP versleutelde berichten via FTN electronische betichten-
- netwerken te vergemakkelijken.
-
- Het zoekt de netmail directory af naar persoonlijke berichten bestemd voor
- of afkomstig van personen wiens naam en adres overeenkomen met de aan het
- systeem bekende namen en adressen. Het isoleert van deze berichten de kale
- tekst van de headers en verborgen informatie en biedt de tekst ter ver- of
- ontsleuteling aan aan PGP. De nieuwe tekst wordt samen met de oude headers
- en de verborgen informatie weer samengevoegd tot een nieuw bericht.
-
- ImCrypt is speciaal gemaakt voor InterMail 2.2. Deze alfa versie werkt
- uitsluitend met InterMail. Latere versies kunnen wel of niet voorzien zijn
- van uitbreidingen die het mogelijk maken samen te werken met andere mailers.
-
- ImCrypt ? geeft een klein helpscherm.
-
-
- Auteursrechtelijke bepalingen
- ==============================
-
- InCrypt mag vrijelijk verspreid worden op iedere wijze, op voorwaarde dat
- alle bijbehorende files tezamen en ongewijzigd worden verspreid. Er mogen
- geen kosten worden berekend, anders dan de blote kosten van de verspreiding
- zelf. Ompakken naar een ander archiefformaat is toegestaan, evenals het
- bijplaatsen van een BBS header. Het verspreiden van anderszijds gewijzigde
- pakketten is niet toegestaan zonder voorafgaande toestemming van de auteur.
-
- Niet commerciel gebruik binnen FidoNet (tm) of fidonetachtige omgevingen
- is gratis. Voor commerciel gebruik dient men van te voren de auteur te
- raadplegen.
-
-
- De broncode
- ===========
-
- De broncode wordt samen met het pakket verspreid. Het voornaamste doel
- van de verspreiding is belangstellenden de mogelijkheid te geven zich er
- zelf van te overtuigen dat er geen gemene truuks in verwerkt zitten die
- het doel van versleuteling teniet zouden doen.
- Ieder ander niet commerciel gebruik van de broncode, inclusief wijzigen
- voor eigen gebruik is toegestaan. Het is echter niet toegestaan gewijzigde
- versies van de broncode te verspreiden zonder voorafgaande toestemming van
- de auteur.
-
-
- De environment variabelen
- =========================
-
- ImCrypt haalt een groot deel van de benodigde informatie uit de InterMail
- configuratiefile FD.SYS. Om deze file te vinden is het nodig dat de
- DOS environment variabele "IM" gezet is en wijst naar de directory waar
- FD.SYS staat. Als ImCrypt vanuit de batch file waarin ook InterMail wordt
- aangeroepen draait, zal er geen probleem zijn. Wordt ImCrypt vanaf de
- commandoregel aangeroepen, dan zal van te voren de variabele "IM" middels
- het DOS commado "SET" gezet moeten worden.
-
- PGP sprint nogal ruim om met environment variabelen. Het kan nodig zijn
- de beschikbare ruimte voor de environment uit te breiden met het DOS
- SHELL commando.
-
-
- ImCrypt vindt de netmail directory, de semaphore directory, de AKA's en
- de namen van de users in FD.SYS.
-
- Voor het ver- en ontsleutelen van berichten roept ImCrypt PGP aan. Daartoe
- zal hij PGP.EXE, de publieke en geheime sleutelring en de wachtwoordzin
- moeten kunnen vinden. Voor een uitleg van deze begrippen, zie het handboek
- van PGP.
-
- Er zijn vijf manieren om ImCrypt te laten weten waar PGP.EXE is.
-
- 1) PGP.EXE staat in de huidige directory.
-
- 2) Via de environment variable "PGPPATH".
-
- 3) Via het DOS path.
-
- 4) Met de "p" optie in de configuratie file IMCRYPT.CFG
-
- 5) Met de "p" optie op de comandoregel.
-
- Als meer dan een van de bovengenoemde methoden actief is, heeft de later in
- dit lijstje genoemde de prioriteit. De tweede methode is alleen bruikbaar
- als PGP.EXE en de sleutelringen in dezelfde directory staan.
-
- Later meer over de configuratiefile IMCRYPT.CFG en de commandoregel.
-
- PGP moet de sleutelringen ergens kunnen vinden. Dat gaat middels de
- environment variabele "PGPPATH". ImCrypt doet niets met deze variabele,
- behalve als een laatste redmiddel om PGP.EXE te localiseren.
-
- Wat ook nog nodig is, is de wachtwoordregel. (pass phrase) Een manier om het
- te doen is de environment variabele "PGPPASS". Lees de documentatie van
- PGP zorgvuldig na over het gebruik van deze variabele. Er zijn risico's
- aan verbonden en die worden goed uitgelegd in de doc van PGP. Het is
- het beste goed op de hoogte te zijn van de eventuele risico's alvorens
- deze methode te gebruiken.
-
- Een andere manier is het gebruik van de "-b" optie in IMCRYPT.CFG of op de
- commandoregel. PGP wordt dan in interactieve mode gestart en vraagt zo nodig
- om de wachtwoordregel of andere informatie. Gebruik dit niet onbemand.
-
-
- De semaphores
- =============
-
- InterMail maakt gebruik van een aantal zogenaamde semaphore files om andere
- programma's op de hoogte te houden van de stand van zaken. ImCrypt houd
- ook rekening met dit mechanisme. IMRESCAN.NOW en IERESCAN.NOW worden van
- een nieuw datum/tijdstempel voorzien als er iets aan de berichten in de
- netmail directiry is gewijzigd.
-
- De semaphore IMRENUM.NOW is iets ingewikkelder. Deze is bedoeld om te voor-
- komen dat in een multitasker of netwerkomgeving twee of meer programma's
- tegelijkertijd proberen berichten in de netmail directory te hernummeren
- of te wijzigen. Hiervoor wordt een file lock gevraagd over een deel van
- de semaphore. Slaagt deze lock, dan kan ImCrypt aan de gang en moeten
- andere programma's zich onthouden van het hernummeren of wijzigen van de
- berichten in de netmail directory. Slaagt de lock niet, dan is er iemand
- anders bezig en moet ImCrypt wachten.
-
- Een probleem is, dat in een single task omgeving de semaphore ook niet
- gelockt kan worden. ImCrypt zou dan ten eeuwige dage blijven wachten.
- Om dit op te lossen is het nodig van te voren te weten of IMRENUM.NOW
- zoganaamd sharable is. Het mechanisme om dit te detecteren werkt als volgt:
-
- Eerst wordt gekeken of SHARE geladen is. Zo ja, dan is de file sharable, zo
- niet, dan wordt gekeken of er mogelijk een netwerk aanwezig is. Er wordt
- getest op de aanwezigheid van MICROSOFT network, Lantastic, Starlan
- extended netbios en IPX. Is een van dezen geladen en staat de semaphore op
- drive F of hoger, dan wordt ook aangenomen dat de semaphore sharable is.
- Merk op dat de OS2 DOS box, SHARE simuleert.
-
- Als niet aan bovenstaande is voldaan, wordt een single task omgeving aan-
- genomen en wordt IMRENUM.NOW genegeerd.
-
- Omdat dit mechaniek niet perfect is en dus soms verkeerd kan uitpakken, is
- het mogelijk de automatiesche detectie uit te schakelen. Met de "+s" optie
- laat men dan weten, ten alle tijden het lock mechanisme voor IMRENUM.NOW te
- willen activeren en met de "-s" optie schakelt met het lock mechanisme uit.
-
- Het log
- =======
-
- ImCrypt voorziet in de mogelijkheid van het bijhouden van een logfile. Met
- de optie "l" schakelt men het log in. Een kale "l" schrijft naar IMCRYPT.LOG.
- Met "l=filespec" kan men een andere naam, eventueel voorzien van een volledig
- pad opgeven. Met "l=*" schrijft men naar de logfile van mailer #1. Dat mag
- alleen als mailer #1 nooit actief is als ImCrypt wordt aangeroepen, anders
- kan er een share violation ontstaan. Met een minteken voor de "l" geeft men
- aan de logfile iedere keer te willen overschrijven, inplaats van de nieuwe
- informatie aan het eind van een bestaande file te schrijven.
-
-
- Hoe werkt het?
- ==============
-
- ImCrypt loopt de netmail directory af op zoek naar berichten aan of van
- de gebruikers van het systeem. Een bericht aan of van een gebruiker van het
- systeem wordt als zodanig herkend als de naam voorkomt in de namen die
- met "users" in de setup van InterMail zijn opgegeven en het bericht is
- geadresseerd aan of met een van de AKA's van het systeem. Bij het vergelijken
- van namen, wordt geen onderscheid gemaakt tussen hoofd- en kleine letters.
-
- Bij het vinden van een uitgaand bericht, dat nog niet gemerkt is met de
- "send" vlag, zal ImCrypt het bericht testen op de eerste regel. Is dat een
- van de vier volgenden:
-
- PGP ENCRYPT
- PGP SIGN ENCRYPT
- PGP SIGN
- PGP CLEARSIG
-
- dan zal ImCrypt de kale tekst van het bericht isoleren en naar een tijdelijke
- file schrijven. Het zelfde gebeurd als een van deze regels gevonden wordt
- als "kludge", dwz verborgen achter een control A teken. In dat geval hoeft
- het niet de eerste regel te zijn. Er is voor zover bekend (nog) geen editor
- die zo'n kludge kan genereren, maar ja, je moet ergens beginnen.
-
- De inhoud van de tijdelijke file wordt aangeboden aan PGP. Die maakt er
- versleutelde tekst van en die wordt samen met de oorspronkelijke headers
- en verborgen regels weer samengesteld tot een nieuw bericht. De regel met
- "PGP xxx" wordt niet naar het nieuwe bericht gecopieerd, In plaats daarvan
- wordt een verborgen regel met alleen "PGP" naar het nieuwe bericht geschre-
- ven. Het oude bericht krijgt de "send" vlag op gezet en het nieuwe bericht
- de "kill-send" vlag. Het oude bericht wordt dus nooit verstuurd en het nieuwe
- versleutelde bericht wordt na het versturen door de mailer verwijderd.
-
- Als ImCrypt een nieuw binnengekomen bericht ontwaard, dat voor ons is
- bestemd en de in-transit vlag staat niet op, dan zal het zoeken naar de
- caracterestieke PGP header van vijf mintekens en de woorden "BEGIN PGP".
-
- Worden die gevonden dan wordt de tekst weer naar een tijdelijke file
- geschreven, waarvan de inhoud ter ontsleuteling aan PGP wordt aangeboden.
- Afhankelijk van het al of niet aanwezig zijn van de "k" (keep) optie,
- wordt het oude bericht overschreven of wordt een nieuw bericht gemaakt
- met de ontsleutelde tekst.
-
- In geval het oude bericht niet wordt overschreven, wordt de eerste van de
- vijf mintekens in het bericht vervangen door een "*", zodat ImCrypt bij
- een eventuele volgende keer niet opnieuw het bericht aan PGP zal aanbieden.
-
- ImCrypt is geschreven met het oogmerk het vanuit de batch aan te roepen.
- De aanroep moet dan geschieden, nadat er nieuwe berichten zijn binnengekomen,
- hetzij vanwege de mailer, hetzij vanwege de tosser. Ook moet ImCrypt
- worden aangeroepen voordat de tosser de te verzende netmail gaat packen of
- voordat de mailer nieuwe berichten gaat versturen.
-
- Het is ook mogelijk ImCrypt met de hand aan te roepen vanaf de DOS prompt
- of vanuit de editor indien die die mogelijkheid heeft. Gebruik in dat
- geval de "-b" optie of zet de "PGPPASS" variabele met de hand met het DOS
- SET commando.
-
- Opties
- ======
-
- De werking van ImCrypt kan worden gestuurd door middel van opties.
-
- Een optie is een letter al of niet gevolgd door een parameter.
- De letter mag voorafgegaan worden door een '/'. Tussen de letter
- en een eventuele parameter mag een '=' of ':' staan. Een minteken
- voor de letter geeft in het algemeen aan dat de betreffende functie wordt
- uitgeschakeld, maar kan in sommige gevallen ook een wijziging van de
- betreffende functie betekenen. Hoofd- en kleine letters zijn toegestaan.
- Meerdere opties worden gescheiden door spaties.
-
- De optie 'l' bijvoorbeeld kan een een van de volgende vormen voorkomen:
-
- lFILENAME.EXT
- l=FILENAAM.EXT
- l:FILENAAM.EXT
- /l:FILENAAM.EXT
- /l=FILENAAM.EXT
- -l
-
- Filenamen mogen met een volledig pad ingegeven worden. In geval een
- directory moet worden ingegeven, is de backslash aan het eind facultatief.
-
- Opties worden meegegeven op de commandoregel, gescheiden door een spatie
- of staan in een ASCII file IMCRYPT.CFG in de werkdirectory. In de config
- file moet 1 optie per regel staan, zonder spaties aan het begin of aan
- het eind. Commentaarregels zijn toegestaan. Die beginnen met een puntcomma.
-
- Een config file is niet verplicht. Is een config file aanwezig, dan wordt
- die gelezen voordat de commandoregel wordt gescand. Opties op de commando-
- regel overschrijven dus de opties in de config file.
-
- In alfabetische volgorde zijn de opties:
-
- -B Schakel batch mode uit. PGP wordt in interactieve mode aangeroepen en
- vraagt zonodig om extra gegevens. Niet gebruiken in onbemande opstelling.
-
- -D Sla het ontsleutelen van binnengekomen berichten over.
-
- -E Sla het versleutelen van uitgaande berichten over.
-
- K Bewaar (keep) binnengekomen versleutelde berichten. de ontsleutelde
- tekst wordt naar een nieuw bericht geschreven. Zonder deze optie
- wordt het bestaande bericht overschreven. Het gebruik van deze optie
- wordt aangeraden voor de ontluisfase.
-
- L Schakel het log mechanisme in. Met een enkele "l" wordt IMCRYPT.LOG
- gebruikt. Een andere naam (en pad) kan worden gegeven met "l=<file>"
- Met "l=*" wordt geschreven naar het log van mailer #1. Doe dat alleen
- als mailer #1 nooit actief is als ImCrypt wordt aangeroepen.
- Een minteken voor de "l" zorgt er voor dat de logfile iedere keer
- wordt overschreven in plaats van dat de informatie aan het eind van
- de bestaande file wordt toegevoegd.
-
- P Geef een pad naar PGP.EXE. Als PGP niet in het DOS pad staat, geeft
- men met "p=<directory>" aan waar PGP.EXE dan wel staat. Wordt deze optie
- niet gebruikt en staat PGP ook niet in het DOS pad, dan zal ImCrypt
- zoeken in de directory waar ook de sleutels staan. Faalt dat ook, dan
- zal als laatste de huidige directory doorzocht worden.
-
- -S Schakelt het mechanisme voor het behandelen van de IMRENUM.NOW sema-
- phore uit.
-
- +S Schakelt het mechanisme voor het behandelen van IMRENUM.NOW in, ook al
- meent ImCrypt dat de semaphore niet shareble is.
-
- T Geef een directory voor tijdelijke files. Zowel ImCrypt als PGP maken
- gebruik van tijdelijke files. Een andere manier om de tijdelijke files
- op een bepaalde plaats te krijgen is door middel van de "TMP" environ-
- ment variabele. Bij verstek plaatst ImCrypt tijdelijke files in
- dezelfde directory als de semaphores. Het gebruik van een ramdisk
- voor de tijdelijke files wordt aanbevolen.
-
- V (verbosity) Hiermee kan men de breedsprakigheid van ImCrypt beinvloeden.
- Zonder deze optie staat die op 0. Met V=0, V=1 of V=2, kan men extra
- informatie naar het scherm laten schrijven voor foutzoekdoeleinden.
-
-
- ImCrypt is geschreven in Turbo C en gecompileerd met het tiny model.
- Het is getest op 286 en 386 MS-DOS platforms draaiend met MS-DOS 5.0.
- Het is ook getest onder Novell 3.11. Er worden geen gekke dingen gedaan,
- dus er is geen reden om te veronderstellen dat het onder andsere DOS versie
- hoger dan 3.2 of met andere netwerken niet zou draaien, maar dit is niet
- getest.
-
-
- ImCrypt is getest met InterMail 2.25. Tenzij de structuur van FD.SYS
- drastiesch gewijzigd wordt, zal het met volgende versies ook nog wel
- werken. Het zal niet werken met vroegere versies van InterMail die nog
- geen 20 AKA's ondersteunden.
-
-
- VRIJWARING
- ==========
-
- Alhoewel alle mogelijke moeite is gedaan om ongewenste neveneffecten te
- vermijden, aanvaardt de auteur geen enkele verantwoordelijkheid voor
- eventuele schade die voortvloeit uit het gebruik van ImCrypt. Als het
- wordt geinstaleerd, neemt het schijfruimte in beslag. Alles wat het nog
- meer doet is mooi meegenomen.
-
-
- ========
-
- Fidonet is een handelmerk van Tom Jennings.
-
- InterMail is een handelsmerk van Scandinavian PC sytems en Interzone
- software inc.
-
- MS-DOS, OS2 en Windows zijn handelsmerken van Microsoft corporation.
-
- Lantastic is een handelsmerk van Artisoft corporation.
-
- IPX is een product van Novell inc.
-
- PGP (Pretty Good Privacy) is geschreven door Phillip Zimmermann.
-
- =======
-
- De volgende personen worden bedankt voor het aanleveren van suggesties,
- het opsporen van fouten en hulp bij het testen van ImCrypt.
-
- Evert Bruinsma.
-
- =========
-
- Michiel van der Vlist (2:500/9.5)
- Dec 1993
-
-
-
-
-
-
-
-
-