├── .gitignore ├── README.md ├── fonts ├── GT-America-Mono-Regular.eot ├── GT-America-Mono-Regular.ttf ├── GT-America-Mono-Regular.woff ├── GT-America-Mono-Regular.woff2 ├── basis-grotesque-medium.eot ├── basis-grotesque-medium.ttf ├── basis-grotesque-medium.woff └── basis-grotesque-medium.woff2 ├── makefile ├── pdf ├── advisors.pdf ├── chats-alternative.pdf ├── chats.pdf ├── company.pdf ├── content.pdf ├── daily-compensation.pdf ├── decrypt-umbral.pdf ├── decrypt.pdf ├── delegate.pdf ├── employees.pdf ├── encrypt.pdf ├── file-sharing-alternative.pdf ├── file-sharing-tls-alternative.pdf ├── file-sharing-tls.pdf ├── file-sharing.pdf ├── founders.pdf ├── investors.pdf ├── nucypher_logo.pdf ├── nufhe-benchmarks.pdf ├── permissioned-sss.pdf ├── permissioned.pdf ├── pke-multi-hack.pdf ├── pke-multi.pdf ├── pre-kms.pdf ├── pre-multi.pdf ├── pre.pdf ├── prenodes.pdf ├── projects.pdf ├── security-audits.pdf ├── sputnik-tweet.pdf ├── streams-alternative.pdf ├── streams.pdf ├── terminal.pdf ├── total-compensation.pdf ├── umbral-kem-flow.pdf ├── umbral-kem-flow.png └── umbralnodes.pdf ├── slides.pdf ├── slides.tex ├── svg ├── chats-alternative.svg ├── chats.svg ├── company.svg ├── content.svg ├── decrypt-umbral.svg ├── decrypt.svg ├── delegate.svg ├── encrypt.svg ├── file-sharing-alternative.svg ├── file-sharing-tls-alternative.svg ├── file-sharing-tls.svg ├── file-sharing.svg ├── investors.svg ├── nucypher_logo.svg ├── nufhe-benchmarks.svg ├── permissioned-sss.svg ├── permissioned.svg ├── pke-multi-hack.svg ├── pke-multi.svg ├── pre-kms.svg ├── pre-multi.svg ├── pre.svg ├── prenodes.svg ├── projects.svg ├── security-audits.svg ├── sputnik-tweet.svg ├── streams-alternative.svg ├── streams.svg ├── terminal.svg └── umbralnodes.svg └── template.tex.base /.gitignore: -------------------------------------------------------------------------------- 1 | # ignore template.tex file since it will be modified for event-specific slides 2 | template.tex 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # NuCypher Slides 2 | 3 | ## Build Requirements 4 | * Inkscape: 5 | * XeLaTeX 6 | 7 | ## Generating Slides for a Specific Event 8 | 9 | ### Branching 10 | In order for the event-specific branches to be easily differentiated from the base branches eg. master, enterprise, please follow the following format `__` i.e. 11 | 1. Start with an underscore 12 | 2. Date: yyyy_mm_dd 13 | 3. Event name 14 | 15 | _*each separated with and underscore_ 16 | 17 | For Example: `_2018_10_05_ETHBerlin` 18 | 19 | ### Building 20 | 21 | 1. Copy `template.tex.base` to `template.tex` - **do not edit** `template.tex.base` 22 | 2. Edit the template.tex file accordingly for the specific event. 23 | 24 | For example: 25 | ``` 26 | \newcommand{\presenter}{MacLane Wilkison, CEO \& Co-Founder} 27 | \newcommand{\presenterfooter}{MacLane} 28 | \newcommand{\titlefooter}{NuCypher} 29 | \newcommand{\emailname}{maclane} 30 | \newcommand{\event}{Eth SF} 31 | \newcommand{\eventdate}{05 Oct 2018} 32 | ``` 33 | _NOTE: Some special characters may need to be escaped using '\\'._ 34 | 35 | 3. Run `make` 36 | 37 | 38 | -------------------------------------------------------------------------------- /fonts/GT-America-Mono-Regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/GT-America-Mono-Regular.eot -------------------------------------------------------------------------------- /fonts/GT-America-Mono-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/GT-America-Mono-Regular.ttf -------------------------------------------------------------------------------- /fonts/GT-America-Mono-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/GT-America-Mono-Regular.woff -------------------------------------------------------------------------------- /fonts/GT-America-Mono-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/GT-America-Mono-Regular.woff2 -------------------------------------------------------------------------------- /fonts/basis-grotesque-medium.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/basis-grotesque-medium.eot -------------------------------------------------------------------------------- /fonts/basis-grotesque-medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/basis-grotesque-medium.ttf -------------------------------------------------------------------------------- /fonts/basis-grotesque-medium.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/basis-grotesque-medium.woff -------------------------------------------------------------------------------- /fonts/basis-grotesque-medium.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/fonts/basis-grotesque-medium.woff2 -------------------------------------------------------------------------------- /makefile: -------------------------------------------------------------------------------- 1 | SVG = $(wildcard svg/*.svg) 2 | PDF = $(SVG:svg/%.svg=pdf/%.pdf) 3 | 4 | all: $(PDF) slides.pdf 5 | 6 | slides.pdf: template.tex slides.tex 7 | xelatex slides.tex && xelatex slides.tex && rm -f *.aux *.log *.nav *.toc *.out *.snm *.vrb 8 | 9 | $(PDF): pdf/%.pdf: svg/%.svg 10 | inkscape "$<" --export-pdf="$@" 11 | 12 | 13 | -------------------------------------------------------------------------------- /pdf/advisors.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/advisors.pdf -------------------------------------------------------------------------------- /pdf/chats-alternative.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/chats-alternative.pdf -------------------------------------------------------------------------------- /pdf/chats.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/chats.pdf -------------------------------------------------------------------------------- /pdf/company.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/company.pdf -------------------------------------------------------------------------------- /pdf/content.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/content.pdf -------------------------------------------------------------------------------- /pdf/daily-compensation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/daily-compensation.pdf -------------------------------------------------------------------------------- /pdf/decrypt-umbral.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/decrypt-umbral.pdf -------------------------------------------------------------------------------- /pdf/decrypt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/decrypt.pdf -------------------------------------------------------------------------------- /pdf/delegate.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/delegate.pdf -------------------------------------------------------------------------------- /pdf/employees.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/employees.pdf -------------------------------------------------------------------------------- /pdf/encrypt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/encrypt.pdf -------------------------------------------------------------------------------- /pdf/file-sharing-alternative.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/file-sharing-alternative.pdf -------------------------------------------------------------------------------- /pdf/file-sharing-tls-alternative.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/file-sharing-tls-alternative.pdf -------------------------------------------------------------------------------- /pdf/file-sharing-tls.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/file-sharing-tls.pdf -------------------------------------------------------------------------------- /pdf/file-sharing.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/file-sharing.pdf -------------------------------------------------------------------------------- /pdf/founders.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/founders.pdf -------------------------------------------------------------------------------- /pdf/investors.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/investors.pdf -------------------------------------------------------------------------------- /pdf/nucypher_logo.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/nucypher_logo.pdf -------------------------------------------------------------------------------- /pdf/nufhe-benchmarks.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/nufhe-benchmarks.pdf -------------------------------------------------------------------------------- /pdf/permissioned-sss.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/permissioned-sss.pdf -------------------------------------------------------------------------------- /pdf/permissioned.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/permissioned.pdf -------------------------------------------------------------------------------- /pdf/pke-multi-hack.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/pke-multi-hack.pdf -------------------------------------------------------------------------------- /pdf/pke-multi.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/pke-multi.pdf -------------------------------------------------------------------------------- /pdf/pre-kms.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/pre-kms.pdf -------------------------------------------------------------------------------- /pdf/pre-multi.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/pre-multi.pdf -------------------------------------------------------------------------------- /pdf/pre.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/pre.pdf -------------------------------------------------------------------------------- /pdf/prenodes.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/prenodes.pdf -------------------------------------------------------------------------------- /pdf/projects.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/projects.pdf -------------------------------------------------------------------------------- /pdf/security-audits.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/security-audits.pdf -------------------------------------------------------------------------------- /pdf/sputnik-tweet.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/sputnik-tweet.pdf -------------------------------------------------------------------------------- /pdf/streams-alternative.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/streams-alternative.pdf -------------------------------------------------------------------------------- /pdf/streams.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/streams.pdf -------------------------------------------------------------------------------- /pdf/terminal.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/terminal.pdf -------------------------------------------------------------------------------- /pdf/total-compensation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/total-compensation.pdf -------------------------------------------------------------------------------- /pdf/umbral-kem-flow.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/umbral-kem-flow.pdf -------------------------------------------------------------------------------- /pdf/umbral-kem-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/umbral-kem-flow.png -------------------------------------------------------------------------------- /pdf/umbralnodes.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/pdf/umbralnodes.pdf -------------------------------------------------------------------------------- /slides.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nucypher/slides/6be210fba8798211bc71a2d3085f42bf826092eb/slides.pdf -------------------------------------------------------------------------------- /slides.tex: -------------------------------------------------------------------------------- 1 | \documentclass[xetex,mathsans,sans,aspectratio=169]{beamer} 2 | \usepackage{listings} 3 | \usetheme{Boadilla} 4 | \usecolortheme{orchid} 5 | \usepackage{fontspec} 6 | \setsansfont{Basis Grotesque} 7 | \setbeamertemplate{navigation symbols}{} 8 | \usepackage{amsmath} 9 | \usepackage{multicol} 10 | 11 | \input{template.tex} 12 | 13 | \title[\titlefooter]{\includegraphics[width=5.5cm]{pdf/nucypher_logo.pdf}} 14 | \author[\presenterfooter]{\presenter} 15 | \date[\eventdate]{\event, \eventdate} 16 | 17 | \begin{document} 18 | \begin{frame} 19 | \titlepage 20 | \end{frame} 21 | 22 | \begin{frame} 23 | \frametitle{Public Key Encryption (PKE)} 24 | \begin{figure} 25 | \centering 26 | \includegraphics<1>[width=11cm]{pdf/pke-multi.pdf} 27 | \includegraphics<2>[width=11cm]{pdf/pke-multi-hack.pdf} 28 | \end{figure} 29 | \end{frame} 30 | 31 | \begin{frame} 32 | \frametitle{What is proxy re-encryption (PRE)} 33 | \begin{figure} 34 | \centering 35 | \includegraphics[width=13cm]{pdf/pre-multi.pdf} 36 | \end{figure} 37 | \end{frame} 38 | 39 | \begin{frame} 40 | \frametitle{Solution} 41 | \framesubtitle{Proxy re-encryption + Key Management} 42 | \begin{figure} 43 | \centering 44 | \includegraphics[height=6.5cm]{pdf/pre-kms.pdf} 45 | \end{figure} 46 | \end{frame} 47 | 48 | \begin{frame} 49 | \frametitle{Centralized KMS using PRE} 50 | \framesubtitle{Encryption} 51 | \begin{figure} 52 | \centering 53 | \includegraphics[height=7cm]{pdf/encrypt.pdf} 54 | \end{figure} 55 | \end{frame} 56 | 57 | \begin{frame} 58 | \frametitle{Centralized KMS using PRE} 59 | \framesubtitle{Access delegation} 60 | \begin{figure} 61 | \centering 62 | \includegraphics[height=7cm]{pdf/delegate.pdf} 63 | \end{figure} 64 | \end{frame} 65 | 66 | \begin{frame} 67 | \frametitle{Centralized KMS using PRE} 68 | \framesubtitle{Decryption} 69 | \begin{figure} 70 | \centering 71 | \includegraphics[height=7cm]{pdf/decrypt.pdf} 72 | \end{figure} 73 | \end{frame} 74 | 75 | \begin{frame} 76 | \frametitle{Decentralized Key Management} 77 | \framesubtitle{Using threshold split-key re-encryption (Umbral)} 78 | \begin{figure} 79 | \centering 80 | \includegraphics[height=6.5cm]{pdf/decrypt-umbral.pdf} 81 | \end{figure} 82 | \end{frame} 83 | 84 | \begin{frame} 85 | \frametitle{Umbral: Threshold Proxy Re-encryption} 86 | \begin{itemize} 87 | \item \emph{``Umbral''} is Spanish for \emph{``threshold''} 88 | \item PRE properties: Unidirectional, single-hop, non-interactive 89 | \item Follows a KEM/DEM approach: 90 | \begin{itemize} 91 | \item UmbralKEM provides the threshold re-encryption capability 92 | \item Uses ECIES for key encapsulation with ZK proofs of correctness for verifiability on prime order curves (such as secp256k1) 93 | \item DEM can be any authenticated encryption (currently ChaCha20-Poly1305) 94 | \end{itemize} 95 | \item IND-PRE-CCA security 96 | \item Key splitting is analogous to Shamir Secret Sharing 97 | \item Verification of re-encryption correctness through Non-Interactive ZK Proofs 98 | \item Reference implementation: \url{https://github.com/nucypher/pyUmbral} 99 | \item Documentation: \url{https://github.com/nucypher/umbral-doc} 100 | \end{itemize} 101 | \end{frame} 102 | 103 | \begin{frame} 104 | \frametitle{KMS Network: Data Sharing + PKE} 105 | \begin{figure} 106 | \centering 107 | \includegraphics[height=5.5cm]{pdf/permissioned.pdf} 108 | \end{figure} 109 | \begin{itemize} 110 | \item Single node has access to data 111 | \item Single node can deny to do work 112 | \end{itemize} 113 | \end{frame} 114 | 115 | \begin{frame} 116 | \frametitle{KMS Network: Data Sharing + PKE + Shamir Secret Sharing} 117 | \begin{figure} 118 | \centering 119 | \includegraphics[height=5.5cm]{pdf/permissioned-sss.pdf} 120 | \end{figure} 121 | \begin{itemize} 122 | \item Nodes can collude to gain access to data 123 | \end{itemize} 124 | \end{frame} 125 | 126 | \begin{frame} 127 | \frametitle{KMS Network: Data Sharing + PRE} 128 | \begin{figure} 129 | \centering 130 | \includegraphics[height=5.5cm]{pdf/prenodes.pdf} 131 | \end{figure} 132 | \begin{itemize} 133 | \item Single node collusion with receiver possible 134 | \item Single node can deny to do work 135 | \end{itemize} 136 | \end{frame} 137 | 138 | \begin{frame} 139 | \frametitle{KMS Network: Data Sharing + Threshold PRE (Umbral)} 140 | \begin{figure} 141 | \centering 142 | \includegraphics[height=5.5cm]{pdf/umbralnodes.pdf} 143 | \end{figure} 144 | \begin{itemize} 145 | \item Collusion now requires $m$ nodes + receiver 146 | \end{itemize} 147 | \end{frame} 148 | 149 | \begin{frame} 150 | \frametitle{NU Token} 151 | \framesubtitle{Purpose} 152 | \begin{itemize} 153 | \setlength\itemsep{1em} 154 | \item Splitting trust across re-encryption nodes 155 | \begin{itemize} 156 | \item More tokens = more trust, more work, and more compensation 157 | \end{itemize} 158 | \item Proof of Stake for minting new coins according to the mining schedule 159 | \item Security deposit at stake against malicious behavior of nodes 160 | \end{itemize} 161 | \end{frame} 162 | 163 | \begin{frame} 164 | \frametitle{Data Sharing Policies} 165 | \begin{itemize} 166 | \setlength\itemsep{1em} 167 | \item Time-based 168 | \item Conditional on payment 169 | \begin{itemize} 170 | \item ``Grant access once paid, continue granting while paying'' 171 | \end{itemize} 172 | \item Smart contract (public) method 173 | \end{itemize} 174 | \bigskip 175 | Decentralized re-encryption nodes (Ursulas) relied on to apply conditions without having the ability to decrypt data 176 | \end{frame} 177 | 178 | \begin{frame} 179 | \frametitle{Demo} 180 | \begin{figure} 181 | \centering 182 | \includegraphics[height=5.5cm]{pdf/terminal.pdf} 183 | \end{figure} 184 | \end{frame} 185 | 186 | \begin{frame} 187 | \frametitle{Use Cases} 188 | \framesubtitle{Encrypted file sharing} 189 | \begin{figure} 190 | \centering 191 | \includegraphics[height=7cm]{pdf/file-sharing-alternative.pdf} 192 | \end{figure} 193 | \end{frame} 194 | 195 | \begin{frame} 196 | \frametitle{Use Cases} 197 | \framesubtitle{Encrypted multi-user chats} 198 | \begin{figure} 199 | \centering 200 | \includegraphics[height=7cm]{pdf/chats-alternative.pdf} 201 | \end{figure} 202 | \end{frame} 203 | 204 | \begin{frame} 205 | \frametitle{Use Cases} 206 | \framesubtitle{Decentralized access-controlled content} 207 | \begin{figure} 208 | \centering 209 | \includegraphics[height=7cm]{pdf/streams-alternative.pdf} 210 | \end{figure} 211 | \end{frame} 212 | 213 | \begin{frame} 214 | \frametitle{Early Users} 215 | \begin{figure} 216 | \includegraphics[width=11.5cm]{pdf/projects.pdf} 217 | \end{figure} 218 | \end{frame} 219 | 220 | \begin{frame} 221 | \frametitle{Competing Technology} 222 | Data Masking and Tokenization 223 | \begin{itemize} 224 | \item Less secure for data with underlying patterns 225 | \item Reduce the value of data by obfuscating it 226 | \end{itemize} 227 | 228 | Public Key Encryption 229 | \begin{itemize} 230 | \item Data must be decrypted before it is shared 231 | \item Not Scalable 232 | \end{itemize} 233 | 234 | Multi-Party Computation 235 | \begin{itemize} 236 | \item Interactive protocol 237 | \item Slow Performance 238 | \end{itemize} 239 | 240 | Fully Homomorphic Encryption 241 | \begin{itemize} 242 | \item Slow Peformance 243 | \begin{itemize} 244 | \item NuCypher has developed a GPU-accelerated FHE library: nuFHE 245 | \end{itemize} 246 | \end{itemize} 247 | \end{frame} 248 | 249 | \begin{frame} 250 | \frametitle{Fully Homomorphic Encryption} 251 | \framesubtitle{nuFHE library} 252 | \begin{itemize} 253 | \item GitHub: \url{https://nucypher.dev/nufhe} 254 | \item GPU implementation of fully homomorphic encryption 255 | \item Uses either FFT or integer NTT 256 | \item Achieved 100x performance over TFHE benchmarks 257 | \begin{figure} 258 | \includegraphics[width=10.5cm]{pdf/nufhe-benchmarks.pdf} 259 | \end{figure} 260 | \end{itemize} 261 | \end{frame} 262 | 263 | \begin{frame} 264 | \frametitle{FHE Proof of Concept} 265 | \framesubtitle{Sputnik} 266 | \begin{itemize} 267 | \item GitHub: \url{https://nucypher.dev/sputnik} 268 | \item Assembly language and interpreter for FHE that uses nuFHE 269 | \item Commits a merkle root of computation to the blockchain for proof of logic flow 270 | \item Used to execute first homomorphic smart contract at ETHBerlin 2018 271 | \end{itemize} 272 | \begin{figure} 273 | \centering 274 | \includegraphics[width=8cm]{pdf/sputnik-tweet.pdf} 275 | \end{figure} 276 | \end{frame} 277 | 278 | \begin{frame} 279 | \frametitle{More Information} 280 | \begin{figure} 281 | \centering 282 | \includegraphics[width=3cm]{pdf/nucypher_logo.pdf} 283 | \end{figure} 284 | Website: \url{https://www.nucypher.com} 285 | 286 | Whitepaper: \url{https://www.nucypher.com/whitepapers/english.pdf} 287 | 288 | Proxy Re-encryption Network: \url{https://nucypher.dev/nucypher} 289 | 290 | Umbral Reference Implementation: \url{https://nucypher.dev/pyUmbral} 291 | 292 | nuFHE: \url{https://nucypher.dev/nufhe} 293 | 294 | Discord: \url{http://discord.nucypher.com} 295 | 296 | E-mail: \href{mailto:\emailname @nucypher.com}{\emailname @nucypher.com} 297 | 298 | E-mail: \href{mailto:hello@nucypher.com}{hello@nucypher.com} 299 | \end{frame} 300 | 301 | \begin{frame} 302 | \frametitle{Appendix: Umbral Flow Diagram} 303 | \begin{figure} 304 | \centering 305 | \includegraphics[width=11cm]{pdf/umbral-kem-flow.pdf} 306 | \end{figure} 307 | \begin{itemize} 308 | \item Reference implementation: \url{https://nucypher.dev/pyUmbral} 309 | \item Documentation: \url{https://nucypher.dev/umbral-doc} 310 | \end{itemize} 311 | \end{frame} 312 | 313 | \begin{frame} 314 | \frametitle{Appendix: Security Audits} 315 | \begin{figure} 316 | \centering 317 | \includegraphics[height=2.5cm]{pdf/security-audits.pdf} 318 | \end{figure} 319 | \end{frame} 320 | 321 | \begin{frame} 322 | \frametitle{Appendix: NU Token Metrics} 323 | \framesubtitle{Mining} 324 | Mining \& Staking Economics: \url{https://nucypher.dev/mining-paper} 325 | 326 | \bigskip 327 | 328 | Mining reward: 329 | \begin{align} 330 | \kappa &= \left(0.5 + 0.5\frac{\min(T_i, T_1)}{T_1}\right) \nonumber \\ 331 | T_{i,\text{initial}} &\ge T_{\min} \nonumber \\ 332 | \delta s_{i,t} &= \kappa\, \frac{l_i}{\sum l_j} \frac{\ln{2}}{T_{1/2}} \left( S_{\max} - S_{t-1}\right) \nonumber 333 | \end{align} 334 | Results into: 335 | $$\text{reward} \propto 2^{\frac{t}{T_{1/2}}}$$ 336 | \end{frame} 337 | 338 | \begin{frame} 339 | \frametitle{Appendix: NU Token Metrics} 340 | \framesubtitle{Graph of daily mining compensation} 341 | \begin{figure} 342 | \centering 343 | \includegraphics[height=5.5cm]{pdf/daily-compensation.pdf} 344 | \end{figure} 345 | \end{frame} 346 | 347 | \begin{frame} 348 | \frametitle{Appendix: NU Token Metrics} 349 | \framesubtitle{Relocking mining rewards} 350 | \begin{figure} 351 | \centering 352 | \includegraphics[height=5.5cm]{pdf/total-compensation.pdf} 353 | \end{figure} 354 | \end{frame} 355 | 356 | \begin{frame} 357 | \frametitle{Appendix: Team} 358 | \begin{figure} 359 | \centering 360 | \includegraphics[width=12.5cm]{pdf/company.pdf} 361 | \end{figure} 362 | \end{frame} 363 | 364 | \end{document} 365 | 366 | -------------------------------------------------------------------------------- /svg/chats.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 29 | 35 | 36 | 45 | 51 | 52 | 61 | 67 | 68 | 77 | 83 | 84 | 93 | 99 | 100 | 108 | 114 | 115 | 123 | 129 | 130 | 138 | 144 | 145 | 153 | 159 | 160 | 168 | 174 | 175 | 183 | 189 | 190 | 198 | 204 | 205 | 206 | 228 | 233 | 234 | 236 | 237 | 239 | image/svg+xml 240 | 242 | 243 | 244 | 245 | 246 | 251 | 254 | 257 | 262 | 263 | 266 | 271 | 272 | 275 | 280 | 281 | 284 | 289 | 290 | 293 | 298 | 299 | 300 | 307 | 312 | 317 | 323 | 329 | 335 | 342 | 349 | 356 | 363 | 370 | 375 | 380 | 385 | 390 | 395 | 400 | 406 | 412 | 418 | 424 | 427 | 430 | 435 | 436 | 439 | 444 | 445 | 448 | 453 | 454 | 457 | 462 | 463 | 466 | 471 | 472 | 473 | 480 | 487 | 490 | 493 | 498 | 499 | 502 | 507 | 508 | 511 | 516 | 517 | 520 | 525 | 526 | 529 | 534 | 535 | 536 | 543 | 550 | 553 | 556 | 561 | 562 | 565 | 570 | 571 | 574 | 579 | 580 | 583 | 588 | 589 | 592 | 597 | 598 | 599 | 606 | 613 | 618 | 623 | 628 | 629 | 630 | -------------------------------------------------------------------------------- /svg/nucypher_logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | Desktop 4 27 | 28 | 29 | 30 | 54 | Desktop 4 56 | Created using Figma 58 | 62 | 65 | 70 | 71 | 74 | 79 | 81 | 83 | 92 | 93 | 95 | 104 | 105 | 107 | 116 | 117 | 119 | 128 | 129 | 131 | 140 | 141 | 143 | 152 | 153 | 155 | 164 | 165 | 167 | 176 | 177 | 178 | 180 | 182 | 191 | 192 | 193 | 194 | 195 | 197 | 201 | 205 | 209 | 213 | 217 | 221 | 225 | 229 | 233 | 236 | 244 | 245 | 246 | 247 | -------------------------------------------------------------------------------- /svg/permissioned-sss.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 41 | 46 | 47 | 49 | 57 | 63 | 64 | 73 | 79 | 80 | 88 | 94 | 95 | 103 | 109 | 110 | 119 | 125 | 126 | 134 | 140 | 141 | 149 | 155 | 156 | 164 | 170 | 171 | 172 | 174 | 175 | 177 | image/svg+xml 178 | 180 | 181 | 182 | 183 | 184 | 189 | 192 | 195 | 200 | 201 | 204 | 209 | 210 | 213 | 218 | 219 | 222 | 227 | 228 | 231 | 236 | 237 | 238 | Sender 249 | Receiver 260 |   271 | 274 | 278 | 283 | 284 | 288 | 293 | 294 | 298 | 303 | 304 | 308 | 313 | 314 | 318 | 323 | 324 | 325 | 330 | 335 | 340 | 346 | 352 | 357 | 363 | 368 | 374 | 379 | 385 | 391 | 397 | 402 | 408 | 414 | 420 | 426 | 432 | 438 | 439 | 440 | -------------------------------------------------------------------------------- /svg/permissioned.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 41 | 46 | 47 | 49 | 57 | 63 | 64 | 73 | 79 | 80 | 88 | 94 | 95 | 103 | 109 | 110 | 111 | 113 | 114 | 116 | image/svg+xml 117 | 119 | 120 | 121 | 122 | 123 | 128 | 131 | 134 | 139 | 140 | 143 | 148 | 149 | 152 | 157 | 158 | 161 | 166 | 167 | 170 | 175 | 176 | 177 | Sender 188 | Receiver 199 |   210 | 213 | 217 | 222 | 223 | 227 | 232 | 233 | 237 | 242 | 243 | 247 | 252 | 253 | 257 | 262 | 263 | 264 | 269 | 274 | 279 | 285 | 291 | 297 | 303 | 309 | 315 | 320 | 325 | 330 | 336 | 341 | 342 | 343 | -------------------------------------------------------------------------------- /svg/pre-kms.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 41 | 46 | 47 | 49 | 57 | 63 | 64 | 72 | 78 | 79 | 88 | 94 | 95 | 96 | 98 | 99 | 101 | image/svg+xml 102 | 104 | 105 | 106 | 107 | 108 | 113 | 115 | 122 | 127 | 132 | 137 | 138 | 141 | 144 | 149 | 150 | 153 | 158 | 159 | 162 | 167 | 168 | 171 | 176 | 177 | 180 | 185 | 186 | 187 | Receiver 199 | 210 | 216 | 222 | 228 | 233 | 236 | 238 | 243 | 244 | 246 | 248 | 250 | 252 | 254 | 256 | 258 | 260 | 262 | 264 | 266 | 268 | 270 | 272 | 274 | 275 | 277 | 281 | [ ] 293 | 294 | 296 | 300 | [ ] 312 | 313 | 316 | 323 | 328 | 333 | 338 | 339 | = decrypt( , ) 351 | 355 | 358 | 365 | 370 | 375 | 380 | 381 | 384 | 388 | { } 400 | 401 | 405 | 411 | 417 | 423 | 429 | 435 | 440 | 445 | 450 | 455 | 460 | 465 | 466 | 470 | = decrypt( , ) 481 | 484 | 488 | { } 500 | 501 | 506 | 507 | 508 | -------------------------------------------------------------------------------- /svg/prenodes.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 41 | 46 | 47 | 49 | 57 | 63 | 64 | 73 | 79 | 80 | 88 | 94 | 95 | 103 | 109 | 110 | 111 | 113 | 114 | 116 | image/svg+xml 117 | 119 | 120 | 121 | 122 | 123 | 128 | 131 | 134 | 139 | 140 | 143 | 148 | 149 | 152 | 157 | 158 | 161 | 166 | 167 | 170 | 175 | 176 | 177 | Sender 188 | Receiver 199 |   210 | 213 | 217 | 222 | 223 | 227 | 232 | 233 | 237 | 242 | 243 | 247 | 252 | 253 | 257 | 262 | 263 | 264 | 269 | 274 | 279 | 285 | 291 | 297 | 303 | 309 | 314 | 319 | 324 | 330 | 336 | 337 | 338 | -------------------------------------------------------------------------------- /svg/terminal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 23 | 25 | 32 | 43 | 46 | 50 | 54 | 55 | 66 | 68 | 72 | 76 | 80 | 81 | 91 | 94 | 98 | 102 | 103 | 105 | 109 | 113 | 114 | 116 | 120 | 124 | 125 | 127 | 131 | 135 | 136 | 146 | 149 | 153 | 157 | 158 | 160 | 164 | 168 | 169 | 171 | 175 | 179 | 180 | 182 | 186 | 190 | 191 | 193 | 197 | 201 | 202 | 212 | 222 | 232 | 243 | 253 | 263 | 273 | 284 | 285 | 306 | 308 | 309 | 311 | image/svg+xml 312 | 314 | Terminal 315 | 2005-10-15 316 | 317 | 318 | Andreas Nilsson 319 | 320 | 321 | 322 | 323 | terminal 324 | emulator 325 | term 326 | command line 327 | 328 | 329 | 331 | 332 | 333 | Jakub Steiner 334 | 335 | 336 | 337 | 339 | 341 | 343 | 345 | 346 | 347 | 348 | 352 | 355 | 362 | 367 | 372 | 373 | 382 | 391 | 394 | 398 | 402 | 406 | 410 | 414 | 418 | 422 | 426 | 430 | 434 | 438 | 442 | 443 | 452 | 457 | 462 | 471 | 480 | 489 | 499 | 500 | 501 | -------------------------------------------------------------------------------- /svg/umbralnodes.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 41 | 46 | 47 | 49 | 57 | 63 | 64 | 73 | 79 | 80 | 88 | 94 | 95 | 103 | 109 | 110 | 119 | 125 | 126 | 134 | 140 | 141 | 149 | 155 | 156 | 164 | 170 | 171 | 172 | 174 | 175 | 177 | image/svg+xml 178 | 180 | 181 | 182 | 183 | 184 | 189 | 192 | 195 | 200 | 201 | 204 | 209 | 210 | 213 | 218 | 219 | 222 | 227 | 228 | 231 | 236 | 237 | 238 | Sender 249 | Receiver 260 |   271 | 274 | 278 | 283 | 284 | 288 | 293 | 294 | 298 | 303 | 304 | 308 | 313 | 314 | 318 | 323 | 324 | 325 | 330 | 335 | 340 | 346 | 352 | 357 | 363 | 368 | 374 | 379 | 385 | 391 | 397 | 403 | 409 | 415 | 421 | 422 | 423 | -------------------------------------------------------------------------------- /template.tex.base: -------------------------------------------------------------------------------- 1 | % ==================================================================== 2 | % DO NOT EDIT THIS FILE! 3 | % 4 | % This file should be copied to a file named 'template.tex' (which 5 | % the makefile expects) and then edited for the specific event 6 | % ==================================================================== 7 | 8 | % The title slide information about the presenter(s) eg. name(s), role(s) 9 | \newcommand{\presenter}{} 10 | 11 | % The text for the presenter footer eg. first name(s) 12 | \newcommand{\presenterfooter}{} 13 | 14 | % The footer title of the presentation (optional - default is 'NuCypher') 15 | \newcommand{\titlefooter}{NuCypher} 16 | 17 | % The email name prefix for the presenter i.e. @nucypher.com 18 | \newcommand{\emailname}{} 19 | 20 | % The name of the event 21 | \newcommand{\event}{} 22 | 23 | % The date of the event with format: dd MMM yyyy 24 | \newcommand{\eventdate}{
} 25 | 26 | 27 | % Example usage: 28 | % 29 | % \newcommand{\presenter}{MacLane Wilkison, CEO \& Co-Founder} 30 | % \newcommand{\presenterfooter}{MacLane} 31 | % \newcommand{\titlefooter}{NuCypher} 32 | % \newcommand{\emailname}{maclane} 33 | % \newcommand{\event}{Eth SF} 34 | % \newcommand{\eventdate}{05 Oct 2018} 35 | % 36 | --------------------------------------------------------------------------------