% IACR Transactions CLASS DOCUMENTATION -- version 0.24 (26 August 2016) % Written by Gaetan Leurent gaetan.leurent@inria.fr (2016) % % To the extent possible under law, the author(s) have dedicated all % copyright and related and neighboring rights to this software to the % public domain worldwide. This software is distributed without any % warranty. % % You should have received a copy of the CC0 Public Domain Dedication % along with this software. If not, see % . \documentclass[preprint]{iacrtrans} \usepackage[utf8]{inputenc} \author{Gaëtan Leurent\inst{1} \and Alice\inst{2} \and Bob\inst{2}} \institute{Inria, France, \email{gaetan.leurent@inria.fr} \and ACME} \title[\texttt{iacrtans} class documentation]{\publname} \subtitle{\LaTeX{} Class Documentation (v. 0.24)} \begin{document} \maketitle % use optional argument because the \LaTeX command breaks the PDF keywords \keywords[\publname, TCHES, LaTeX]{\publname \and TCHES \and \LaTeX} \begin{abstract} This document is a quick introduction to the \LaTeX{} class for the \publname{}. \end{abstract} \section*{Introduction} The \texttt{iacrtans} \LaTeX{} class will be used by the new ``\publname'' journal. The class is based on standard \LaTeX{} classes and packages (mainly the \texttt{article} class with \texttt{amsmath}), and should be similar in use to the \texttt{llncs} class used for Springer's proceedings. The \LaTeX{} source of this documentation is meant as an example to show basic usage of the class. Since we are now preparing the zero-th issue of the journal, the class is still in development and feedback and comments are welcome. \subsection*{\textcolor{red!70!black}{FAQ:} Converting \texttt{llncs} papers to \texttt{iacrtrans}} If you have a paper typeset with the \texttt{llncs} class, conversion should be relatively easy. The following steps should be sufficient in most cases (for the submission version): \begin{enumerate} \item Replace \verb+\documentclass{llncs}+ with\\ \verb+\documentclass[submission,spthm]{iacrtrans}+; \item Replace \verb+\bibliographystyle{splncs03}+ with \verb+\bibliographystyle{alpha}+; \item Add a \verb+\keywords{}+ command before the abstract, with keywords separated by \verb+\and+; \item Remove commands that might override the class style, such as \verb+\pagestyle{...}+ or \verb+\thispagestyle{...}+, change of margins (\emph{e.g.} with the \texttt{geometry} package), change of fonts, .... \item See also \autoref{sec:biblio} for information about how to typeset the bibliography. \end{enumerate} \section{Main Commands} \subsection{Title page} The following commands are used to input informations for the title page. \paragraph{\texttt{\textbackslash title}} to define the title. A shorter running title can be given as optional argument. \paragraph{\texttt{\textbackslash subtitle}} to give an optional subtitle. \paragraph{\texttt{\textbackslash author}} to define the author list. Author names must be delimited by \verb+\and+ macros. If there is one different affiliation for each author, authors and affiliations will be numbered automatically. Otherwise, each author name must be followed by \verb+\inst{...}+ with the corresponding affiliation(s). A shorter list of authors for the running head can be given as optional argument. \paragraph{\texttt{\textbackslash institute}} to give author's affiliation(s). If there are several affiliations, they must be separated by \verb+\and+ macros, and will be numbered automatically. \paragraph{\texttt{\textbackslash keywords}} to give a list of keywords. Individual keywords should be separated by the \verb+\and+ macro. If there are fragile commands in the keywords, use the optional argument to give a text-only version of the keywords; this will be used for the PDF meta-data. \paragraph{\texttt{\textbackslash email}} should be used inside the \verb+\institute+ argument to typeset author's email address(es). An optional argument can be given for the hyperlink, if different from the displayed email. For instance, you can group emails as follows:\\ \verb+\email[alice@foo.com,bob@bob.com]{{alice,bob}@foo.com}+ \paragraph{\texttt{\textbackslash thanks}} can be used inside the \verb+\title+, \verb+\author+ or \verb+\institute+ argument to generate a footnote with additional information, if needed. \paragraph{\texttt{\textbackslash maketitle}} is used to actually typeset the title. \paragraph{The \texttt{abstract} environment} should be used to typeset the abstract. Note that the keywords should be given before starting the abstract environment. \subsection{Theorems} The \texttt{iacrtrans} class uses the \AmS{} packages to typeset math. In particular, it loads the \texttt{amsthm} package, and predefines the following environments: \begin{center} \ttfamily \begin{tabular}{l@{\hspace{1cm}}l@{\hspace{1cm}}l} theorem & definition & remark \\ proposition & example & note \\ problem & exercise & case \\ lemma & property & \\ conjecture & question & \\ corollary & solution & \\ claim & & \\ \end{tabular} \end{center} Note that the \texttt{proof} environment automatically adds a QED symbol at the end of the proof (unless you give option \texttt{[spthm]} to the \texttt{iacrtrans} class). If the QED symbol is typeset at a wrong position, you can force its position with \verb+\qedhere+. \section{Class options} \label{sec:options} \subsection{Publication type} The class supports four publication types, selected with the following class options: \begin{description} \item[\texttt{[final]}] for final papers (default mode) \item[\texttt{[preprint]}] for preprints (without copyright info) \item[\texttt{[submission]}] for submissions (anonymous, with line numbers) \item[\texttt{[draft]}] is similar to preprint, but activates draft mode for the underlying \texttt{article} class (which shows overfull hboxes), and other packages (\emph{e.g.} \texttt{graphicx}, \texttt{hyperref}). \end{description} \subsection{Other Options} \paragraph{\texttt{[spthm]}} provides theorem environments that emulates \texttt{llncs} class's \texttt{sptheorem}: \begin{itemize} \item A \texttt{\textbackslash spnewtheorem} wrapper is provided around \AmS{} \texttt{\textbackslash newtheorem}. Note that the styling options are ignored; you should use standard \texttt{amsthm} commands for fine control. \item The \AmS{} \texttt{proof} environment will not automatically add a QED symbol at the end of the proof. \end{itemize} \paragraph{\texttt{[floatrow]}} uses the \texttt{floatrow} package to customize floats rather than the plain \texttt{float} package. In particular, this allows to typeset floats side by side as shown in this example: \begin{verbatim} \documentclass[floatrow]{iacrtrans} \usepackage[demo]{graphicx} \begin{document} \begin{figure} \begin{floatrow} \ffigbox{\includegraphics[width=0.4\textwidth]{1.png}} {\caption{This is caption 1.}} \ffigbox{\includegraphics[width=0.4\textwidth]{2.png}} {\caption{This is caption 2.}} \end{floatrow} \end{figure} \end{document} \end{verbatim} The row will be divided equally according to the number of figures, but you can ask each figure to take its natural space instead with \verb+\ffigbox[\FBwidth]+. For more advanced use, see the \texttt{floatrow} documentation. \paragraph{\texttt{[nohyperref]}} disables the automatic loading of \texttt{hyperref}. Use this is if your document fails to compile with \texttt{hyperref} for some reason. The \texttt{iacrtrans} class automatically loads \texttt{hyperref} after all other packages. If you need some packages to be loaded \emph{after} \texttt{hyperref}, you should load \texttt{hyperref} explicitly at the correct position, but not use the \texttt{[nohyperref]} option. \section{Typesetting the Bibliography} \label{sec:biblio} % Borrowed from btxdoc.tex \def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} Having good bibliographic references is very important for the visibility of the journal. Since we don't have a commercial editor, authors need to make sure themselves that references are standardized and clean. We strongly encourage authors to use \BibTeX{} for the bibliograpy, using bibliographic data from \url{http://www.dblp.org} or \url{https://cryptobib.di.ens.fr/}. We are still working on a good solution for the bibliography, and we expect to have more specific instructions when producing the final version of the papers, including a dedicated \BibTeX{} style. \section{Further instructions} \paragraph{\LaTeX{} distribution, and worklow.} \LaTeX{} distributions are available on a variaty of platforms. In particular, we recommand the \href{https://www.tug.org/texlive/}{TeX Live} distribution, which is updated regularly, include a large number of packages, and is available on many platforms. \begin{description} \item[Linux:] A LaTeX installation is included in most Linux distributions. Alternatively, \href{https://www.tug.org/texlive/}{TeX Live} can be installed easily without root access. \item[Windows:] There are also good \LaTeX{} distributions for Windows, such as \href{http://www.miktex.org/}{MikTeX} and \href{https://www.tug.org/texlive/}{TeX Live}. \item[MacOSX:] On MacOSX, TeX Live is available inside \href{http://www.tug.org/mactex/}{MacTeX}. \end{description} We recommand the use of \texttt{pdflatex} because it generally supports more features than \texttt{latex} and \texttt{dvips} (\texttt{xelatex} and \texttt{lualatex} are also missing some advanced features from \texttt{pdflatex}). \paragraph{Internal references.} We recommend the use of \verb+\autoref+ from \texttt{hyperref} (automatically loaded by the class). For instance, \verb+\autoref{sec:options}+ links to \autoref{sec:options}. \paragraph{Pictures.} We recommend the use of the \texttt{tikz} package to render pictures. In particular, a large variety of crypto pictures made with \texttt{tikz} is available at \url{http://www.iacr.org/authors/tikz/}. \paragraph{External pictures.} The \texttt{graphicx} is loaded by the class, and is recommended for external figures. If possible, external figures should be in a vector format: you can use PDF files when compiling with \texttt{pdflatex}, and EPS files when compiling with \texttt{latex}, and \texttt{dvips}. Note that the \verb+\includegraphics+ command will automatically select a file with the right extension, so if you write \verb+\includegraphics{figure}+ and have two files \texttt{figure.pdf} and \texttt{figure.eps}, it should work with both workflow. \paragraph{Floats.} Figure captions should be below the figures, and table captions above the tables. The \texttt{float} package loaded by the class should take care of this automatically. If want to have several figures side by side, see the \texttt{[floatrow]} option. \paragraph{Tables.} We recommend the \texttt{booktabs} package to typeset tables. \paragraph{Algorithms.} We recommend the \texttt{algorithm}, \texttt{algorithmcx} packages for algorithms (in particular, \texttt{algpseudocode} for pseudo-code). \section{For the Editor} The following commands should be used by the editor to prepare the final version: \paragraph{\texttt{\textbackslash setfirstpage}} to set the first page number. \paragraph{\texttt{\textbackslash setlastpage}} to set the first page number (optional). \paragraph{\texttt{\textbackslash setvolume}} to set the volume number. \paragraph{\texttt{\textbackslash setnumber}} to set the edition number. \paragraph{\texttt{\textbackslash setDOI}} to set the DOI. \section{Further information} More general information can be found in the following documents: \begin{itemize} \item General \LaTeX{} documentation, such as the \href{http://mirrors.ctan.org/info/lshort/english/lshort.pdf}{(not so) short introduction to \LaTeXe}; % \item The \texttt{article} class % \href{http://mirrors.ctan.org/macros/latex/doc/clsguide.pdf}{documentation}; \item The \AmS-\LaTeX{} \href{http://mirrors.ctan.org/macros/latex/required/amslatex/math/amsldoc.pdf}{documentation} and \texttt{amsthm} \href{ftp://ftp.ams.org/pub/tex/doc/amscls/amsthdoc.pdf}{documentation}; \item Documentation of the \LaTeX{} packages used in the class (see below). \end{itemize} \subsection{Packages used} The class is based on the standard \texttt{article} class, and loads the following packages: \begin{itemize} \item \texttt{geometry}, \texttt{secsty}, \texttt{fancyhdr}, \texttt{mathtools}, \texttt{float}, \texttt{microtype}, \texttt{lastpage} \item \texttt{amsmath}, \texttt{amssymb}, \texttt{amsthm} \item \texttt{graphicx} \item \texttt{hyperref}, \texttt{hyperxmp}, \texttt{etoolbox}, \texttt{xcolor} (unless the \texttt{[nohyperref]} option is used) \item \texttt{lineno} (in \texttt{[submission]} mode) \item \texttt{floatrow,caption} (with option \texttt{[floatrow]}) \end{itemize} \section*{Thanks} We would like to thank people who helped design and improve the class: Anne Canteaut, Jérémy Jean, Bart Preneel, Christian Rechberger, Tyge Tiessen, Friedrich Wiemer. \section*{Changes} \begin{description} \item[v 0.21] First public version \item[v 0.22] Added documentations. Minor tweaks in the class. \item[v 0.23] More documentation. Removed some extra line-numbers with AMS environments in submission mode. Make \verb+autoref+ capitalize sections. Table caption are now above tables. Rewritten running authors and running title. Added PDF info (title, author, keyword). Optional argument for \verb+\email+. Added \texttt{floatrow} option. \item[v 0.24] Added CC licence text, and added XMP metadata. Fixed some metadata transformations. \end{description} \end{document}