handouts/ho09.tex
changeset 335 06d5fc15594d
parent 276 d7109c6e721d
child 337 92a718b88e14
equal deleted inserted replaced
334:6f08b13c0242 335:06d5fc15594d
     1 \documentclass{article}
     1 \documentclass{article}
     2 \usepackage{../style}
     2 \usepackage{../style}
     3 \usepackage{../langs}
     3 \usepackage{../langs}
     4 \usetikzlibrary{patterns,decorations.pathreplacing}
       
     5 
     4 
     6 \begin{document}
     5 \begin{document}
     7 
     6 
     8 \section*{Handout 9 (Zero-Knowledge Proofs)}
     7 \section*{Handout 9 (Static Analysis)}
     9 
     8 
    10 Paper about breaking HiTag2 (gave hash, but cannot verify
     9 If we want to improve the safety and security of our programs,
    11 it without giving the paper)
    10 we need a more principled approach to programming.
       
    11 
       
    12 
       
    13 \noindent What would be missing in comparison with real
       
    14 (low-level machine) code? Well, the numbers we assume to be
       
    15 arbitrary precision, which is not the case in real code. There
       
    16 basic number formats have a rang and might over-run or
       
    17 under-run from this range. Our assumption about variables,
       
    18 does not correspond to actual registers, which are only 
       
    19 limited on real hardware. Obviously, real code has richer
       
    20 operations than just addition, multiplication and equality.
       
    21 But this are not really essential limitations of our simple
       
    22 examples.
    12 
    23 
    13 \end{document}
    24 \end{document}
    14 
    25 
    15 %%% Local Variables: 
    26 %%% Local Variables: 
    16 %%% mode: latex
    27 %%% mode: latex