# HG changeset patch # User Christian Urban # Date 1416996943 0 # Node ID 06d5fc15594dd0a7b19becd2c29ffe35006a17b9 # Parent 6f08b13c0242789fc30569cd6ab96455169085c2 updated diff -r 6f08b13c0242 -r 06d5fc15594d handouts/ho09.tex --- a/handouts/ho09.tex Tue Nov 25 15:54:28 2014 +0000 +++ b/handouts/ho09.tex Wed Nov 26 10:15:43 2014 +0000 @@ -1,14 +1,25 @@ \documentclass{article} \usepackage{../style} \usepackage{../langs} -\usetikzlibrary{patterns,decorations.pathreplacing} \begin{document} -\section*{Handout 9 (Zero-Knowledge Proofs)} +\section*{Handout 9 (Static Analysis)} + +If we want to improve the safety and security of our programs, +we need a more principled approach to programming. + -Paper about breaking HiTag2 (gave hash, but cannot verify -it without giving the paper) +\noindent What would be missing in comparison with real +(low-level machine) code? Well, the numbers we assume to be +arbitrary precision, which is not the case in real code. There +basic number formats have a rang and might over-run or +under-run from this range. Our assumption about variables, +does not correspond to actual registers, which are only +limited on real hardware. Obviously, real code has richer +operations than just addition, multiplication and equality. +But this are not really essential limitations of our simple +examples. \end{document} diff -r 6f08b13c0242 -r 06d5fc15594d slides/slides09.pdf Binary file slides/slides09.pdf has changed diff -r 6f08b13c0242 -r 06d5fc15594d slides/slides09.tex --- a/slides/slides09.tex Tue Nov 25 15:54:28 2014 +0000 +++ b/slides/slides09.tex Wed Nov 26 10:15:43 2014 +0000 @@ -3,7 +3,7 @@ \usepackage{../langs} \usepackage{../graphics} \usepackage{../grammar} -\usepackage{soul} +%\usepackage{soul} \makeatletter \newenvironment<>{btHighlight}[1][]