430 lines
22 KiB
HTML
430 lines
22 KiB
HTML
<!DOCTYPE html>
|
||
<html class=" js no-mobile desktop no-ie ff ff60 root-section w-1596 gt-240 gt-320 gt-480 gt-640 gt-768 gt-800 gt-1024 gt-1280 gt-1440 lt-1680 lt-1920 no-portrait landscape gradient rgba opacity textshadow multiplebgs boxshadow borderimage borderradius no-cssreflections csstransforms csstransitions no-touch no-retina fontface domloaded" id="index-page" lang="en"><head>
|
||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||
<meta name="generator" content="Hugo 0.49">
|
||
<meta charset="utf-8">
|
||
<title>GnuPG - localhost</title>
|
||
|
||
|
||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||
<link rel="stylesheet" href="GnuPG%20-%20localhost_files/reveal.css">
|
||
<link rel="stylesheet" href="GnuPG%20-%20localhost_files/robot-lung.css" id="theme">
|
||
<link rel="stylesheet" href="GnuPG%20-%20localhost_files/default.css">
|
||
|
||
<script>
|
||
var link = document.createElement( 'link' );
|
||
link.rel = 'stylesheet';
|
||
link.type = 'text/css';
|
||
link.href = window.location.search.match( /print-pdf/gi ) ? '\/reveal-js/css/print/pdf.css' : '\/reveal-js/css/print/paper.css';
|
||
document.getElementsByTagName( 'head' )[0].appendChild( link );
|
||
</script><link rel="stylesheet" type="text/css" href="GnuPG%20-%20localhost_files/paper.css"><script type="text/javascript" src="GnuPG%20-%20localhost_files/highlight.js"></script><script type="text/javascript" src="GnuPG%20-%20localhost_files/zoom.js"></script><script type="text/javascript" src="GnuPG%20-%20localhost_files/notes.js"></script>
|
||
|
||
</head>
|
||
<body style="transition: -webkit-transform 0.8s ease 0s;">
|
||
<div class="reveal slide center has-vertical-slides has-horizontal-slides ready" role="application" data-transition-speed="fast" data-background-transition="fade">
|
||
<div class="slides" style="width: 960px; height: 700px; left: 50%; top: 50%; bottom: auto; right: auto; transform: translate(-50%, -50%) scale(0.9984);">
|
||
|
||
<section style="top: 226px; display: block;" class="past" aria-hidden="true" hidden="">
|
||
|
||
<p><img src="GnuPG%20-%20localhost_files/gnupg_logo.png" alt="Gnupg"></p>
|
||
|
||
</section><section style="top: 42px; display: block;" class="present">
|
||
|
||
<h1 id="crittografia">Crittografia</h1>
|
||
|
||
<h2 id="a-cosa-serve">A cosa serve:</h2>
|
||
|
||
<ul>
|
||
<li><p>a difendere la propria privacy</p></li>
|
||
|
||
<li><p><span class="fragment visible current-fragment" data-fragment-index="0">
|
||
chi non ha nulla da nascondere non ha nulla da temere
|
||
</span> <span class="fragment" data-fragment-index="1">
|
||
(Adolf Hitler, 1936)
|
||
</span></p></li>
|
||
|
||
<li><span class="fragment" data-fragment-index="2">
|
||
comunicazioni private di qualsiasi natura
|
||
</span></li>
|
||
|
||
<li><span class="fragment" data-fragment-index="3">
|
||
crittazione di documenti
|
||
</span></li>
|
||
|
||
<li><span class="fragment" data-fragment-index="4">
|
||
verifica autenticita’ di documenti
|
||
</span></li>
|
||
|
||
<li><span class="fragment" data-fragment-index="5">
|
||
verifica integrita’ di documenti
|
||
</span></li>
|
||
</ul>
|
||
|
||
</section><section style="top: 135px; display: block;" class="future" aria-hidden="true" hidden="">
|
||
|
||
<h1 id="crittografia-1">Crittografia</h1>
|
||
|
||
<h3 id="privacy-e-anonimato">Privacy e anonimato</h3>
|
||
|
||
<ul>
|
||
<li><p>La privacy riguarda la riservatezza del contenuto delle comunicazioni/dati</p></li>
|
||
|
||
<li><p>L’anonimato riguarda la riservatezza dell’identita’</p></li>
|
||
</ul>
|
||
|
||
</section><section style="top: 99px; display: block;" class="future" aria-hidden="true" hidden="">
|
||
|
||
<h1 id="sicurezza">SICUREZZA</h1>
|
||
|
||
<p><img src="GnuPG%20-%20localhost_files/security.png" alt="security"></p>
|
||
|
||
</section><section style="top: 0px; display: none;" class="stack future" data-previous-indexv="2" aria-hidden="true" hidden="">
|
||
|
||
<section data-shortcode-section="" style="top: 211.5px; display: none;" class="past" aria-hidden="true" hidden="">
|
||
<h2 id="storia">Storia</h2>
|
||
|
||
<h4 id="pgp-pretty-good-privacy">PGP (Pretty Good Privacy)</h4>
|
||
|
||
<h5 id="nasce-nel-1991-ad-opera-di-phil-zimmerman">Nasce nel 1991 ad opera di Phil Zimmerman</h5>
|
||
|
||
</section><section class="past" style="top: 35.5px; display: none;" aria-hidden="true" hidden="">
|
||
|
||
<h2 id="storia-1">Storia</h2>
|
||
|
||
<h4 id="openpgp">OPENPGP</h4>
|
||
|
||
<p>E’ uno standard divenuto ufficiale nel 2007 che definisce come devono
|
||
funzionare i servizi per le comunicazioni elettroniche e il data
|
||
storage riguardo:</p>
|
||
|
||
<ul>
|
||
<li><p>Confidenzialità</p></li>
|
||
|
||
<li><p>Gestione delle chiavi</p></li>
|
||
|
||
<li><p>Autenticazione</p></li>
|
||
|
||
<li><p>Firma digitale</p></li>
|
||
</ul>
|
||
|
||
</section><section class="" style="top: 148.5px; display: none;" aria-hidden="true">
|
||
|
||
<h2 id="storia-2">Storia</h2>
|
||
|
||
<h4 id="gnupg-gnu-privacy-guard">GnuPG (Gnu Privacy Guard)</h4>
|
||
|
||
<ul>
|
||
<li><p>E’ una implementazione open source dello standard OpenPGP</p></li>
|
||
|
||
<li><p>Non ha nessuna interfaccia grafica nativa</p></li>
|
||
</ul>
|
||
|
||
</section>
|
||
|
||
</section><section style="top: 0px; display: none;" class="future" aria-hidden="true" hidden="">
|
||
|
||
<h4 id="crittografia-simmetrica">crittografia simmetrica</h4>
|
||
|
||
<h6 id="la-stessa-chiave-si-usa-per-crittare-e-decrittare"><em>la stessa chiave si usa per crittare e decrittare</em></h6>
|
||
|
||
<p>problema: come scambiarsi la chiave in modo sicuro ?</p>
|
||
|
||
<p><img src="GnuPG%20-%20localhost_files/Symmetric-Encryption.png" alt="crittografia simmetrica"></p>
|
||
|
||
</section><section style="top: 0px; display: none;" class="future" aria-hidden="true" hidden="">
|
||
|
||
<h4 id="crittografia-asimmetrica">crittografia asimmetrica</h4>
|
||
|
||
<h6 id="ci-sono-due-chiavi-una-per-crittare-pubblica-e-una-per-decrittare-privata"><em>ci sono due chiavi, una per crittare (pubblica) e una per decrittare (privata)</em></h6>
|
||
|
||
<p>non serve scambiarsi la chiave in modo sicuro</p>
|
||
|
||
<p><img src="GnuPG%20-%20localhost_files/Asymmetric-Encryption.png" alt="crittografia asimmetrica"></p>
|
||
|
||
</section><section style="top: 154px; display: none;" class="future" aria-hidden="true" hidden="">
|
||
|
||
<h3 id="la-firma-elettronica">La firma elettronica</h3>
|
||
|
||
<ul>
|
||
<li><p>autenticazione</p></li>
|
||
|
||
<li><p>integrità</p></li>
|
||
|
||
<li><p>E’ possibile firmare anche senza cifrare e/o viceversa</p></li>
|
||
|
||
<li><p>Si possono firmare messaggi e/o files/documenti</p></li>
|
||
</ul>
|
||
|
||
</section><section style="top: 74.5px; display: none;" class="future" aria-hidden="true" hidden="">
|
||
|
||
<h4 id="chiave-pubblica-e-chiave-privata">chiave pubblica e chiave privata</h4>
|
||
|
||
<h6 id="la-chiave-pubblica-serve-agli-altri-che-la-usano-per"><em>La chiave pubblica serve agli altri che la usano per:</em></h6>
|
||
|
||
<ol>
|
||
<li>crittare i messaggi che poi invieranno a te</li>
|
||
<li>verificare la firma dei msg che ricevono da te</li>
|
||
</ol>
|
||
|
||
<h4 id="toc_12">____________________</h4>
|
||
|
||
<h6 id="la-chiave-privata-e-usata-da-te-per"><em>La chiave privata e’ usata da te per:</em></h6>
|
||
|
||
<ol>
|
||
<li>firmare i messaggi che invierai ad altre persone</li>
|
||
<li>decrittare i messaggi che ricevi da altre persone</li>
|
||
<li>firmare le chiavi di altre persone</li>
|
||
</ol>
|
||
|
||
</section><section style="top: 0px; display: none;" class="stack future" data-previous-indexv="7" aria-hidden="true" hidden="">
|
||
|
||
<section data-shortcode-section="" style="top: 235.5px; display: none;" class="past" aria-hidden="true" hidden="">
|
||
<h2 id="le-chiavi-e-la-loro-gestione">Le chiavi e la loro gestione</h2>
|
||
|
||
</section><section class="past" style="top: 256.5px; display: none;" aria-hidden="true" hidden="">
|
||
|
||
<h3 id="user-id">User ID</h3>
|
||
|
||
<p><strong><em>email, non necessariamente nome e cognome</em></strong></p>
|
||
|
||
</section><section class="past" style="top: 0px; display: none;" aria-hidden="true" hidden="">
|
||
|
||
<h5 id="la-password-di-protezione-della-chiave">la password di protezione della chiave</h5>
|
||
|
||
<p><img src="GnuPG%20-%20localhost_files/password_strength.png" alt="password"></p>
|
||
|
||
</section><section class="past" style="top: 206px; display: none;" aria-hidden="true" hidden="">
|
||
|
||
<h2 id="la-scadenza">la scadenza</h2>
|
||
|
||
<ul>
|
||
<li><p>a cosa serve</p></li>
|
||
|
||
<li><p>estensione della scadenza</p></li>
|
||
</ul>
|
||
|
||
</section><section class="past" style="top: 235.5px; display: none;" aria-hidden="true" hidden="">
|
||
|
||
<h2 id="le-sottochiavi-subkeys">Le sottochiavi (subkeys)</h2>
|
||
|
||
</section><section class="past" style="top: 88.5px; display: none;" aria-hidden="true" hidden="">
|
||
|
||
<h2 id="revoca-delle-chiavi">Revoca delle chiavi</h2>
|
||
|
||
<h4 id="il-certificato-di-revoca">Il certificato di revoca</h4>
|
||
|
||
<pre><code class="hljs stata"><span class="hljs-keyword">Se</span> <span class="hljs-keyword">ci</span> si dimentica <span class="hljs-keyword">la</span> passphrase o <span class="hljs-keyword">se</span> <span class="hljs-keyword">la</span> propria chiave privata viene
|
||
compromessa o persa, questo certificato <span class="hljs-keyword">di</span> revoca può essere pubblicato
|
||
per segnalare ad altri che <span class="hljs-keyword">la</span> chiave pubblica non deve più essere usata.
|
||
|
||
Una chiave pubblica revocata non può più essere usata per cifrare futuri
|
||
messaggi.
|
||
|
||
<span class="hljs-keyword">La</span> revoca non influisce sulla propria capacità <span class="hljs-keyword">di</span> decifrare messaggi spediti
|
||
<span class="hljs-keyword">in</span> passato, <span class="hljs-keyword">se</span> si possiede ancora <span class="hljs-keyword">l</span>'accesso alla chiave privata.
|
||
|
||
Il certificato deve essere stampato <span class="hljs-keyword">e</span>/o salvato offline.
|
||
Chiunque abbia accesso al certificato <span class="hljs-keyword">di</span> revoca può rendere <span class="hljs-keyword">la</span> chiave
|
||
pubblica inutilizzabile.
|
||
</code></pre>
|
||
|
||
</section><section class="past" style="top: 123.5px; display: none;" aria-hidden="true" hidden="">
|
||
|
||
<h2 id="revoca-delle-chiavi-1">Revoca delle chiavi</h2>
|
||
|
||
<h4 id="i-revocatori-designati">I revocatori designati</h4>
|
||
|
||
<blockquote>
|
||
<p>Potete designare il possessore di un’altra chiave per revocare la vostra</p>
|
||
|
||
<p>Deve godere della vostra massima fiducia</p>
|
||
</blockquote>
|
||
|
||
</section><section class="" style="top: 20.5px; display: none;" aria-hidden="true">
|
||
|
||
<h2 id="i-keyservers">i keyservers</h2>
|
||
|
||
<p>Un keyserver e’ un database contenente chiavi pubbliche</p>
|
||
|
||
<ul>
|
||
<li><p>sono disponibili anche via web: <a href="https://pgp.mit.edu/">https://pgp.mit.edu</a></p></li>
|
||
|
||
<li><p>servono a:</p>
|
||
|
||
<ol>
|
||
<li>recuperare le chiavi di altri</li>
|
||
<li>caricare le proprie chiavi</li>
|
||
</ol></li>
|
||
|
||
<li><p><strong>una volta caricate le chiavi non si possono eliminare, solo revocare</strong></p></li>
|
||
|
||
<li><p>e’ cmq possibile modificare una chiave caricata, ad es. per aggiungere firme,
|
||
o cambiare la scadenza.</p></li>
|
||
</ul>
|
||
|
||
</section><section class="future" aria-hidden="true" style="top: 101.5px; display: none;" hidden="">
|
||
|
||
<h2 id="web-of-trust">web of trust</h2>
|
||
|
||
<p>OpenPGP anziché basarsi su un’autorità centralizzata o su una struttura gerarchica
|
||
prevede che ogni contatto imposti la fiducia verso gli altri e, a seconda della
|
||
fiducia che gli viene riconosciuta, possa garantire per quella di terzi.
|
||
È un metodo molto pratico per gruppi che non hanno un ordine gerarchico,
|
||
come possono essere appunto i contatti email e per cui sarebbe eccessivamente
|
||
oneroso o di difficile gestione il ricorso a una Certificate Authority.</p>
|
||
|
||
</section><section class="future" aria-hidden="true" style="top: 54.5px; display: none;" hidden="">
|
||
|
||
<h2 id="firma-delle-chiavi">firma delle chiavi</h2>
|
||
|
||
<h4 id="pgp-key-signing-party">pgp key signing party</h4>
|
||
|
||
<p>Si imposta il livello di confidenza riguardo l’autenticita’ della chiave pubblica e la sua corrispondenza con un dato contatto.</p>
|
||
|
||
<p>Firmando una chiave pubblica si garantisce della sua autenticita’.
|
||
Di default la firma e’ solo locale, ma se si esporta quella chiave pubblica
|
||
su un keyserver, la propria firma diventera’ pubblica, e in tal caso la propria firma
|
||
avra’ il ruolo di garante dell’autenticita’ di quella chiave.</p>
|
||
|
||
</section>
|
||
|
||
</section><section style="top: 0px; display: none;" aria-hidden="true" class="future" hidden="">
|
||
|
||
<p>Esempio di msg cifrato:</p>
|
||
|
||
<pre><code class="hljs haml">-<span class="ruby">----<span class="hljs-keyword">BEGIN</span> PGP MESSAGE-----
|
||
</span>Version: GnuPG v2.1 (GNU/Linux)
|
||
|
||
owE1jMsNwjAUBH3gZMk9PClnUoBPUANpwElW2OBPZD8H0gd1UCP2gduuNDNfI
|
||
T4zCbQmtlbzGFM9T0jSD7QVvEzaPcUlBSSWHQclbnR9YWJNp5BFSLdR9CijF3
|
||
ybry/1Rsqn4la3a0JiIhLvnYGCu9HFtiC8oIxnlkeuIYe+EH=HgDq
|
||
-<span class="ruby">----<span class="hljs-keyword">END</span> PGP MESSAGE-----
|
||
</span></code></pre>
|
||
|
||
<p>Esempio di msg firmato:</p>
|
||
|
||
<pre><code class="hljs haml">-<span class="ruby">----<span class="hljs-keyword">BEGIN</span> PGP SIGNED MESSAGE-----
|
||
</span>Hash: SHA512
|
||
|
||
Ciao,
|
||
|
||
messaggio di prova
|
||
|
||
-<span class="ruby">----<span class="hljs-keyword">BEGIN</span> PGP SIGNATURE-----
|
||
</span>Version: GnuPG v2.1 (GNU/Linux)
|
||
|
||
iQGGBAEBCgBwBQJQRL0KMBSAAAAAACAAB3ByZWZlcnJlZC1lbWFpbC1lbmNvZGlu
|
||
Z0BwZ3AuY29tcGdwbWltZTgUgAAAAAAVABpwa2EtYWRkcmVzc0BnbnVwZy5vcmdt
|
||
CKV1lrxDLqrQeDE5Zbep3J1XL5ZJ4e98+CrRyKJkVXmKwH5+A/ySMk3CTNXKtoWT
|
||
3H34WvVdMTJb
|
||
=<span class="ruby">qU7I
|
||
</span>-<span class="ruby">----<span class="hljs-keyword">END</span> PGP SIGNATURE-----
|
||
</span></code></pre>
|
||
|
||
</section><section style="top: 0px; display: none;" aria-hidden="true" class="stack future" hidden="">
|
||
|
||
<section data-shortcode-section="" style="top: 239.5px; display: none;">
|
||
<h1 id="clients">Clients</h1>
|
||
|
||
<p><a href="https://www.gnupg.org/software/frontends.html">https://www.gnupg.org/software/frontends.html</a></p>
|
||
|
||
</section><section class="future" aria-hidden="true" style="top: 350px; display: none;">
|
||
|
||
<h1 id="windows">Windows</h1>
|
||
|
||
<p><a href="https://www.gpg4win.org/">gpg4win.org</a></p>
|
||
|
||
<p><a href="https://emailselfdefense.fsf.org/it/windows.html">emailselfdefense (in italiano)</a></p>
|
||
|
||
</section><section class="future" aria-hidden="true" style="top: 350px; display: none;">
|
||
|
||
<h1 id="linux">Linux</h1>
|
||
|
||
<p><a href="https://www.gnupg.org/">gnupg.org</a></p>
|
||
|
||
<p><a href="https://emailselfdefense.fsf.org/it/index.html">https://emailselfdefense.fsf.org/it/index.html</a></p>
|
||
|
||
</section><section class="future" aria-hidden="true" style="top: 350px; display: none;">
|
||
|
||
<h1 id="mac">Mac</h1>
|
||
|
||
<p><a href="https://www.gpgtools.org/">gpgtools.org</a></p>
|
||
|
||
<p><a href="https://emailselfdefense.fsf.org/it/mac.html">emailselfdefense (in italiano)</a></p>
|
||
|
||
</section><section class="future" aria-hidden="true" style="top: 350px; display: none;">
|
||
|
||
<h1 id="enigmail">Enigmail</h1>
|
||
|
||
<h4 id="enigmail-net-https-www-enigmail-net"><a href="https://www.enigmail.net/">enigmail.net</a></h4>
|
||
|
||
<h5 id="plugin-per-thunderbird">plugin per thunderbird</h5>
|
||
|
||
<p>guide molto ben fatte, ma in inglese:</p>
|
||
|
||
<ul>
|
||
<li><a href="https://ssd.eff.org/en/module/how-use-pgp-linux">https://ssd.eff.org/en/module/how-use-pgp-linux</a></li>
|
||
<li><a href="https://ssd.eff.org/en/module/how-use-pgp-mac-os-x">https://ssd.eff.org/en/module/how-use-pgp-mac-os-x</a></li>
|
||
<li><a href="https://ssd.eff.org/en/module/how-use-pgp-windows">https://ssd.eff.org/en/module/how-use-pgp-windows</a></li>
|
||
</ul>
|
||
|
||
</section>
|
||
|
||
</section><section style="top: 350px; display: none;" aria-hidden="true" class="future" hidden="">
|
||
|
||
<h1 id="fine">FINE</h1>
|
||
</section>
|
||
|
||
</div>
|
||
|
||
|
||
<div class="backgrounds"><div class="slide-background past" style="display: block;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background present" style="display: block;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: block;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: block;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background stack future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background present" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div></div><div class="slide-background future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background stack future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background past" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background present" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div></div><div class="slide-background future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background stack future" style="display: none;" data-loaded="true"><div class="slide-background-content"></div><div class="slide-background present" style="display: none;" data-loaded="true"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;"><div class="slide-background-content"></div></div><div class="slide-background future" style="display: none;"><div class="slide-background-content"></div></div></div><div class="slide-background future" style="display: none;"><div class="slide-background-content"></div></div></div><div class="progress" style="display: block;"><span style="width: 67.9778px;"></span></div><aside class="controls" style="display: block;" data-controls-layout="bottom-right" data-controls-back-arrows="faded"><button class="navigate-left enabled fragmented" aria-label="previous slide"><div class="controls-arrow"></div></button><button class="navigate-right enabled fragmented" aria-label="next slide"><div class="controls-arrow"></div></button><button class="navigate-up" aria-label="above slide" disabled="disabled"><div class="controls-arrow"></div></button><button class="navigate-down" aria-label="below slide" disabled="disabled"><div class="controls-arrow"></div></button></aside><div class="slide-number" style="display: none;"></div><div class="speaker-notes" data-prevent-swipe="" tabindex="0"></div><div class="pause-overlay"><button class="resume-button">Resume presentation</button></div><div style="position: absolute; height: 1px; width: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px);" id="aria-status-div" aria-live="polite" aria-atomic="true">
|
||
chi non ha nulla da nascondere non ha nulla da temere
|
||
</div></div>
|
||
<script type="application/json" id="reveal-hugo-site-params">{"custom_theme":"reveal-hugo/themes/robot-lung.css","history":true,"progress":true,"slide_number":false,"transition":"slide","transition_speed":"fast"}</script>
|
||
<script type="application/json" id="reveal-hugo-page-params">null</script>
|
||
<script type="text/javascript"> window.revealHugoDependencies = { dependencies: [ { src: '\/reveal-js/lib/js/classList.js', condition: function() { return !document.body.classList; } },
|
||
{ src: '\/reveal-js/plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
||
{ src: '\/reveal-js/plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
||
{ src: '\/reveal-js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
|
||
{ src: '\/reveal-js/plugin/zoom-js/zoom.js', async: true },
|
||
|
||
{ src: '\/reveal-js\/plugin\/notes\/notes.js', async: true }
|
||
]};
|
||
</script>
|
||
<script src="GnuPG%20-%20localhost_files/head.js"></script>
|
||
<script src="GnuPG%20-%20localhost_files/reveal.js"></script>
|
||
<script type="text/javascript">
|
||
|
||
|
||
function camelize(map) {
|
||
if (map) {
|
||
Object.keys(map).forEach(function(k) {
|
||
newK = k.replace(/(\_\w)/g, function(m) { return m[1].toUpperCase() });
|
||
if (newK != k) {
|
||
map[newK] = map[k];
|
||
delete map[k];
|
||
}
|
||
});
|
||
}
|
||
return map;
|
||
}
|
||
|
||
var revealHugoDefaults = { center: true, controls: true, history: true, progress: true, transition: "slide" };
|
||
var revealHugoSiteParams = JSON.parse(document.getElementById('reveal-hugo-site-params').innerHTML);
|
||
var revealHugoPageParams = JSON.parse(document.getElementById('reveal-hugo-page-params').innerHTML);
|
||
|
||
var options = Object.assign({},
|
||
camelize(revealHugoDefaults),
|
||
camelize(revealHugoSiteParams),
|
||
camelize(revealHugoPageParams),
|
||
revealHugoDependencies);
|
||
Reveal.initialize(options);
|
||
</script>
|
||
|
||
|
||
<script data-no-instant="">document.write('<script src="/livereload.js?port=1313&mindelay=10"></' + 'script>')</script><script src="GnuPG%20-%20localhost_files/livereload.js"></script>
|
||
|
||
</body></html> |