From 2ad1a2fae027aa6c1f4c1259574b5aa506f833a8 Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Fri, 24 Feb 2012 16:56:17 +0100 Subject: minor fixes; [doc] example of two-pass filter --- doc/context/third/enigma/enigma_manual.tex | 50 +++++++++++++++++++++++++++--- 1 file changed, 46 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/context/third/enigma/enigma_manual.tex b/doc/context/third/enigma/enigma_manual.tex index 281ae93..efb4fe2 100644 --- a/doc/context/third/enigma/enigma_manual.tex +++ b/doc/context/third/enigma/enigma_manual.tex @@ -1,4 +1,10 @@ -\startdocchapter[title=Example: Encrypted Document] +\startdocchapter[title=Usage] + +\startdocsection[title=Loading the Module/Package] + \TODO{instuctions for plain, latex + ctx} +\stopdocsection + +\startdocsection[title=Basic Functionality] Encrypt the text of your document using the script interface. For a start try out the settings as given in below listing. @@ -9,11 +15,11 @@ mtxrun --script mtx-t-enigma \ day_key = B I II III 01 01 01, \ rotor_setting = xyz, \ verbose=0" \ - --text="Nobody can read this." + --text="Gentlemen don’t read each other’s mail, Mr. Turing\!" \stoptyping This will result in the thoroughly scrambled string -\type{zdkbxwwnwkazpokvgr}. +\type{omribshpwfrfjovkntgqgiabbkhjpxmhdztapkatwrvf}. Then, use the same settings you encrypted the text with in your document. @@ -30,7 +36,7 @@ document. \starttext \startsecretmessage -zdkbxwwnwkazpokvgr + omribshpwfrfjovkntgqgiabbkhjpxmhdztapkatwrvf \stopsecretmessage \stoptext @@ -41,6 +47,42 @@ reappear. Notice that punctuation is substituted with the letter “x” before encryption and that spaces are omitted. +\stopdocsection + +\startdocsection[title=Uses and Abuses] + +In \LUATEX, \identifier{callback}s may stack. This allows filtering the +input through many enigma machines successively. For instance, in the +following listing, two instances of the same machine are generated and +applied. + +\startcontexttyping +\usemodule[enigma] %% load the module +\defineenigma [secretmessage] %% generate and +\setupenigma [secretmessage] [ %% configure a machine + other_chars = ok, + day_key = B IV V II 01 01 01 AD CN ET FL GI JV KZ PU QY WX, + rotor_setting = foo, + verbose=3, +] + +%% now, copy the first machine’s settings +\defineenigma [othermessage] [secretmessage] + +%% here we go! +\starttext + +\startothermessage %% enable machine 1 +\startsecretmessage %% enable machine 2 while no 1 is active +Encryption equals decryption. +\stopothermessage +\stopsecretmessage + +\stoptext \endinput +\stopcontexttyping + +\stopdocsection + \stopdocchapter \startdocchapter[title=Acknowledgements] -- cgit v1.2.3