From cbfddbe9ea618ceffd2ca96780da468d7cecba73 Mon Sep 17 00:00:00 2001 From: Dmytro Bogatov <dmytro@dbogatov.org> Date: Fri, 1 Dec 2017 23:15:28 -0500 Subject: [PATCH] Compile bibliography. Fixes. --- .gitlab-ci.yml | 1 + .vscode/settings.json | 1 + .vscode/tasks.json | 13 ++++++++++ bibliography.tex | 19 ++++++++++++++ build.sh | 38 +++++++++++++++++++++++++--- definitions.tex | 1 + sections/oblivious-memory.tex | 10 ++++++-- sections/overview-of-other-orams.tex | 36 +++++++++++++++++--------- settings.tex | 31 +++++++++++++++++------ 9 files changed, 125 insertions(+), 25 deletions(-) create mode 100644 bibliography.tex diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 61794d8..7b0a9cb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -29,6 +29,7 @@ artifacts: - printf "\providecommand{\\\version}{%s}" $(echo $CI_BUILD_REF | cut -c1-8) > version.tex - ./build.sh - ./build.sh -n -c presentation-with-notes + - ./build.sh -b - mv dist/*.pdf . artifacts: paths: diff --git a/.vscode/settings.json b/.vscode/settings.json index 95962b5..06f46f5 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -50,6 +50,7 @@ "distinguisher", "ensuremath", "eqref", + "exampleblock", "exponentiate", "firstline", "firstnumber", diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 494b29c..bad535a 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -3,6 +3,19 @@ // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ + { + "label": "Compile bibliography", + "type": "shell", + "command": "./build.sh -b", + "group": "build", + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared" + }, + "problemMatcher": [] + }, { "label": "Compile once notes", "type": "shell", diff --git a/bibliography.tex b/bibliography.tex new file mode 100644 index 0000000..89c8c62 --- /dev/null +++ b/bibliography.tex @@ -0,0 +1,19 @@ +% cSpell:disable + +\documentclass{article} + +\usepackage[ + backend=biber, + style=alphabetic, + sorting=ynt +]{biblatex} + +\addbibresource{bibfile.bib} + +\begin{document} + + \nocite{*} + + \printbibliography% + +\end{document} diff --git a/build.sh b/build.sh index c5e8da5..34c34d8 100755 --- a/build.sh +++ b/build.sh @@ -10,7 +10,7 @@ ITERATIONS=3 LATEX_DEBUG="" LATEX_NOTES="" -usage() { echo "Usage: $0 [-i <number> -g -v -t -n -c <string>]" 1>&2; exit 1; } +usage() { echo "Usage: $0 [-i <number> -g -v -t -n -b -c <string>]" 1>&2; exit 1; } log() { if [ -n "${VERBOSE}" ]; then @@ -41,8 +41,40 @@ test() { echo "Tests passed!" } -while getopts "c:i:vgtn" o; do +bibliography () { + + JOBNAME=bibliography + INTERACTION=batchmode + + rm -f ${OUTDIR}/${JOBNAME}.pdf + + echo "Compiling bibliography into ${JOBNAME}.pdf ..." + + for j in `seq 1 2`; + do + xelatex \ + --interaction=${INTERACTION} \ + -output-directory=${OUTDIR} \ + -jobname=${JOBNAME} \ + bibliography.tex + + if [ "$j" == "1" ] + then + biber ${OUTDIR}/${JOBNAME} + fi + done + + rm -f ${OUTDIR}/${JOBNAME}*.{aux,log,out,xwm,toc,nav,snm,bbl,blg,vrb,bcf,xml} + + echo "Done." +} + +while getopts "c:i:vgtnb" o; do case "${o}" in + b) + bibliography + exit 0 + ;; g) DEBUG=true INTERACTION=nonstopmode @@ -107,7 +139,7 @@ log "Done." echo "Removing build files..." -rm -f ${OUTDIR}/*.{aux,log,out,xwm,toc,nav,snm,bbl,blg,vrb,bcf,xml} +rm -f ${OUTDIR}/${JOBNAME}*.{aux,log,out,xwm,toc,nav,snm,bbl,blg,vrb,bcf,xml} log "Done." diff --git a/definitions.tex b/definitions.tex index d2e3158..b4a9b89 100644 --- a/definitions.tex +++ b/definitions.tex @@ -8,6 +8,7 @@ \DeclarePairedDelimiter\floor{\lfloor}{\rfloor} \newsavebox{\mybox} +\newsavebox{\tablebox} \xpatchbibmacro{name:andothers}{% \bibstring{andothers}% diff --git a/sections/oblivious-memory.tex b/sections/oblivious-memory.tex index 9feae6d..fc396c4 100644 --- a/sections/oblivious-memory.tex +++ b/sections/oblivious-memory.tex @@ -1,4 +1,4 @@ -% cSpell:ignore bibfile Goldreich +% cSpell:ignore bibfile Goldreich Dautrich \section{Oblivious Memory} @@ -11,9 +11,15 @@ \pause% \begin{alertblock}{Security vulnerability} - Adversary still sees the \textbf{access pattern}. + Adversary still sees the \textbf{access pattern} --- an ordered sequence of read/write operations on data records. \end{alertblock} + \begin{exampleblock}{Attack example} + Compromising Privacy in Precise Query Protocols~\cite{Dautrich:2013:CPP:2452376.2452397}. + Observe range queries to recover order. + Requires $10^4$ queries to compromise privacy for database of over $10^6$ records. + \end{exampleblock} + \note{ The idea is to build a secure cloud, and more specifically --- secure database. The server is untrusted --- we assume an adversary can read every byte on the disk and track all CPU operations. diff --git a/sections/overview-of-other-orams.tex b/sections/overview-of-other-orams.tex index 3013338..45fce60 100644 --- a/sections/overview-of-other-orams.tex +++ b/sections/overview-of-other-orams.tex @@ -1,25 +1,37 @@ +%cSpell:ignore tablebox + \section{Overview of other ORAMs} \begin{frame}{ORAMs Experimental Evaluation} - \begin{tabular}{ l c c c c } + \begin{lrbox}{\tablebox}% + + \begin{tabular}{ l c c c c } + + \toprule% + + $ORAM$ & Computation & Communication & Server & Client \\ - \toprule% + \midrule% - $ORAM$ & Computation & Communication & Server & Client \\ + Basic-SR & $N \log N$ & $N \log N$ & $N$ & $1$ \\ + IBS-SR & $N$ & $\sqrt{N}$ & $N$ & $\sqrt{N}$ \\ + Basic-HR & $N \log^2 N$ & $N \log^2 N$ & $N \log N$ & $1^b$ \\ + BB-ORAM & $\log^2 N$ & $N \log^2 N$ & $N \log N$ & $1$ \\ + TP-ORAM & $\sqrt{N}$ & $1$ & $N$ & $\sqrt{N} + \frac{N}{B}$ \\ + \textbf{Path-ORAM} & $\bm{\log N}$ & $\bm{1}$ & $\bm{N}$ &\footnote{$\BigO{\log N} \cdot \omega(1) + \BigO{\frac{N}{B}}$} \\ - \midrule% + \bottomrule% - Basic-SR & $N \log N$ & $N \log N$ & $N$ & $1$ \\ - IBS-SR & $N$ & $\sqrt{N}$ & $N$ & $\sqrt{N}$ \\ - Basic-HR & $N \log^2 N$ & $N \log^2 N$ & $N \log N$ & $1^b$ \\ - BB-ORAM & $\log^2 N$ & $N \log^2 N$ & $N \log N$ & $1$ \\ - TP-ORAM & $\sqrt{N}$ & $1$ & $N$ & $\sqrt{N} + \frac{N}{B}$ \\ - \textbf{Path-ORAM} & $\bm{\log N}$ & $\bm{1}$ & $\bm{N}$ &\footnote{$\BigO{\log N} \cdot \omega(1) + \BigO{\frac{N}{B}}$} \\ + \end{tabular} + + \end{lrbox}% + + \begin{center} - \bottomrule% + \scalebox{0.9}{\usebox{\tablebox}} - \end{tabular} + \end{center} Table 2 from~\cite{Chang:2016:ORD:2994509.2994528}. Worst-case scenarios shown. diff --git a/settings.tex b/settings.tex index 575faee..7edb0bc 100644 --- a/settings.tex +++ b/settings.tex @@ -11,7 +11,10 @@ \title{Data-X Talk} % chktex 13 -\subtitle{Path ORAM:\ An Extremely Simple Oblivious RAM Protocol~\cite{DBLP:journals/corr/abs-1202-5150}} +\subtitle{ + Path ORAM:\ An Extremely Simple Oblivious RAM Protocol by \emph{Emil Stefanov} and \emph{Elaine Shi} \\ + \cite{DBLP:journals/corr/abs-1202-5150} % chktex 2 +} \date{Built from \href{https://git.dbogatov.org/bu/PathORAM-Talk/commit/\version}{\emph{\version}} on \today} @@ -19,13 +22,15 @@ \institute{Boston University} -\logo{ - \includegraphics[ - width=1cm, - height=1cm, - keepaspectratio - ]{static/logo.eps}\hspace{325pt}\vspace{-30pt} -} +\ifrelease% + \logo{ + \includegraphics[ + width=1cm, + height=1cm, + keepaspectratio + ]{static/logo.eps}\hspace{325pt}\vspace{-30pt} + } +\fi \addbibresource{bibfile.bib} @@ -70,3 +75,13 @@ } \captionsetup[figure]{labelformat=empty} + +\definecolor{CardinalRed}{RGB}{172,29,55} +\definecolor{Tangerine}{RGB}{247,148,30} + +\setbeamercolor{alerted text}{fg=CardinalRed} +\setbeamercolor{example text}{fg=Tangerine} +{ + \usebeamercolor[fg]{alerted text} + \usebeamercolor[fg]{example text} +} -- GitLab