From 85d01197a35a84c127864133007f43ef4a515e31 Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Sun, 29 Oct 2023 02:31:29 +0100 Subject: [PATCH] Update a few things --- .gitignore | 3 +- .obsidian/app.json | 4 +- .obsidian/appearance.json | 2 +- .obsidian/community-plugins.json | 3 +- .obsidian/core-plugins-migration.json | 2 +- .obsidian/core-plugins.json | 1 + .obsidian/graph.json | 22 +- .obsidian/hotkeys.json | 256 ++- .../plugins/obsidian-file-color/data.json | 303 +-- .obsidian/plugins/steffo-file-index/main.js | 146 ++ .../plugins/steffo-file-index/manifest.json | 11 + 0 - Generale/back edge.md | 1 + 7 - Big data analytics/★ indice.canvas | 31 + ...io ad alta performance.md => ★ glossario.md} | 0 .../funzione ideale.md | 2 +- .../funzione.md | 2 +- .../procedura.md | 2 +- .../sicurezza.md | 2 +- .../vincolo.md | 2 +- .../livello di sicurezza.md | 2 +- ...ato di un pseudo-random number generator.md | 2 +- .../3 - Indistinguibilità/bruteforce.md | 2 +- .../chiave simmetrica.md | 2 +- .../funzione contestualizzata.md | 2 +- ...traction di una key derivation function.md | 2 +- .../input key material.md | 2 +- .../pseudo-random key.md | 2 +- .../3 - Scambio di chiave/chiave privata.md | 2 +- .../3 - Scambio di chiave/chiave pubblica.md | 2 +- .../3 - Scambio di chiave/one-way function.md | 2 +- .../2 - Protezione dai data breach/Argon2.md | 6 +- .../attacco interattivo.md | 2 +- .../funzione di password hashing.md | 2 +- .../2 - Protezione dai data breach/scrypt.md | 2 +- .../3 - Autenticazione di identità/blinded.md | 2 +- .../oblivious.md | 2 +- .../delegated verification.md | 2 +- .../out-of-band verification.md | 2 +- .../trust-on-first-use.md | 2 +- .../Artefatti/user story.md | 2 +- .../Fasi di sviluppo/fase di design.md | 4 +- .../fase di implementazione.md | 4 +- .../Fasi di sviluppo/fase di manutenzione.md | 2 +- .../Fasi di sviluppo/fase di rilascio.md | 2 +- .../Modelli di sviluppo/modello evolutivo.md | 2 +- .../modello incrementale.md | 4 +- .../Testing/acceptance test.md | 2 +- .../Testing/performance test.md | 2 +- .../Testing/regression test.md | 2 +- .../1 - Sistemi dinamici/sistema dinamico.md | 2 +- .../automa cellulare continuo spaziale.md | 2 +- .../4 - Grafi/diametro di un grafo.md | 2 + .../1 - Terminologia/asset.md | 2 +- .../1 - Problemi/algoritmo corretto.md | 3 + .../1 - Problemi/algoritmo.md | 5 + .../certificato per un'istanza.md | 6 + .../1 - Problemi/circuito di un grafo.md | 1 + .../classe di problemi NP-completi.md | 26 + .../classe di problemi NP-difficili.md | 20 + .../1 - Problemi/classe di problemi NP.md | 14 + .../1 - Problemi/classe di problemi P.md | 14 + .../1 - Problemi/costo computazionale.md | 13 + .../criterio di costo logaritmico.md | 13 + .../criterio di costo uniforme.md | 13 + .../1 - Problemi/criterio di costo.md | 1 + .../1 - Problemi/dimensione dell'input.md | 5 + .../1 - Problemi/funzione costo.md | 13 + .../1 - Problemi/funzione guadagno.md | 12 + .../1 - Problemi/funzione obiettivo.md | 9 + .../1 - Problemi/insieme delle istanze.md | 5 + .../1 - Problemi/insieme delle soluzioni.md | 5 + .../1 - Problemi/istanza negativa.md | 3 + .../1 - Problemi/istanza positiva.md | 3 + .../1 - Problemi/istanza.md | 11 + .../1 - Problemi/logaritmo in base 2.md | 5 + .../1 - Problemi/notazione O-grande.md | 26 + .../1 - Problemi/notazione asintotica.md | 13 + .../1 - Problemi/notazione o-piccola.md | 28 + .../1 - Problemi/notazione Θ-grande.md | 32 + .../1 - Problemi/notazione Ω-grande.md | 31 + .../1 - Problemi/notazione ω-piccola.md | 30 + .../ottimizzazione → decisionale.md | 5 + .../1 - Problemi/parametro.md | 8 + .../1 - Problemi/polinomiale.md | 5 + .../1 - Problemi/problema P e NP.md | 19 + .../1 - Problemi/problema computazionale.md | 5 + .../1 - Problemi/problema decisionale.md | 1 + .../problema del commesso viaggiatore.md | 61 + .../problema di massimizzazione.md | 9 + .../problema di minimizzazione.md | 9 + .../problema di ottimizzazione.md | 5 + .../1 - Problemi/problema di ricerca.md | 1 + .../1 - Problemi/problema intrattabile.md | 3 + .../1 - Problemi/problema irrisolvibile.md | 3 + .../problema presumibilmente intrattabile.md | 6 + .../1 - Problemi/problema trattabile.md | 1 + .../ricerca di ciclo hamiltoniano.md | 9 + .../1 - Problemi/riduzione di Karp.md | 77 + .../1 - Problemi/satisfability.md | 5 + .../1 - Problemi/soluzione ottima.md | 1 + .../1 - Problemi/soluzione.md | 6 + .../1 - Problemi/spazio.md | 5 + .../1 - Problemi/struttura dati.md | 1 + .../1 - Problemi/tempo.md | 3 + .../1 - Problemi/tesi di Church-Turing.md | 5 + .../1 - Problemi/verifica.md | 3 + .../1 - Problemi/★ problemi.canvas | 97 + .../algoritmo di approssimazione.md | 1 + ...e del problema del commesso viaggiatore.md | 75 + .../fattore di approssimazione.md | 15 + .../minimum perfect matching.md | 3 + ...tà triangolare per il costo degli archi.md | 10 + ...elax and round per vertex cover problem.md | 1 + .../relax and round.md | 9 + .../soluzione approssimata.md | 6 + .../vertex cover problem.md | 15 + .../vertex cover.md | 1 + .../★ algoritmi di approssimazione.canvas | 6 + .../assioma del ritardo di comunicazione.md | 3 + .../assioma dell'orientamento locale.md | 9 + .../1 - Concetti/azione.md | 7 + .../1 - Concetti/comportamento.md | 5 + .../1 - Concetti/comunicazione.md | 4 + .../costo computazionale distribuito.md | 14 + .../criterio di costo asincrono.md | 3 + .../criterio di costo sincrono totale.md | 3 + .../1 - Concetti/entità.md | 12 + .../1 - Concetti/evento esterno.md | 1 + .../1 - Concetti/evento interno.md | 3 + .../1 - Concetti/evento personale.md | 3 + .../1 - Concetti/evento.md | 11 + .../1 - Concetti/messaggio.md | 1 + .../1 - Concetti/restrizioni del modello.md | 6 + .../restrizioni di affidabilità.md | 3 + .../restrizioni di comunicazione.md | 5 + .../1 - Concetti/restrizioni di tempo.md | 5 + .../1 - Concetti/restrizioni topologiche.md | 3 + .../1 - Concetti/rete di comunicazione.md | 5 + .../sistema distribuito asincrono.md | 1 + .../sistema distribuito simmetrico.md | 1 + .../1 - Concetti/sistema distribuito.md | 7 + .../1 - Concetti/sistema parallelo.md | 7 + .../1 - Concetti/sistema sequenziale.md | 7 + .../2 - Broadcast/broadcast.md | 21 + .../2 - Broadcast/flooding broadcast v1.md | 22 + .../2 - Broadcast/flooding broadcast v2.md | 23 + .../2 - Broadcast/flooding broadcast v3.md | 47 + .../2 - Broadcast/wake-up problem.md | 9 + ... di uno spanning tree tramite traversal.md | 16 + .../costruzione di uno spanning tree.md | 11 + .../3 - Spanning tree/protocollo shout v1.md | 11 + .../3 - Spanning tree/protocollo shout v2.md | 8 + .../3 - Spanning tree/spanning tree.md | 1 + .../1 - Concetti/leader election.md | 10 + .../2 - Su anello/anello.md | 4 + .../leader election all-the-way su anello.md | 11 + ...der election as-far-as-it-can su anello.md | 3 + ... election controlled-distance su anello.md | 34 + .../leader election su anello.md | 6 + .../3 - Su grafo generico/FloodMax.md | 11 + .../leader election su grafo generico.md | 5 + .../5 - Routing/broadcast routing.md | 5 + .../5 - Routing/routing table.md | 5 + .../5 - Routing/routing.md | 7 + steffo-file-index-ignore.json | 4 + steffo-file-index.json | 1696 +++++++++++++++++ 166 files changed, 3572 insertions(+), 255 deletions(-) create mode 100644 .obsidian/plugins/steffo-file-index/main.js create mode 100644 .obsidian/plugins/steffo-file-index/manifest.json create mode 100644 0 - Generale/back edge.md create mode 100644 7 - Big data analytics/★ indice.canvas rename 7 - High performance computing/{★ glossario ad alta performance.md => ★ glossario.md} (100%) create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/algoritmo corretto.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/algoritmo.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/certificato per un'istanza.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/circuito di un grafo.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-completi.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/classe di problemi P.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/costo computazionale.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/criterio di costo logaritmico.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/criterio di costo uniforme.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/criterio di costo.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/dimensione dell'input.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/funzione costo.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/funzione guadagno.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/funzione obiettivo.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/insieme delle istanze.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/insieme delle soluzioni.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/istanza negativa.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/istanza positiva.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/istanza.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/logaritmo in base 2.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/notazione O-grande.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/notazione asintotica.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/notazione o-piccola.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/notazione Θ-grande.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/notazione Ω-grande.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/notazione ω-piccola.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/ottimizzazione → decisionale.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/parametro.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/polinomiale.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema P e NP.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema computazionale.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema decisionale.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema del commesso viaggiatore.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema di massimizzazione.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema di minimizzazione.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema di ottimizzazione.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema di ricerca.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema intrattabile.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema irrisolvibile.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema presumibilmente intrattabile.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/problema trattabile.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/ricerca di ciclo hamiltoniano.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/riduzione di Karp.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/satisfability.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/soluzione ottima.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/soluzione.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/spazio.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/struttura dati.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/tempo.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/tesi di Church-Turing.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/verifica.md create mode 100644 9 - Algoritmi distribuiti/1 - Problemi/★ problemi.canvas create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/algoritmo di approssimazione.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/approssimazione del problema del commesso viaggiatore.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/fattore di approssimazione.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/minimum perfect matching.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/proprietà triangolare per il costo degli archi.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round per vertex cover problem.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/soluzione approssimata.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover problem.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover.md create mode 100644 9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/★ algoritmi di approssimazione.canvas create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma del ritardo di comunicazione.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma dell'orientamento locale.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/azione.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comportamento.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comunicazione.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/costo computazionale distribuito.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo asincrono.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo sincrono totale.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/entità.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento esterno.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento interno.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento personale.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/messaggio.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni del modello.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di affidabilità.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di comunicazione.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di tempo.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni topologiche.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/rete di comunicazione.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito asincrono.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito simmetrico.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema parallelo.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema sequenziale.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/broadcast.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v1.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v2.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v3.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/wake-up problem.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree tramite traversal.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v1.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v2.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/spanning tree.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/1 - Concetti/leader election.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/anello.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election all-the-way su anello.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election as-far-as-it-can su anello.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election controlled-distance su anello.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election su anello.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/FloodMax.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/leader election su grafo generico.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/broadcast routing.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing table.md create mode 100644 9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing.md create mode 100644 steffo-file-index-ignore.json create mode 100644 steffo-file-index.json diff --git a/.gitignore b/.gitignore index 55a5558..74a4e6c 100644 --- a/.gitignore +++ b/.gitignore @@ -6,5 +6,4 @@ .obsidian/workspace-mobile.json .trash -0 - Generale/★ esami.canvas -**/0 - Materiale di studio/ \ No newline at end of file +**/0 - Materiale di studio/ diff --git a/.obsidian/app.json b/.obsidian/app.json index 6920429..b8f0998 100644 --- a/.obsidian/app.json +++ b/.obsidian/app.json @@ -3,7 +3,7 @@ "useMarkdownLinks": false, "defaultViewMode": "source", "showFrontmatter": true, - "attachmentFolderPath": "./", + "attachmentFolderPath": "0 - Generale", "newFileLocation": "current", "strictLineBreaks": true, "showLineNumber": true, @@ -12,6 +12,6 @@ "autoConvertHtml": true, "showUnsupportedFiles": true, "newLinkFormat": "shortest", - "trashOption": "local", + "trashOption": "system", "promptDelete": false } \ No newline at end of file diff --git a/.obsidian/appearance.json b/.obsidian/appearance.json index 54a792f..e98a34e 100644 --- a/.obsidian/appearance.json +++ b/.obsidian/appearance.json @@ -2,7 +2,7 @@ "accentColor": "#d14224", "textFontFamily": "", "monospaceFontFamily": "", - "theme": "system", + "theme": "obsidian", "baseFontSize": 16, "enabledCssSnippets": [ "canvas-zoom", diff --git a/.obsidian/community-plugins.json b/.obsidian/community-plugins.json index 60f6a70..478aae7 100644 --- a/.obsidian/community-plugins.json +++ b/.obsidian/community-plugins.json @@ -1,3 +1,4 @@ [ - "obsidian-file-color" + "obsidian-file-color", + "steffo-file-index" ] \ No newline at end of file diff --git a/.obsidian/core-plugins-migration.json b/.obsidian/core-plugins-migration.json index 000b361..cbbdbe8 100644 --- a/.obsidian/core-plugins-migration.json +++ b/.obsidian/core-plugins-migration.json @@ -11,7 +11,7 @@ "daily-notes": false, "templates": false, "note-composer": false, - "command-palette": false, + "command-palette": true, "slash-command": false, "editor-status": true, "starred": false, diff --git a/.obsidian/core-plugins.json b/.obsidian/core-plugins.json index 33c32ce..4708816 100644 --- a/.obsidian/core-plugins.json +++ b/.obsidian/core-plugins.json @@ -8,6 +8,7 @@ "outgoing-link", "tag-pane", "properties", + "command-palette", "editor-status", "bookmarks", "outline", diff --git a/.obsidian/graph.json b/.obsidian/graph.json index 4f09403..0d94395 100644 --- a/.obsidian/graph.json +++ b/.obsidian/graph.json @@ -1,6 +1,6 @@ { "collapse-filter": false, - "search": "path:\"8 - Sistemi complessi\" ", + "search": "", "showTags": false, "showAttachments": false, "hideUnresolved": false, @@ -8,10 +8,24 @@ "collapse-color-groups": false, "colorGroups": [ { - "query": "path:\"8 - Sistemi complessi/4 - Grafi\" ", + "query": "path:\"8 - Sistemi complessi\"", "color": { "a": 1, - "rgb": 65284 + "rgb": 16776960 + } + }, + { + "query": "path:\"9 - Algoritmi distribuiti\" ", + "color": { + "a": 1, + "rgb": 255 + } + }, + { + "query": "path:\"8 - Crittografia applicata\" ", + "color": { + "a": 1, + "rgb": 16728064 } } ], @@ -25,6 +39,6 @@ "repelStrength": 20, "linkStrength": 1, "linkDistance": 30, - "scale": 0.45050811767578125, + "scale": 0.14225414259055147, "close": true } \ No newline at end of file diff --git a/.obsidian/hotkeys.json b/.obsidian/hotkeys.json index 9e26dfe..ccc86fe 100644 --- a/.obsidian/hotkeys.json +++ b/.obsidian/hotkeys.json @@ -1 +1,255 @@ -{} \ No newline at end of file +{ + "markdown:add-metadata-property": [], + "file-explorer:new-file": [ + { + "modifiers": [ + "Mod" + ], + "key": "Insert" + }, + { + "modifiers": [ + "Mod" + ], + "key": "N" + } + ], + "file-explorer:new-file-in-new-pane": [], + "editor:delete-paragraph": [], + "editor:follow-link": [], + "workspace:goto-last-tab": [], + "editor:insert-link": [ + { + "modifiers": [ + "Mod" + ], + "key": "U" + } + ], + "workspace:new-tab": [], + "app:open-help": [], + "app:open-settings": [], + "switcher:open": [], + "editor:open-search-replace": [ + { + "modifiers": [ + "Mod" + ], + "key": "H" + }, + { + "modifiers": [ + "Mod" + ], + "key": "R" + } + ], + "editor:toggle-blockquote": [ + { + "modifiers": [ + "Mod" + ], + "key": "\\" + } + ], + "editor:toggle-bullet-list": [ + { + "modifiers": [ + "Mod" + ], + "key": "-" + } + ], + "editor:toggle-inline-math": [ + { + "modifiers": [ + "Mod", + "Shift" + ], + "key": "4" + } + ], + "editor:set-heading": [ + { + "modifiers": [ + "Alt", + "Mod" + ], + "key": "'" + } + ], + "editor:toggle-code": [ + { + "modifiers": [ + "Alt", + "Mod" + ], + "key": "[" + } + ], + "editor:toggle-comments": [ + { + "modifiers": [ + "Mod", + "Shift" + ], + "key": "5" + } + ], + "editor:toggle-numbered-list": [ + { + "modifiers": [ + "Mod", + "Shift" + ], + "key": "1" + } + ], + "app:toggle-right-sidebar": [ + { + "modifiers": [ + "Mod" + ], + "key": "End" + } + ], + "app:toggle-left-sidebar": [ + { + "modifiers": [ + "Mod" + ], + "key": "Home" + } + ], + "editor:toggle-strikethrough": [ + { + "modifiers": [ + "Alt", + "Mod" + ], + "key": "]" + } + ], + "editor:fold-all": [ + { + "modifiers": [ + "Alt", + "Mod", + "Shift" + ], + "key": "-" + } + ], + "editor:unfold-all": [ + { + "modifiers": [ + "Alt", + "Mod", + "Shift" + ], + "key": "+" + } + ], + "workspace:undo-close-pane": [], + "theme:use-dark": [ + { + "modifiers": [ + "Mod" + ], + "key": "T" + } + ], + "theme:use-light": [ + { + "modifiers": [ + "Mod", + "Shift" + ], + "key": "T" + } + ], + "editor:insert-mathblock": [ + { + "modifiers": [ + "Alt", + "Mod", + "Shift" + ], + "key": "4" + } + ], + "editor:insert-codeblock": [ + { + "modifiers": [ + "Alt", + "Mod", + "Shift" + ], + "key": "[" + } + ], + "editor:insert-callout": [ + { + "modifiers": [ + "Mod", + "Shift" + ], + "key": "\\" + } + ], + "editor:attach-file": [ + { + "modifiers": [ + "Alt", + "Mod", + "Shift" + ], + "key": "V" + } + ], + "graph:open": [ + { + "modifiers": [ + "Mod", + "Shift" + ], + "key": "G" + } + ], + "graph:open-local": [ + { + "modifiers": [ + "Mod" + ], + "key": "G" + } + ], + "app:delete-file": [ + { + "modifiers": [ + "Alt", + "Mod", + "Shift" + ], + "key": "Delete" + } + ], + "workspace:toggle-pin": [ + { + "modifiers": [ + "Alt", + "Mod" + ], + "key": "P" + } + ], + "command-palette:open": [ + { + "modifiers": [ + "Mod", + "Shift" + ], + "key": "P" + } + ] +} \ No newline at end of file diff --git a/.obsidian/plugins/obsidian-file-color/data.json b/.obsidian/plugins/obsidian-file-color/data.json index a334959..4331b3e 100644 --- a/.obsidian/plugins/obsidian-file-color/data.json +++ b/.obsidian/plugins/obsidian-file-color/data.json @@ -8,17 +8,12 @@ { "id": "me4XBNQC4rwzQFLlvIAn0", "name": "System", - "value": "#65342a" + "value": "#5c0f00" }, { "id": "fc3lLaITDn62PYbzBhqxl", "name": "To do", - "value": "#dac38b" - }, - { - "id": "hEs1KsnMgHNA_g4pwAxtt", - "name": "Done", - "value": "#696969" + "value": "#d7a628" } ], "fileColors": [ @@ -91,7 +86,7 @@ "color": "7j7Pqog0VHMVVAfazMNlb" }, { - "path": "7 - High performance computing/★ glossario ad alta performance.md", + "path": "7 - High performance computing/★ glossario.md", "color": "7j7Pqog0VHMVVAfazMNlb" }, { @@ -114,14 +109,6 @@ "path": "8 - Metodologie di sviluppo software/★ Materiale di studio", "color": "7j7Pqog0VHMVVAfazMNlb" }, - { - "path": "8 - Metodologie di sviluppo software", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "7 - High performance computing", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/★ mappa concettuale.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" @@ -130,30 +117,10 @@ "path": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/★ mappa concettuale.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" }, - { - "path": "0 - Generale/★ esami.canvas", - "color": "7j7Pqog0VHMVVAfazMNlb" - }, { "path": "0 - Generale", "color": "7j7Pqog0VHMVVAfazMNlb" }, - { - "path": "7 - Big data analytics", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "7 - Introduction to quantum information processing", - "color": "fc3lLaITDn62PYbzBhqxl" - }, - { - "path": "8 - Crittografia applicata", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/★ mappa concettuale.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" @@ -182,78 +149,10 @@ "path": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/★ mappa concettuale.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/6b-unit-testing.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/6a-introduzione.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/5f-controllo-input.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/5e-sincronizzazione.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/5d-riduzione-superficie-attacco.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/5c-regola-silenzio.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/5b-minimo-privilegio.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/5a-introduzione.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/4f-input-non-controllato.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/4e-corse-critiche.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/4d-eccessiva-esposizione-asset.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/4c-eccessiva-verbosita-output.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/4a-introduzione.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/3-definizioni.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/4b-esecuzione-privilegi-elevati.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/★ mappa concettuale.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/6c-analisi-statica.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sviluppo di software sicuro/0 - Materiale di studio/Slides/6d-analisi-dinamica.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/2 - Sistemi complessi/★ sistemi complessi.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" @@ -274,18 +173,6 @@ "path": "8 - Sistemi complessi/6 - Robustezza/★ robustezza.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/01_introduction_p1_V2d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/01_introduction_p2_V3d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/000_introd.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/1 - Sistemi dinamici/★ sistemi dinamici.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" @@ -298,70 +185,14 @@ "path": "8 - Sistemi complessi/2 - Sistemi complessi/dense periodic orbits.md", "color": "fc3lLaITDn62PYbzBhqxl" }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/02_selforganization_P1_V2d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/02_selforganization_P2d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/2 - Sistemi complessi/Landau's phenomenological theory.md", "color": "fc3lLaITDn62PYbzBhqxl" }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/02_selforganization_P3_V2d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/03_CA1_intro_emergenced.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/03_CA2_CA1Dd.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/03_CA3_self_replicationd.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/03_CA4_fluidodind.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/03_CA5_modelli_v2d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/03_CA6_societad.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/4 - Grafi/percolation threshold.md", "color": "fc3lLaITDn62PYbzBhqxl" }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/04a_lab_reti_p1_v1_COLOREd.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/04a_lab_reti_p2a_v1d_COLOR.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/04a_lab_reti_p2b_v1d_COLOR.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/04a_lab_reti_p2c_v1d_COLOR.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/04a_lab_reti_p3_v1d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/4 - Grafi/★ grafi multi-livello.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" @@ -378,30 +209,10 @@ "path": "8 - Sistemi complessi/4 - Grafi/★ ipergrafi.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/05_Mreti_v2d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/05c_HypNet_V3d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/06a_OOL_protocells_v3d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/5 - Origine della vita/insieme auto-catalitico riflessivo generato da cibo.md", "color": "fc3lLaITDn62PYbzBhqxl" }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/06b_autocat_V4_p1d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/06b_autocat_V4_p2d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/07_RBNd_COLOR.pdf", "color": "fc3lLaITDn62PYbzBhqxl" @@ -422,14 +233,6 @@ "path": "8 - Sistemi complessi/6 - Robustezza/evolvibilità.md", "color": "fc3lLaITDn62PYbzBhqxl" }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/08_degener_v1d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, - { - "path": "8 - Sistemi complessi/0 - Materiale di studio/Slides/10_HOT_v1d.pdf", - "color": "hEs1KsnMgHNA_g4pwAxtt" - }, { "path": "8 - Sistemi complessi/5 - Origine della vita/modello di Kauffman gene-RBN.md", "color": "fc3lLaITDn62PYbzBhqxl" @@ -437,6 +240,106 @@ { "path": "8 - Sistemi complessi/5 - Origine della vita/★ geni come random boolean network.canvas", "color": "7j7Pqog0VHMVVAfazMNlb" + }, + { + "path": "9 - Algoritmi distribuiti/1 - Problemi", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/1 - Problemi/★ problemi.canvas", + "color": "7j7Pqog0VHMVVAfazMNlb" + }, + { + "path": "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover problem.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round per vertex cover problem.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/minimum perfect matching.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/★ algoritmi di approssimazione.canvas", + "color": "7j7Pqog0VHMVVAfazMNlb" + }, + { + "path": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v3.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v2.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v1.md", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/1 - Concetti", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "7 - Big data analytics/★ indice.canvas", + "color": "7j7Pqog0VHMVVAfazMNlb" + }, + { + "path": "7 - Introduction to quantum information processing", + "color": "fc3lLaITDn62PYbzBhqxl" + }, + { + "path": "steffo-file-index.json", + "color": "me4XBNQC4rwzQFLlvIAn0" + }, + { + "path": "steffo-file-index-ignore.json", + "color": "me4XBNQC4rwzQFLlvIAn0" } ] } \ No newline at end of file diff --git a/.obsidian/plugins/steffo-file-index/main.js b/.obsidian/plugins/steffo-file-index/main.js new file mode 100644 index 0000000..bfecd31 --- /dev/null +++ b/.obsidian/plugins/steffo-file-index/main.js @@ -0,0 +1,146 @@ +/* +THIS IS A GENERATED/BUNDLED FILE BY ESBUILD +if you want to view the source, please visit the github repository of this plugin +*/ + +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var __accessCheck = (obj, member, msg) => { + if (!member.has(obj)) + throw TypeError("Cannot " + msg); +}; +var __privateGet = (obj, member, getter) => { + __accessCheck(obj, member, "read from private field"); + return getter ? getter.call(obj) : member.get(obj); +}; +var __privateAdd = (obj, member, value) => { + if (member.has(obj)) + throw TypeError("Cannot add the same private member more than once"); + member instanceof WeakSet ? member.add(obj) : member.set(obj, value); +}; + +// main.ts +var main_exports = {}; +__export(main_exports, { + default: () => SteffoFileIndexPlugin +}); +module.exports = __toCommonJS(main_exports); +var import_obsidian = require("obsidian"); +var _reloadIgnoreRegExpsIfIgnoreFileChangedBinding, _recreateFileIndexBinding; +var _SteffoFileIndexPlugin = class extends import_obsidian.Plugin { + constructor() { + super(...arguments); + this.ignoreRegExps = []; + __privateAdd(this, _reloadIgnoreRegExpsIfIgnoreFileChangedBinding, this.reloadIgnoreRegExpsIfIgnoreFileChanged.bind(this)); + __privateAdd(this, _recreateFileIndexBinding, this.recreateFileIndex.bind(this)); + } + async reloadIgnoreRegExps() { + const ignoreFile = this.app.vault.getAbstractFileByPath(_SteffoFileIndexPlugin.FILE_IGNORE_PATH); + if (ignoreFile === null) { + console.debug("[SteffoFileIndexPlugin] Ignore file does not exist, not ignoring anything:", _SteffoFileIndexPlugin.FILE_IGNORE_PATH); + this.ignoreRegExps = []; + } else if (ignoreFile instanceof import_obsidian.TFolder) { + console.debug("[SteffoFileIndexPlugin] Ignore file is actually a folder, not ignoring anything:", _SteffoFileIndexPlugin.FILE_IGNORE_PATH); + this.ignoreRegExps = []; + } else if (ignoreFile instanceof import_obsidian.TFile) { + const ignoreJSON = await this.app.vault.cachedRead(ignoreFile); + const ignoreContents = JSON.parse(ignoreJSON); + this.ignoreRegExps = ignoreContents.map((re) => new RegExp(re)); + console.debug("[SteffoFileIndexPlugin] Determined ignore list to be:", this.ignoreRegExps); + } else { + console.error("[SteffoFileIndexPlugin] Ignore file is of an unknown type, not doing anything:", _SteffoFileIndexPlugin.FILE_IGNORE_PATH); + } + } + async reloadIgnoreRegExpsIfIgnoreFileChanged(file) { + if (file.path === _SteffoFileIndexPlugin.FILE_IGNORE_PATH) { + await this.reloadIgnoreRegExps(); + } + } + async recreateFileIndex() { + const files = this.app.vault.getFiles(); + const basenames = {}; + const paths = []; + for (const file of files) { + let ignored = false; + for (const regexp of this.ignoreRegExps) { + if (file.path.match(regexp)) { + ignored = true; + break; + } + } + if (ignored) { + continue; + } + paths.push(file.path); + basenames[file.basename] = file.path; + } + paths.sort(); + const index = { basenames, paths }; + console.debug("[SteffoFileIndexPlugin] Determined index to be:", index); + const indexContents = JSON.stringify(index, null, " "); + const indexFile = this.app.vault.getAbstractFileByPath(_SteffoFileIndexPlugin.FILE_INDEX_PATH); + if (indexFile === null) { + console.debug("[SteffoFileIndexPlugin] File index does not exist, creating it right now at:", _SteffoFileIndexPlugin.FILE_INDEX_PATH); + await this.app.vault.create(_SteffoFileIndexPlugin.FILE_INDEX_PATH, indexContents); + } else if (indexFile instanceof import_obsidian.TFolder) { + console.debug("[SteffoFileIndexPlugin] Cannot create file index, as there's a folder at:", _SteffoFileIndexPlugin.FILE_INDEX_PATH); + } else if (indexFile instanceof import_obsidian.TFile) { + console.debug("[SteffoFileIndexPlugin] File index already exists, overwriting contents of:", _SteffoFileIndexPlugin.FILE_INDEX_PATH); + await this.app.vault.modify(indexFile, indexContents); + } else { + console.error("[SteffoFileIndexPlugin] File index is of an unknown type, not doing anything:", _SteffoFileIndexPlugin.FILE_INDEX_PATH); + } + } + async onload() { + this.addCommand({ + id: "steffo-file-index-recreate", + name: "Force file index recreation", + callback: this.recreateFileIndex.bind(this) + }); + this.app.workspace.onLayoutReady(async () => { + await this.reloadIgnoreRegExps(); + await this.recreateFileIndex(); + this.registerEvent( + this.app.vault.on("create", __privateGet(this, _reloadIgnoreRegExpsIfIgnoreFileChangedBinding)) + ); + this.registerEvent( + this.app.vault.on("delete", __privateGet(this, _reloadIgnoreRegExpsIfIgnoreFileChangedBinding)) + ); + this.registerEvent( + this.app.vault.on("rename", __privateGet(this, _reloadIgnoreRegExpsIfIgnoreFileChangedBinding)) + ); + this.registerEvent( + this.app.vault.on("create", __privateGet(this, _recreateFileIndexBinding)) + ); + this.registerEvent( + this.app.vault.on("delete", __privateGet(this, _recreateFileIndexBinding)) + ); + this.registerEvent( + this.app.vault.on("rename", __privateGet(this, _recreateFileIndexBinding)) + ); + }); + } + onunload() { + } +}; +var SteffoFileIndexPlugin = _SteffoFileIndexPlugin; +_reloadIgnoreRegExpsIfIgnoreFileChangedBinding = new WeakMap(); +_recreateFileIndexBinding = new WeakMap(); +SteffoFileIndexPlugin.FILE_IGNORE_PATH = "steffo-file-index-ignore.json"; +SteffoFileIndexPlugin.FILE_INDEX_PATH = "steffo-file-index.json"; +//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsibWFpbi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHtQbHVnaW4sIFRGaWxlLCBURm9sZGVyfSBmcm9tIFwib2JzaWRpYW5cIlxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RlZmZvRmlsZUluZGV4IHtcblx0YmFzZW5hbWVzOiB7W2Jhc2VuYW1lOiBzdHJpbmddOiBzdHJpbmd9LFxuXHRwYXRoczogc3RyaW5nW10sXG59XG5cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RlZmZvRmlsZUluZGV4UGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcblx0c3RhdGljIEZJTEVfSUdOT1JFX1BBVEggPSBcInN0ZWZmby1maWxlLWluZGV4LWlnbm9yZS5qc29uXCJcblxuXHRpZ25vcmVSZWdFeHBzOiBSZWdFeHBbXSA9IFtdXG5cblx0YXN5bmMgcmVsb2FkSWdub3JlUmVnRXhwcygpIHtcblx0XHRjb25zdCBpZ25vcmVGaWxlID0gdGhpcy5hcHAudmF1bHQuZ2V0QWJzdHJhY3RGaWxlQnlQYXRoKFN0ZWZmb0ZpbGVJbmRleFBsdWdpbi5GSUxFX0lHTk9SRV9QQVRIKVxuXG5cdFx0aWYoaWdub3JlRmlsZSA9PT0gbnVsbCkge1xuXHRcdFx0Y29uc29sZS5kZWJ1ZyhcIltTdGVmZm9GaWxlSW5kZXhQbHVnaW5dIElnbm9yZSBmaWxlIGRvZXMgbm90IGV4aXN0LCBub3QgaWdub3JpbmcgYW55dGhpbmc6XCIsIFN0ZWZmb0ZpbGVJbmRleFBsdWdpbi5GSUxFX0lHTk9SRV9QQVRIKVxuXHRcdFx0dGhpcy5pZ25vcmVSZWdFeHBzID0gW11cblx0XHR9XG5cdFx0ZWxzZSBpZihpZ25vcmVGaWxlIGluc3RhbmNlb2YgVEZvbGRlcikge1xuXHRcdFx0Y29uc29sZS5kZWJ1ZyhcIltTdGVmZm9GaWxlSW5kZXhQbHVnaW5dIElnbm9yZSBmaWxlIGlzIGFjdHVhbGx5IGEgZm9sZGVyLCBub3QgaWdub3JpbmcgYW55dGhpbmc6XCIsIFN0ZWZmb0ZpbGVJbmRleFBsdWdpbi5GSUxFX0lHTk9SRV9QQVRIKVxuXHRcdFx0dGhpcy5pZ25vcmVSZWdFeHBzID0gW11cblx0XHR9XG5cdFx0ZWxzZSBpZihpZ25vcmVGaWxlIGluc3RhbmNlb2YgVEZpbGUpIHtcblx0XHRcdGNvbnN0IGlnbm9yZUpTT04gPSBhd2FpdCB0aGlzLmFwcC52YXVsdC5jYWNoZWRSZWFkKGlnbm9yZUZpbGUpXG5cdFx0XHRjb25zdCBpZ25vcmVDb250ZW50czogc3RyaW5nW10gPSBKU09OLnBhcnNlKGlnbm9yZUpTT04pXG5cdFx0XHR0aGlzLmlnbm9yZVJlZ0V4cHMgPSBpZ25vcmVDb250ZW50cy5tYXAoKHJlKSA9PiBuZXcgUmVnRXhwKHJlKSlcblx0XHRcdGNvbnNvbGUuZGVidWcoXCJbU3RlZmZvRmlsZUluZGV4UGx1Z2luXSBEZXRlcm1pbmVkIGlnbm9yZSBsaXN0IHRvIGJlOlwiLCB0aGlzLmlnbm9yZVJlZ0V4cHMpXG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0Y29uc29sZS5lcnJvcihcIltTdGVmZm9GaWxlSW5kZXhQbHVnaW5dIElnbm9yZSBmaWxlIGlzIG9mIGFuIHVua25vd24gdHlwZSwgbm90IGRvaW5nIGFueXRoaW5nOlwiLCBTdGVmZm9GaWxlSW5kZXhQbHVnaW4uRklMRV9JR05PUkVfUEFUSClcblx0XHR9XG5cdH1cblxuXHRhc3luYyByZWxvYWRJZ25vcmVSZWdFeHBzSWZJZ25vcmVGaWxlQ2hhbmdlZChmaWxlOiBURmlsZSkge1xuXHRcdGlmKGZpbGUucGF0aCA9PT0gU3RlZmZvRmlsZUluZGV4UGx1Z2luLkZJTEVfSUdOT1JFX1BBVEgpIHtcblx0XHRcdGF3YWl0IHRoaXMucmVsb2FkSWdub3JlUmVnRXhwcygpXG5cdFx0fVxuXHR9XG5cblx0c3RhdGljIEZJTEVfSU5ERVhfUEFUSCA9IFwic3RlZmZvLWZpbGUtaW5kZXguanNvblwiXG5cblx0YXN5bmMgcmVjcmVhdGVGaWxlSW5kZXgoKSB7XG5cdFx0Y29uc3QgZmlsZXMgPSB0aGlzLmFwcC52YXVsdC5nZXRGaWxlcygpXG5cblx0XHRjb25zdCBiYXNlbmFtZXM6IHtbYmFzZW5hbWU6IHN0cmluZ106IHN0cmluZ30gPSB7fVxuXHRcdGNvbnN0IHBhdGhzID0gW11cblxuXHRcdGZvcihjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG5cdFx0XHRsZXQgaWdub3JlZCA9IGZhbHNlXG5cdFx0XHRmb3IoY29uc3QgcmVnZXhwIG9mIHRoaXMuaWdub3JlUmVnRXhwcykge1xuXHRcdFx0XHRpZihmaWxlLnBhdGgubWF0Y2gocmVnZXhwKSkge1xuXHRcdFx0XHRcdGlnbm9yZWQgPSB0cnVlXG5cdFx0XHRcdFx0YnJlYWtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0aWYoaWdub3JlZCkge1xuXHRcdFx0XHRjb250aW51ZVxuXHRcdFx0fVxuXG5cdFx0XHRwYXRocy5wdXNoKGZpbGUucGF0aClcblx0XHRcdGJhc2VuYW1lc1tmaWxlLmJhc2VuYW1lXSA9IGZpbGUucGF0aFxuXHRcdH1cblxuXHRcdHBhdGhzLnNvcnQoKVxuXG5cdFx0Y29uc3QgaW5kZXg6IFN0ZWZmb0ZpbGVJbmRleCA9IHtiYXNlbmFtZXMsIHBhdGhzfVxuXHRcdGNvbnNvbGUuZGVidWcoXCJbU3RlZmZvRmlsZUluZGV4UGx1Z2luXSBEZXRlcm1pbmVkIGluZGV4IHRvIGJlOlwiLCBpbmRleClcblxuXHRcdGNvbnN0IGluZGV4Q29udGVudHMgPSBKU09OLnN0cmluZ2lmeShpbmRleCwgbnVsbCwgXCJcXHRcIilcblxuXHRcdGNvbnN0IGluZGV4RmlsZSA9IHRoaXMuYXBwLnZhdWx0LmdldEFic3RyYWN0RmlsZUJ5UGF0aChTdGVmZm9GaWxlSW5kZXhQbHVnaW4uRklMRV9JTkRFWF9QQVRIKVxuXHRcdGlmKGluZGV4RmlsZSA9PT0gbnVsbCkge1xuXHRcdFx0Y29uc29sZS5kZWJ1ZyhcIltTdGVmZm9GaWxlSW5kZXhQbHVnaW5dIEZpbGUgaW5kZXggZG9lcyBub3QgZXhpc3QsIGNyZWF0aW5nIGl0IHJpZ2h0IG5vdyBhdDpcIiwgU3RlZmZvRmlsZUluZGV4UGx1Z2luLkZJTEVfSU5ERVhfUEFUSClcblx0XHRcdGF3YWl0IHRoaXMuYXBwLnZhdWx0LmNyZWF0ZShTdGVmZm9GaWxlSW5kZXhQbHVnaW4uRklMRV9JTkRFWF9QQVRILCBpbmRleENvbnRlbnRzKVxuXHRcdH1cblx0XHRlbHNlIGlmKGluZGV4RmlsZSBpbnN0YW5jZW9mIFRGb2xkZXIpIHtcblx0XHRcdGNvbnNvbGUuZGVidWcoXCJbU3RlZmZvRmlsZUluZGV4UGx1Z2luXSBDYW5ub3QgY3JlYXRlIGZpbGUgaW5kZXgsIGFzIHRoZXJlJ3MgYSBmb2xkZXIgYXQ6XCIsIFN0ZWZmb0ZpbGVJbmRleFBsdWdpbi5GSUxFX0lOREVYX1BBVEgpXG5cdFx0fVxuXHRcdGVsc2UgaWYoaW5kZXhGaWxlIGluc3RhbmNlb2YgVEZpbGUpIHtcblx0XHRcdGNvbnNvbGUuZGVidWcoXCJbU3RlZmZvRmlsZUluZGV4UGx1Z2luXSBGaWxlIGluZGV4IGFscmVhZHkgZXhpc3RzLCBvdmVyd3JpdGluZyBjb250ZW50cyBvZjpcIiwgU3RlZmZvRmlsZUluZGV4UGx1Z2luLkZJTEVfSU5ERVhfUEFUSClcblx0XHRcdGF3YWl0IHRoaXMuYXBwLnZhdWx0Lm1vZGlmeShpbmRleEZpbGUsIGluZGV4Q29udGVudHMpXG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0Y29uc29sZS5lcnJvcihcIltTdGVmZm9GaWxlSW5kZXhQbHVnaW5dIEZpbGUgaW5kZXggaXMgb2YgYW4gdW5rbm93biB0eXBlLCBub3QgZG9pbmcgYW55dGhpbmc6XCIsIFN0ZWZmb0ZpbGVJbmRleFBsdWdpbi5GSUxFX0lOREVYX1BBVEgpXG5cdFx0fVxuXHR9XG5cblx0I3JlbG9hZElnbm9yZVJlZ0V4cHNJZklnbm9yZUZpbGVDaGFuZ2VkQmluZGluZyA9IHRoaXMucmVsb2FkSWdub3JlUmVnRXhwc0lmSWdub3JlRmlsZUNoYW5nZWQuYmluZCh0aGlzKVxuXHQjcmVjcmVhdGVGaWxlSW5kZXhCaW5kaW5nID0gdGhpcy5yZWNyZWF0ZUZpbGVJbmRleC5iaW5kKHRoaXMpXG5cblx0YXN5bmMgb25sb2FkKCkge1xuXG5cdFx0dGhpcy5hZGRDb21tYW5kKHtcblx0XHRcdGlkOiAnc3RlZmZvLWZpbGUtaW5kZXgtcmVjcmVhdGUnLFxuXHRcdFx0bmFtZTogJ0ZvcmNlIGZpbGUgaW5kZXggcmVjcmVhdGlvbicsXG5cdFx0XHRjYWxsYmFjazogdGhpcy5yZWNyZWF0ZUZpbGVJbmRleC5iaW5kKHRoaXMpXG5cdFx0fSlcblxuXHRcdHRoaXMuYXBwLndvcmtzcGFjZS5vbkxheW91dFJlYWR5KGFzeW5jICgpID0+IHtcblx0XHRcdGF3YWl0IHRoaXMucmVsb2FkSWdub3JlUmVnRXhwcygpXG5cdFx0XHRhd2FpdCB0aGlzLnJlY3JlYXRlRmlsZUluZGV4KClcblxuXHRcdFx0dGhpcy5yZWdpc3RlckV2ZW50KFxuXHRcdFx0XHR0aGlzLmFwcC52YXVsdC5vbihcImNyZWF0ZVwiLCB0aGlzLiNyZWxvYWRJZ25vcmVSZWdFeHBzSWZJZ25vcmVGaWxlQ2hhbmdlZEJpbmRpbmcpXG5cdFx0XHQpXG5cdFx0XHR0aGlzLnJlZ2lzdGVyRXZlbnQoXG5cdFx0XHRcdHRoaXMuYXBwLnZhdWx0Lm9uKFwiZGVsZXRlXCIsIHRoaXMuI3JlbG9hZElnbm9yZVJlZ0V4cHNJZklnbm9yZUZpbGVDaGFuZ2VkQmluZGluZylcblx0XHRcdClcblx0XHRcdHRoaXMucmVnaXN0ZXJFdmVudChcblx0XHRcdFx0dGhpcy5hcHAudmF1bHQub24oXCJyZW5hbWVcIiwgdGhpcy4jcmVsb2FkSWdub3JlUmVnRXhwc0lmSWdub3JlRmlsZUNoYW5nZWRCaW5kaW5nKVxuXHRcdFx0KVxuXG5cdFx0XHR0aGlzLnJlZ2lzdGVyRXZlbnQoXG5cdFx0XHRcdHRoaXMuYXBwLnZhdWx0Lm9uKFwiY3JlYXRlXCIsIHRoaXMuI3JlY3JlYXRlRmlsZUluZGV4QmluZGluZylcblx0XHRcdClcblx0XHRcdHRoaXMucmVnaXN0ZXJFdmVudChcblx0XHRcdFx0dGhpcy5hcHAudmF1bHQub24oXCJkZWxldGVcIiwgdGhpcy4jcmVjcmVhdGVGaWxlSW5kZXhCaW5kaW5nKVxuXHRcdFx0KVxuXHRcdFx0dGhpcy5yZWdpc3RlckV2ZW50KFxuXHRcdFx0XHR0aGlzLmFwcC52YXVsdC5vbihcInJlbmFtZVwiLCB0aGlzLiNyZWNyZWF0ZUZpbGVJbmRleEJpbmRpbmcpXG5cdFx0XHQpXG5cdFx0fSlcblx0fVxuXG5cdG9udW5sb2FkKCkge1xuXG5cdH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsc0JBQXFDO0FBQXJDO0FBU0EsSUFBcUIseUJBQXJCLGNBQW1ELHVCQUFPO0FBQUEsRUFBMUQ7QUFBQTtBQUdDLHlCQUEwQixDQUFDO0FBOEUzQix1RUFBaUQsS0FBSyx1Q0FBdUMsS0FBSyxJQUFJO0FBQ3RHLGtEQUE0QixLQUFLLGtCQUFrQixLQUFLLElBQUk7QUFBQTtBQUFBLEVBN0U1RCxNQUFNLHNCQUFzQjtBQUMzQixVQUFNLGFBQWEsS0FBSyxJQUFJLE1BQU0sc0JBQXNCLHVCQUFzQixnQkFBZ0I7QUFFOUYsUUFBRyxlQUFlLE1BQU07QUFDdkIsY0FBUSxNQUFNLDhFQUE4RSx1QkFBc0IsZ0JBQWdCO0FBQ2xJLFdBQUssZ0JBQWdCLENBQUM7QUFBQSxJQUN2QixXQUNRLHNCQUFzQix5QkFBUztBQUN0QyxjQUFRLE1BQU0sb0ZBQW9GLHVCQUFzQixnQkFBZ0I7QUFDeEksV0FBSyxnQkFBZ0IsQ0FBQztBQUFBLElBQ3ZCLFdBQ1Esc0JBQXNCLHVCQUFPO0FBQ3BDLFlBQU0sYUFBYSxNQUFNLEtBQUssSUFBSSxNQUFNLFdBQVcsVUFBVTtBQUM3RCxZQUFNLGlCQUEyQixLQUFLLE1BQU0sVUFBVTtBQUN0RCxXQUFLLGdCQUFnQixlQUFlLElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxFQUFFLENBQUM7QUFDOUQsY0FBUSxNQUFNLHlEQUF5RCxLQUFLLGFBQWE7QUFBQSxJQUMxRixPQUNLO0FBQ0osY0FBUSxNQUFNLGtGQUFrRix1QkFBc0IsZ0JBQWdCO0FBQUEsSUFDdkk7QUFBQSxFQUNEO0FBQUEsRUFFQSxNQUFNLHVDQUF1QyxNQUFhO0FBQ3pELFFBQUcsS0FBSyxTQUFTLHVCQUFzQixrQkFBa0I7QUFDeEQsWUFBTSxLQUFLLG9CQUFvQjtBQUFBLElBQ2hDO0FBQUEsRUFDRDtBQUFBLEVBSUEsTUFBTSxvQkFBb0I7QUFDekIsVUFBTSxRQUFRLEtBQUssSUFBSSxNQUFNLFNBQVM7QUFFdEMsVUFBTSxZQUEwQyxDQUFDO0FBQ2pELFVBQU0sUUFBUSxDQUFDO0FBRWYsZUFBVSxRQUFRLE9BQU87QUFDeEIsVUFBSSxVQUFVO0FBQ2QsaUJBQVUsVUFBVSxLQUFLLGVBQWU7QUFDdkMsWUFBRyxLQUFLLEtBQUssTUFBTSxNQUFNLEdBQUc7QUFDM0Isb0JBQVU7QUFDVjtBQUFBLFFBQ0Q7QUFBQSxNQUNEO0FBQ0EsVUFBRyxTQUFTO0FBQ1g7QUFBQSxNQUNEO0FBRUEsWUFBTSxLQUFLLEtBQUssSUFBSTtBQUNwQixnQkFBVSxLQUFLLFFBQVEsSUFBSSxLQUFLO0FBQUEsSUFDakM7QUFFQSxVQUFNLEtBQUs7QUFFWCxVQUFNLFFBQXlCLEVBQUMsV0FBVyxNQUFLO0FBQ2hELFlBQVEsTUFBTSxtREFBbUQsS0FBSztBQUV0RSxVQUFNLGdCQUFnQixLQUFLLFVBQVUsT0FBTyxNQUFNLEdBQUk7QUFFdEQsVUFBTSxZQUFZLEtBQUssSUFBSSxNQUFNLHNCQUFzQix1QkFBc0IsZUFBZTtBQUM1RixRQUFHLGNBQWMsTUFBTTtBQUN0QixjQUFRLE1BQU0sZ0ZBQWdGLHVCQUFzQixlQUFlO0FBQ25JLFlBQU0sS0FBSyxJQUFJLE1BQU0sT0FBTyx1QkFBc0IsaUJBQWlCLGFBQWE7QUFBQSxJQUNqRixXQUNRLHFCQUFxQix5QkFBUztBQUNyQyxjQUFRLE1BQU0sNkVBQTZFLHVCQUFzQixlQUFlO0FBQUEsSUFDakksV0FDUSxxQkFBcUIsdUJBQU87QUFDbkMsY0FBUSxNQUFNLCtFQUErRSx1QkFBc0IsZUFBZTtBQUNsSSxZQUFNLEtBQUssSUFBSSxNQUFNLE9BQU8sV0FBVyxhQUFhO0FBQUEsSUFDckQsT0FDSztBQUNKLGNBQVEsTUFBTSxpRkFBaUYsdUJBQXNCLGVBQWU7QUFBQSxJQUNySTtBQUFBLEVBQ0Q7QUFBQSxFQUtBLE1BQU0sU0FBUztBQUVkLFNBQUssV0FBVztBQUFBLE1BQ2YsSUFBSTtBQUFBLE1BQ0osTUFBTTtBQUFBLE1BQ04sVUFBVSxLQUFLLGtCQUFrQixLQUFLLElBQUk7QUFBQSxJQUMzQyxDQUFDO0FBRUQsU0FBSyxJQUFJLFVBQVUsY0FBYyxZQUFZO0FBQzVDLFlBQU0sS0FBSyxvQkFBb0I7QUFDL0IsWUFBTSxLQUFLLGtCQUFrQjtBQUU3QixXQUFLO0FBQUEsUUFDSixLQUFLLElBQUksTUFBTSxHQUFHLFVBQVUsbUJBQUssK0NBQThDO0FBQUEsTUFDaEY7QUFDQSxXQUFLO0FBQUEsUUFDSixLQUFLLElBQUksTUFBTSxHQUFHLFVBQVUsbUJBQUssK0NBQThDO0FBQUEsTUFDaEY7QUFDQSxXQUFLO0FBQUEsUUFDSixLQUFLLElBQUksTUFBTSxHQUFHLFVBQVUsbUJBQUssK0NBQThDO0FBQUEsTUFDaEY7QUFFQSxXQUFLO0FBQUEsUUFDSixLQUFLLElBQUksTUFBTSxHQUFHLFVBQVUsbUJBQUssMEJBQXlCO0FBQUEsTUFDM0Q7QUFDQSxXQUFLO0FBQUEsUUFDSixLQUFLLElBQUksTUFBTSxHQUFHLFVBQVUsbUJBQUssMEJBQXlCO0FBQUEsTUFDM0Q7QUFDQSxXQUFLO0FBQUEsUUFDSixLQUFLLElBQUksTUFBTSxHQUFHLFVBQVUsbUJBQUssMEJBQXlCO0FBQUEsTUFDM0Q7QUFBQSxJQUNELENBQUM7QUFBQSxFQUNGO0FBQUEsRUFFQSxXQUFXO0FBQUEsRUFFWDtBQUNEO0FBekhBLElBQXFCLHdCQUFyQjtBQWlGQztBQUNBO0FBbEZvQixzQkFDYixtQkFBbUI7QUFETixzQkFpQ2Isa0JBQWtCOyIsCiAgIm5hbWVzIjogW10KfQo= diff --git a/.obsidian/plugins/steffo-file-index/manifest.json b/.obsidian/plugins/steffo-file-index/manifest.json new file mode 100644 index 0000000..62b8875 --- /dev/null +++ b/.obsidian/plugins/steffo-file-index/manifest.json @@ -0,0 +1,11 @@ +{ + "id": "steffo-file-index", + "name": "File Index", + "version": "1.1.0", + "minAppVersion": "0.15.0", + "description": "Create a metadata file about the files present in the Vault", + "author": "Steffo", + "authorUrl": "https://www.steffo.eu", + "fundingUrl": "https://ko-fi.com/steffo", + "isDesktopOnly": false +} diff --git a/0 - Generale/back edge.md b/0 - Generale/back edge.md new file mode 100644 index 0000000..0ac6f7f --- /dev/null +++ b/0 - Generale/back edge.md @@ -0,0 +1 @@ +[[arco di un grafo|arco]] in un [[albero]] che connette un [[nodo di un grafo|nodo]] ad un suo antenato. diff --git a/7 - Big data analytics/★ indice.canvas b/7 - Big data analytics/★ indice.canvas new file mode 100644 index 0000000..4930036 --- /dev/null +++ b/7 - Big data analytics/★ indice.canvas @@ -0,0 +1,31 @@ +{ + "nodes":[ + {"id":"6b1fd76799ab0012","type":"file","file":"7 - Big data analytics/A2 - Big data/README.md","subpath":"#Redis per applicazioni scalabili, efficienti e veloci","x":-800,"y":-480,"width":880,"height":960}, + {"id":"e4cbe1c9d5eb9723","type":"file","file":"7 - Big data analytics/A1 - MongoDB/README.md","subpath":"#Ricerca in linguaggio naturale sul dataset Amazon","x":240,"y":-480,"width":880,"height":960}, + {"id":"7c1c60e823cc24ed","type":"file","file":"7 - Big data analytics/A3 - Neo4J/README.md","subpath":"#Modellazione di un database Neo4J per le dipendenze delle crates del linguaggio Rust","x":1280,"y":-480,"width":880,"height":960}, + {"id":"77b5537483e2931f","type":"file","file":"7 - Big data analytics/B1 - Data analytics/README.md","subpath":"#Data analytics","x":2320,"y":-480,"width":880,"height":960}, + {"id":"53e84ca993b4c1bb","type":"file","file":"7 - Big data analytics/B3 - Graph analytics/README.md","subpath":"#Analisi su grafo Neo4J relativo alle dipendenze delle crates del linguaggio Rust","x":3360,"y":-480,"width":880,"height":960}, + {"id":"1b701e57c527ec45","type":"file","file":"7 - Big data analytics/B2 - Text analytics/README.md","subpath":"#Confronto tra modelli di sentiment analysis per recensioni Amazon","x":4400,"y":-480,"width":880,"height":960}, + {"id":"b285c5a2a42b4b96","type":"text","text":"# Progetti","x":2140,"y":-800,"width":200,"height":80,"color":"#ffffff"}, + {"id":"322a35eaca61d03f","x":-800,"y":640,"width":880,"height":960,"type":"link","url":"https://github.com/Steffo99/unimore-bda-1"}, + {"id":"ad0bf82864f8ab92","x":240,"y":640,"width":880,"height":960,"type":"link","url":"https://github.com/Steffo99/unimore-bda-2"}, + {"id":"1ea0dbc5af26f1d0","x":1280,"y":640,"width":880,"height":960,"type":"link","url":"https://github.com/Steffo99/unimore-bda-3"}, + {"id":"583dab4ef85f9ab8","x":2320,"y":640,"width":880,"height":960,"type":"link","url":"https://github.com/Steffo99/unimore-bda-4"}, + {"id":"8f57ec61410579e3","x":3360,"y":640,"width":880,"height":960,"type":"link","url":"https://github.com/Steffo99/unimore-bda-5"}, + {"id":"460943111ec9b9eb","x":4400,"y":640,"width":880,"height":960,"type":"link","url":"https://github.com/Steffo99/unimore-bda-6"} + ], + "edges":[ + {"id":"37eaaf2a85a6f27b","fromNode":"b285c5a2a42b4b96","fromSide":"bottom","toNode":"6b1fd76799ab0012","toSide":"top"}, + {"id":"d1d8cd4aa5b79a9b","fromNode":"b285c5a2a42b4b96","fromSide":"bottom","toNode":"e4cbe1c9d5eb9723","toSide":"top"}, + {"id":"0db3535077dc0690","fromNode":"b285c5a2a42b4b96","fromSide":"bottom","toNode":"7c1c60e823cc24ed","toSide":"top"}, + {"id":"672782657df38254","fromNode":"b285c5a2a42b4b96","fromSide":"bottom","toNode":"77b5537483e2931f","toSide":"top"}, + {"id":"ba306bf36bf9b65a","fromNode":"b285c5a2a42b4b96","fromSide":"bottom","toNode":"53e84ca993b4c1bb","toSide":"top"}, + {"id":"60bdd10dcdd3a3ea","fromNode":"b285c5a2a42b4b96","fromSide":"bottom","toNode":"1b701e57c527ec45","toSide":"top"}, + {"id":"3bc6b70bc61c8a26","fromNode":"6b1fd76799ab0012","fromSide":"bottom","toNode":"322a35eaca61d03f","toSide":"top"}, + {"id":"370e09a6ce9572bf","fromNode":"e4cbe1c9d5eb9723","fromSide":"bottom","toNode":"ad0bf82864f8ab92","toSide":"top"}, + {"id":"9dd36277eac4ee70","fromNode":"7c1c60e823cc24ed","fromSide":"bottom","toNode":"1ea0dbc5af26f1d0","toSide":"top"}, + {"id":"a29210bb95313ec7","fromNode":"77b5537483e2931f","fromSide":"bottom","toNode":"583dab4ef85f9ab8","toSide":"top"}, + {"id":"efd229189b9a96f1","fromNode":"53e84ca993b4c1bb","fromSide":"bottom","toNode":"8f57ec61410579e3","toSide":"top"}, + {"id":"9ebb31c9c4e1f357","fromNode":"1b701e57c527ec45","fromSide":"bottom","toNode":"460943111ec9b9eb","toSide":"top"} + ] +} \ No newline at end of file diff --git a/7 - High performance computing/★ glossario ad alta performance.md b/7 - High performance computing/★ glossario.md similarity index 100% rename from 7 - High performance computing/★ glossario ad alta performance.md rename to 7 - High performance computing/★ glossario.md diff --git a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione ideale.md b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione ideale.md index 293c9b3..edf6a1f 100644 --- a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione ideale.md +++ b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione ideale.md @@ -1 +1 @@ -Definizione formale delle caratteristiche condivise da tutte le possibili [[soluzione|soluzioni]] di un problema. \ No newline at end of file +Definizione formale delle caratteristiche condivise da tutte le possibili [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione|soluzioni]] di un problema. \ No newline at end of file diff --git a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione.md b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione.md index f3a3161..b73da3c 100644 --- a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione.md +++ b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione.md @@ -1 +1 @@ -Specifica realizzazione pratica di una data [[funzione ideale]], che, dati zero o più [[parametro|parametri]], emette uno o più [[risultato|risultati]]. +Specifica realizzazione pratica di una data [[funzione ideale]], che, dati zero o più [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|parametri]], emette uno o più [[risultato|risultati]]. diff --git a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/procedura.md b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/procedura.md index 3b25287..61fe39a 100644 --- a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/procedura.md +++ b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/procedura.md @@ -1 +1 @@ -Serie di azioni da eseguire per ottenere un effetto. +Sequenza di azioni da eseguire per ottenere un effetto. diff --git a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza.md b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza.md index efa74fb..e4a713e 100644 --- a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza.md +++ b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza.md @@ -1 +1 @@ -Requisito delle [[soluzione|soluzioni]] di un [[problema]] per cui esse non devono creare effetti indesiderati. \ No newline at end of file +Requisito delle [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione|soluzioni]] di un [[problema]] per cui esse non devono creare effetti indesiderati. \ No newline at end of file diff --git a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/vincolo.md b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/vincolo.md index 55bb20e..b3a12d2 100644 --- a/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/vincolo.md +++ b/8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/vincolo.md @@ -1 +1 @@ -Parte di un requisito di [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza]] che specifica uno specifico effetto indesiderato che non deve essere prodotto da una [[soluzione]]. \ No newline at end of file +Parte di un requisito di [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza]] che specifica uno specifico effetto indesiderato che non deve essere prodotto da una [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]]. diff --git a/8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/livello di sicurezza.md b/8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/livello di sicurezza.md index 757fc0e..12354c8 100644 --- a/8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/livello di sicurezza.md +++ b/8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/livello di sicurezza.md @@ -1,4 +1,4 @@ -[[Parametro]] che scala: +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro]] che scala: - il [[costo]] per l'[[utilizzo]] di una [[funzione]] *(idealmente [[polinomiale|polinomialmente]])* - il [[costo]] per l'[[attacco]] dello stesso *(idealmente [[esponenziale|esponenzialmente]])* - la soglia di probabilità che una [[garanzia computazionale]] venga violata *(idealmente [[inversa polinomiale|inversamente a una polinomiale]])* diff --git a/8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/stato di un pseudo-random number generator.md b/8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/stato di un pseudo-random number generator.md index 0fd5649..787cc4b 100644 --- a/8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/stato di un pseudo-random number generator.md +++ b/8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/stato di un pseudo-random number generator.md @@ -1,4 +1,4 @@ -[[parametro]] e [[risultato]] di un [[pseudo-random number generator]] necessario a calcolare il valore successivo da emettere. +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro]] e [[risultato]] di un [[pseudo-random number generator]] necessario a calcolare il valore successivo da emettere. Viene passato in input al generatore, modificato, e poi rimesso in output. diff --git a/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/bruteforce.md b/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/bruteforce.md index 77bffed..92e1612 100644 --- a/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/bruteforce.md +++ b/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/bruteforce.md @@ -7,7 +7,7 @@ ## Funzionamento -Consiste nel provare tutti i possibili [[parametro|parametri]] della [[funzione di cifratura]] fino a quando essa non emette il [[ciphertext]] conosciuto. +Consiste nel provare tutti i possibili [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|parametri]] della [[funzione di cifratura]] fino a quando essa non emette il [[ciphertext]] conosciuto. ### Livello di sicurezza diff --git a/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/chiave simmetrica.md b/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/chiave simmetrica.md index bec9996..beb4b75 100644 --- a/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/chiave simmetrica.md +++ b/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/chiave simmetrica.md @@ -1,3 +1,3 @@ -[[parametro|Parametro]] delle [[funzione di cifratura|funzioni di cifratura]] e delle [[funzione di decifratura|funzioni di decifratura]] di [[crittografia simmetrica moderna]]. +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|Parametro]] delle [[funzione di cifratura|funzioni di cifratura]] e delle [[funzione di decifratura|funzioni di decifratura]] di [[crittografia simmetrica moderna]]. [[Blob]] [[casualità crittografica|imprevedibile]] [[uniforme]] condiviso dai [[squadra blu|difensori]]. diff --git a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/funzione contestualizzata.md b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/funzione contestualizzata.md index 2ff7012..0f1f8d9 100644 --- a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/funzione contestualizzata.md +++ b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/funzione contestualizzata.md @@ -1,3 +1,3 @@ -[[funzione]] il cui output può essere differenziato con uno o più [[parametro|parametri]]. +[[funzione]] il cui output può essere differenziato con uno o più [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|parametri]]. Questi parametri possono essere impostati dall'analista che realizza un nuovo [[funzione|protocollo]], oppure dallo sviluppatore che li utilizza in una sua [[applicazione]]. \ No newline at end of file diff --git a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/extraction di una key derivation function.md b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/extraction di una key derivation function.md index 2167f5d..29621c2 100644 --- a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/extraction di una key derivation function.md +++ b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/extraction di una key derivation function.md @@ -1,6 +1,6 @@ [[funzione ideale]]. -Ha come [[parametro]]: +Ha come [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro]]: - un dato [[confidenzialità|confidenziale]] non-[[uniforme]] Dà come [[risultato]]: diff --git a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/input key material.md b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/input key material.md index 1e95135..ba40280 100644 --- a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/input key material.md +++ b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/input key material.md @@ -2,4 +2,4 @@ aliases: ["ikm"] --- -[[testo]] fornito in [[parametro|input]] a una [[key derivation function]]. \ No newline at end of file +[[testo]] fornito in [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|input]] a una [[key derivation function]]. \ No newline at end of file diff --git a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/pseudo-random key.md b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/pseudo-random key.md index 91a7c39..3e6376c 100644 --- a/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/pseudo-random key.md +++ b/8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/pseudo-random key.md @@ -2,4 +2,4 @@ aliases: ["prk"] --- -[[blob]] dato in [[risultato|output]] dalla fase di [[extraction di una key derivation function]], dato in [[parametro|input]] alla fase di [[expansion di una key derivation function|expansion]]. \ No newline at end of file +[[blob]] dato in [[risultato|output]] dalla fase di [[extraction di una key derivation function]], dato in [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|input]] alla fase di [[expansion di una key derivation function|expansion]]. \ No newline at end of file diff --git a/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave privata.md b/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave privata.md index 6366436..0f459d1 100644 --- a/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave privata.md +++ b/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave privata.md @@ -2,7 +2,7 @@ aliases: ["private key"] --- -[[parametro]] sconosciuto della [[congettura Diffie-Hellman classica]]. +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro]] sconosciuto della [[congettura Diffie-Hellman classica]]. #TODO Ma non solo. diff --git a/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave pubblica.md b/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave pubblica.md index 5898e6b..8d6f213 100644 --- a/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave pubblica.md +++ b/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave pubblica.md @@ -2,7 +2,7 @@ aliases: ["public key"] --- -[[parametro]] conosciuto della [[congettura Diffie-Hellman classica]]. +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro]] conosciuto della [[congettura Diffie-Hellman classica]]. #TODO Ma non solo. $$ diff --git a/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/one-way function.md b/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/one-way function.md index cf7a587..e954ca1 100644 --- a/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/one-way function.md +++ b/8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/one-way function.md @@ -1 +1 @@ -[[funzione]] in cui, conoscendo il [[risultato]], non è possibile risalire ai [[parametro|parametri]]. \ No newline at end of file +[[funzione]] in cui, conoscendo il [[risultato]], non è possibile risalire ai [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|parametri]]. \ No newline at end of file diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/Argon2.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/Argon2.md index 345ab4c..c480421 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/Argon2.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/Argon2.md @@ -1,11 +1,11 @@ -[[funzione di password hashing]] il cui fattore principale di costo è lo [[spazio]]. +[[funzione di password hashing]] il cui fattore principale di costo è lo [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/spazio]]. ## Parametri - [[password]] - [[salt]] -- Fattore di [[tempo]] -- Fattore di [[spazio]] +- Fattore di [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/tempo]] +- Fattore di [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/spazio]] - Fattore di parallelismo - [[lunghezza dell'output]] diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco interattivo.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco interattivo.md index 84ef207..ba66160 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco interattivo.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco interattivo.md @@ -7,5 +7,5 @@ Meno tentativi riesce a fare l'[[avversario]], più il livello di sicurezza è e ### Mitigazioni Per limitare i tentativi effettuabili dall'[[avversario]], possono essere adottate due soluzioni: -- [[invalidazione]] temporanea della credenziale attaccata per periodi crescenti di [[tempo]] +- [[invalidazione]] temporanea della credenziale attaccata per periodi crescenti di [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/tempo]] - [[invalidazione]] permanente della credenziale attaccata dopo un certo numero di accessi falliti diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing.md index 1070c84..5b6f74e 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing.md @@ -10,4 +10,4 @@ Ha un [[costo]] significativamente più elevato delle normali [[funzione di hash Dipende dalle risorse a disposizione dell'[[avversario]]. -In passato, il fattore limitante era il [[tempo]], ma con lo sviluppo di [[hardware dedicato all'hashing]], il fattore limitante è diventato prevalentemente lo [[spazio]]. +In passato, il fattore limitante era il [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/tempo]], ma con lo sviluppo di [[hardware dedicato all'hashing]], il fattore limitante è diventato prevalentemente lo [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/spazio]]. diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/scrypt.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/scrypt.md index 70e4d7c..75f4115 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/scrypt.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/scrypt.md @@ -1,4 +1,4 @@ -[[funzione di password hashing]] il cui fattore principale di costo è lo [[spazio]]. +[[funzione di password hashing]] il cui fattore principale di costo è lo [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/spazio]]. ## Casi d'uso diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/blinded.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/blinded.md index 15200c8..a7e8096 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/blinded.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/blinded.md @@ -1 +1 @@ -[[parametro]] o [[risultato]] il cui valore è nascosto e può essere rivelato solo da uno specifico [[agente]]. +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro]] o [[risultato]] il cui valore è nascosto e può essere rivelato solo da uno specifico [[agente]]. diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious.md index cd7cc6a..5501801 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious.md @@ -1 +1 @@ -Caratteristica di una [[funzione]] in grado di operare su dei [[blinded]] [[parametro|input]] per restituire un [[blinded]] [[risultato|output]]. \ No newline at end of file +Caratteristica di una [[funzione]] in grado di operare su dei [[blinded]] [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|input]] per restituire un [[blinded]] [[risultato|output]]. \ No newline at end of file diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/delegated verification.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/delegated verification.md index f0cb035..5496a7a 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/delegated verification.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/delegated verification.md @@ -1,3 +1,3 @@ -[[soluzione]] al problema di [[distribuzione chiavi pubbliche]] in cui si fa uso della [[fiducia transitiva]] per determinare se fidarsi o no di una data [[chiave pubblica]]. +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] al problema di [[distribuzione chiavi pubbliche]] in cui si fa uso della [[fiducia transitiva]] per determinare se fidarsi o no di una data [[chiave pubblica]]. Offre ottima [[scalabilità]]. \ No newline at end of file diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/out-of-band verification.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/out-of-band verification.md index 864e196..bbebd08 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/out-of-band verification.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/out-of-band verification.md @@ -1 +1 @@ -"[[soluzione]]" al problema di [[distribuzione chiavi pubbliche]] in cui si utilizza un canale sicuro stabilito in precedenza per [[autenticità|autenticare]] le nuove [[chiave pubblica|chiavi pubbliche]]. +"[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]]" al problema di [[distribuzione chiavi pubbliche]] in cui si utilizza un canale sicuro stabilito in precedenza per [[autenticità|autenticare]] le nuove [[chiave pubblica|chiavi pubbliche]]. diff --git a/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust-on-first-use.md b/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust-on-first-use.md index 5331ba7..6774f5a 100644 --- a/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust-on-first-use.md +++ b/8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust-on-first-use.md @@ -2,4 +2,4 @@ aliases: ["TOFU"] --- -[[soluzione]] al problema di [[distribuzione chiavi pubbliche]] in cui si considera sempre [[autenticità|autenticato]] il primo [[scambio di chiave]] effettuato con un altro [[user agent]]. +[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] al problema di [[distribuzione chiavi pubbliche]] in cui si considera sempre [[autenticità|autenticato]] il primo [[scambio di chiave]] effettuato con un altro [[user agent]]. diff --git a/8 - Metodologie di sviluppo software/Artefatti/user story.md b/8 - Metodologie di sviluppo software/Artefatti/user story.md index 0f163d1..ecdf6a6 100644 --- a/8 - Metodologie di sviluppo software/Artefatti/user story.md +++ b/8 - Metodologie di sviluppo software/Artefatti/user story.md @@ -2,7 +2,7 @@ aliases: ["issue"] --- -Tecnica di sviluppo per la [[fase di specifica]] e la [[fase di design]] in cui i requisiti vengono specificati come gli obiettivi che l'ideatore vuole raggiungere attraverso la sua [[soluzione]], e non come dettagli tecnici di implementazione. +Tecnica di sviluppo per la [[fase di specifica]] e la [[fase di design]] in cui i requisiti vengono specificati come gli obiettivi che l'ideatore vuole raggiungere attraverso la sua [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]], e non come dettagli tecnici di implementazione. Sono raccolte in raggruppamenti detti [[epic]]. diff --git a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di design.md b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di design.md index 8667c47..dc0c606 100644 --- a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di design.md +++ b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di design.md @@ -1,7 +1,7 @@ -Fase di un [[processo di sviluppo software]] in cui si determina ***come è formata*** la [[soluzione]] che si vuole sviluppare. +Fase di un [[processo di sviluppo software]] in cui si determina ***come è formata*** la [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] che si vuole sviluppare. In essa: -- si utilizzano [[design pattern]] per soddisfare il [[documento dei requsiti]] in una [[soluzione]] pratica +- si utilizzano [[design pattern]] per soddisfare il [[documento dei requsiti]] in una [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] pratica - si compilano tutti i [[design pattern]] selezionati in un [[artefatto]] detto [[specifica]] Talvolta ci si avvale di [[diagramma|diagrammi]] per rendere più chiari i concetti modellati, come: diff --git a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di implementazione.md b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di implementazione.md index 0cd1ee1..94a60e4 100644 --- a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di implementazione.md +++ b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di implementazione.md @@ -1,5 +1,5 @@ Fase di un [[processo di sviluppo software]] in cui si ***effettua lo sviluppo***. In essa, partendo dalla [[specifica]]: -- si determinano le [[dipendenza|dipendenze]] da utilizzare nella [[soluzione]], verificando la compatibilità con la [[licenza]] con il progetto -- si scrive il [[codice]] necessario a soddisfarla, [[artefatto|producendo]] la [[soluzione]] vera e propria +- si determinano le [[dipendenza|dipendenze]] da utilizzare nella [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]], verificando la compatibilità con la [[licenza]] con il progetto +- si scrive il [[codice]] necessario a soddisfarla, [[artefatto|producendo]] la [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] vera e propria diff --git a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di manutenzione.md b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di manutenzione.md index e07e42e..33ec8f1 100644 --- a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di manutenzione.md +++ b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di manutenzione.md @@ -1,4 +1,4 @@ -Fase di un [[processo di sviluppo software]] in cui si ***modifica*** la [[soluzione]] realizzata per correggere [[bug]] e [[errore|errori]]. +Fase di un [[processo di sviluppo software]] in cui si ***modifica*** la [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] realizzata per correggere [[bug]] e [[errore|errori]]. In essa: - si mantengono operativi eventuali [[server]] che [[software-as-a-service|prestano servizi]] diff --git a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di rilascio.md b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di rilascio.md index 0da693e..aba5dfc 100644 --- a/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di rilascio.md +++ b/8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di rilascio.md @@ -2,7 +2,7 @@ aliases: ["fase di release"] --- -Fase di un [[processo di sviluppo software]] in cui si ***consegna*** all'ideatore la [[soluzione]] realizzata. +Fase di un [[processo di sviluppo software]] in cui si ***consegna*** all'ideatore la [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] realizzata. In essa: - si [[artefatto|producono]] le [[istruzioni]] per l'installazione e l'utilizzo del software diff --git a/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello evolutivo.md b/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello evolutivo.md index 790f626..7933acb 100644 --- a/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello evolutivo.md +++ b/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello evolutivo.md @@ -2,7 +2,7 @@ aliases: ["evolutionary model"] --- -[[modello iterativo]] in cui la [[soluzione]] realizzata viene ricreata a [[timeboxing|intervalli regolari]], sfruttando le conoscenze ottenute nell'intervallo precedente per trovare una [[soluzione]] migliore. +[[modello iterativo]] in cui la [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] realizzata viene ricreata a [[timeboxing|intervalli regolari]], sfruttando le conoscenze ottenute nell'intervallo precedente per trovare una [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] migliore. ## #Extra Casi d'uso diff --git a/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello incrementale.md b/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello incrementale.md index b96b600..f6e9eac 100644 --- a/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello incrementale.md +++ b/8 - Metodologie di sviluppo software/Modelli di sviluppo/modello incrementale.md @@ -2,8 +2,8 @@ aliases: ["incremental model"] --- -[[modello iterativo]] in cui la [[soluzione]] realizzata viene migliorata a [[timeboxing|intervalli regolari]], realizzando ad ogni passo una [[soluzione]] sempre più funzionale. +[[modello iterativo]] in cui la [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] realizzata viene migliorata a [[timeboxing|intervalli regolari]], realizzando ad ogni passo una [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] sempre più funzionale. ## #Extra Casi d'uso -Trova ottimo impiego nello sviluppo di [[software-as-a-service]], in quanto è sempre necessario mantenere la [[retrocompatibilità]] ma al tempo stesso c'è bisogno di adattare la [[soluzione]] alle circostanze reali correnti. +Trova ottimo impiego nello sviluppo di [[software-as-a-service]], in quanto è sempre necessario mantenere la [[retrocompatibilità]] ma al tempo stesso c'è bisogno di adattare la [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] alle circostanze reali correnti. diff --git a/8 - Metodologie di sviluppo software/Testing/acceptance test.md b/8 - Metodologie di sviluppo software/Testing/acceptance test.md index cd245c5..05b99d4 100644 --- a/8 - Metodologie di sviluppo software/Testing/acceptance test.md +++ b/8 - Metodologie di sviluppo software/Testing/acceptance test.md @@ -1,4 +1,4 @@ -[[test]] che verifica la soddisfazione di un dato [[requisito]] da parte della [[soluzione]] realizzata. +[[test]] che verifica la soddisfazione di un dato [[requisito]] da parte della [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]] realizzata. ## Esempio diff --git a/8 - Metodologie di sviluppo software/Testing/performance test.md b/8 - Metodologie di sviluppo software/Testing/performance test.md index 98a991d..bf022d2 100644 --- a/8 - Metodologie di sviluppo software/Testing/performance test.md +++ b/8 - Metodologie di sviluppo software/Testing/performance test.md @@ -2,7 +2,7 @@ aliases: ["benchmark", "bench"] --- -[[test]] che misura e verifica l'efficienza della [[soluzione]]. +[[test]] che misura e verifica l'efficienza della [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]]. ## Esempio diff --git a/8 - Metodologie di sviluppo software/Testing/regression test.md b/8 - Metodologie di sviluppo software/Testing/regression test.md index 85fe7ac..7f81f33 100644 --- a/8 - Metodologie di sviluppo software/Testing/regression test.md +++ b/8 - Metodologie di sviluppo software/Testing/regression test.md @@ -1,4 +1,4 @@ -[[test]] che verifica la corretta risoluzione di un dato [[bug]] o [[errore]], e l'assenza di [[regressione|regressioni]] in versioni future della [[soluzione]]. +[[test]] che verifica la corretta risoluzione di un dato [[bug]] o [[errore]], e l'assenza di [[regressione|regressioni]] in versioni future della [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione]]. ``` from calculator import div diff --git a/8 - Sistemi complessi/1 - Sistemi dinamici/sistema dinamico.md b/8 - Sistemi complessi/1 - Sistemi dinamici/sistema dinamico.md index 5a10094..f5f7c22 100644 --- a/8 - Sistemi complessi/1 - Sistemi dinamici/sistema dinamico.md +++ b/8 - Sistemi complessi/1 - Sistemi dinamici/sistema dinamico.md @@ -1 +1 @@ -[[Modello matematico]] che prova a rappresentare un [[fenomeno]] reale che si evolve nel [[tempo]]. \ No newline at end of file +[[Modello matematico]] che prova a rappresentare un [[fenomeno]] reale che si evolve nel [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/tempo]]. \ No newline at end of file diff --git a/8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo spaziale.md b/8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo spaziale.md index 1c77439..927462f 100644 --- a/8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo spaziale.md +++ b/8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo spaziale.md @@ -1 +1 @@ -[[automa cellulare continuo]] con [[spazio]] e [[tempo]] continui invece che quantizzati. +[[automa cellulare continuo]] con [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/spazio]] e [[8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/tempo]] continui invece che quantizzati. diff --git a/8 - Sistemi complessi/4 - Grafi/diametro di un grafo.md b/8 - Sistemi complessi/4 - Grafi/diametro di un grafo.md index b86bcc6..b680437 100644 --- a/8 - Sistemi complessi/4 - Grafi/diametro di un grafo.md +++ b/8 - Sistemi complessi/4 - Grafi/diametro di un grafo.md @@ -13,3 +13,5 @@ $$ \bigg] \bigg] $$ + +È, nel caso peggiore, $archi - 1$. diff --git a/8 - Sviluppo di software sicuro/1 - Terminologia/asset.md b/8 - Sviluppo di software sicuro/1 - Terminologia/asset.md index f502c08..721cbcc 100644 --- a/8 - Sviluppo di software sicuro/1 - Terminologia/asset.md +++ b/8 - Sviluppo di software sicuro/1 - Terminologia/asset.md @@ -1,3 +1,3 @@ -[[Entità]] all'interno di un [[sistema complesso]]. +[[entità]] all'interno di un [[sistema complesso]]. In particolare, un software. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/algoritmo corretto.md b/9 - Algoritmi distribuiti/1 - Problemi/algoritmo corretto.md new file mode 100644 index 0000000..6972ab8 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/algoritmo corretto.md @@ -0,0 +1,3 @@ +[[Algoritmo]] che per ogni [[istanza]] restituisce sempre la [[soluzione]] corrispondente. + +> Un algoritmo non è *corretto* non solo se c'è qualche istanza per cui restituisce la soluzione sbagliata, ma anche se c'è qualche istanza **per cui non termina mai**! diff --git a/9 - Algoritmi distribuiti/1 - Problemi/algoritmo.md b/9 - Algoritmi distribuiti/1 - Problemi/algoritmo.md new file mode 100644 index 0000000..fb3a18b --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/algoritmo.md @@ -0,0 +1,5 @@ +[[Procedura]] generale per risolvere un [[problema computazionale]] che deve: +- essere **finita** +- **non** essere **ambigua** +- essere **effettivamente realizzabile** +- terminare **in un tempo finito** diff --git a/9 - Algoritmi distribuiti/1 - Problemi/certificato per un'istanza.md b/9 - Algoritmi distribuiti/1 - Problemi/certificato per un'istanza.md new file mode 100644 index 0000000..6492cb8 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/certificato per un'istanza.md @@ -0,0 +1,6 @@ +Sequenza di caratteri [[polinomiale]]. + +Dimostra che una data [[istanza]] è un'[[istanza positiva]]. + +> Nel problema di [[ricerca di ciclo hamiltoniano]], un [[certificato per un'istanza]] positiva è una sequenza di nodi attraversati che risulta in un [[ciclo hamiltoniano]]. + diff --git a/9 - Algoritmi distribuiti/1 - Problemi/circuito di un grafo.md b/9 - Algoritmi distribuiti/1 - Problemi/circuito di un grafo.md new file mode 100644 index 0000000..415e2b2 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/circuito di un grafo.md @@ -0,0 +1 @@ +[[Percorso di un grafo]] che inizia e finisce allo stesso [[nodo di un grafo|nodo]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-completi.md b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-completi.md new file mode 100644 index 0000000..0f52a6d --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-completi.md @@ -0,0 +1,26 @@ +--- +aliases: + - classe NP-complete + - NP-complete + - problema NP-complete +--- + +[[Insieme]] di [[problema decisionale|problemi decisionali]] equivalenti tra loro. + +Tutti i problemi della [[classe di problemi NP]] possono essere [[riduzione di Karp|ridotti]] ad essi: +$$ +\def \varProblemA {{\color{DarkOrchid} Problem_{A}}} +\def \varProblemB {{\color{SlateBlue} Problem_{B}}} +\Huge +\begin{cases} + \varProblemA \in NP + \\\\ + \forall \varProblemB \in NP : \varProblemB \leq_p \varProblemA +\end{cases} +$$ + +> Per dimostrare che un problema è NP-completo, basta dimostrare che un problema [[NP]] sia riducibile a uno NP-completo. + +Il primo problema NP-completo scoperto è stato [[satisfability|SAT]]; è stato poi utilizzato come [[bootstrap]] per tutti gli altri. + +Hanno una particolare rilevanza per il [[problema P e NP]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md new file mode 100644 index 0000000..497c331 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md @@ -0,0 +1,20 @@ +--- +aliases: + - classe NP-hard + - NP-hard + - problema NP-hard +--- +[[Insieme]] di [[problema di ottimizzazione|problemi di ottimizzazione]], di difficoltà uguale o maggiore rispetto alla [[classe di problemi NP]]. + +Perchè un problema sia considerato NP-difficile, si deve dimostrare che qualsiasi problema [[classe di problemi NP|NP]] possa essere [[riduzione di Karp|ridotto]] ad esso: +$$ +\def \varProblemA {{\color{DarkOrchid} Problem_{A}}} +\def \varProblemB {{\color{SlateBlue} Problem_{B}}} +\Huge +\begin{cases} +\varProblemA \in NP_{Hard} +\\\\ +\forall \varProblemB \in NP : \varProblemB \leq_p \varProblemA +\end{cases} +$$ + diff --git a/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP.md b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP.md new file mode 100644 index 0000000..b08ece8 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP.md @@ -0,0 +1,14 @@ +--- +aliases: + - classe NP + - NP + - problema NP +--- + +[[Insieme]] di [[problema decisionale|problemi decisionali]] con [[algoritmo]] [[verifica|verificatore]] [[polinomiale]] conosciuto. + +Trovare un algoritmo verificatore [[polinomiale]] per un problema indica che il problema è NP. + +Include la [[classe di problemi P]]. + +> Possibilmente *uguale* alla [[classe di problemi P]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi P.md b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi P.md new file mode 100644 index 0000000..146732e --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/classe di problemi P.md @@ -0,0 +1,14 @@ +--- +aliases: + - classe P + - P + - problema P +--- + +[[Insieme]] di [[problema decisionale|problemi decisionali]] con [[costo computazionale]] [[polinomiale]]. + +Trovare un [[algoritmo]] [[polinomiale]] per un problema indica che il problema è P. + +Sottoinsieme della [[classe di problemi NP]]. + +> Possibilmente *uguale* alla [[classe di problemi NP]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/costo computazionale.md b/9 - Algoritmi distribuiti/1 - Problemi/costo computazionale.md new file mode 100644 index 0000000..a22c8a9 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/costo computazionale.md @@ -0,0 +1,13 @@ +--- +aliases: + - complessità computazionale +--- + + +[[Misura]] che quantifica le [[risorsa|risorse]] necessarie a risolvere l'[[istanza]] peggiore di un [[problema computazionale]] in funzione della [[dimensione dell'input|dimensione del suo input]]. + +Può essere relativo a: +- [[tempo]] +- [[spazio]] + +> È spesso interessante studiarne i limiti, in particolare il limite inferiore. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo logaritmico.md b/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo logaritmico.md new file mode 100644 index 0000000..de33e27 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo logaritmico.md @@ -0,0 +1,13 @@ +Considera la [[dimensione dell'input]] come il numero di [[bit]] richiesti per rappresentarlo. + +## Esempi + +$$ +f(16) \underset{costo}{\longrightarrow} lg(16) = 4 +$$ +$$ +f(128) \underset{costo}{\longrightarrow} lg(128) = 7 +$$ +$$ +f([1, 2, 3, 4]) \underset{costo}{\longrightarrow} 1 + 2 + 2 + 3 = 8 +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo uniforme.md b/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo uniforme.md new file mode 100644 index 0000000..135b2ba --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo uniforme.md @@ -0,0 +1,13 @@ +Considera la [[dimensione dell'input]] come il numero di [[elemento|elementi]] richiesti per rappresentarlo. + +## Esempi + +$$ +f(16) \underset{costo}{\longrightarrow} 1 +$$ +$$ +f(128) \underset{costo}{\longrightarrow} 1 +$$ +$$ +f([1, 2, 3, 4]) \underset{costo}{\longrightarrow} 1+1+1+1 = 4 +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo.md b/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo.md new file mode 100644 index 0000000..3395db2 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/criterio di costo.md @@ -0,0 +1 @@ +Metodo utilizzato per misurare la [[dimensione dell'input]] di un \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/dimensione dell'input.md b/9 - Algoritmi distribuiti/1 - Problemi/dimensione dell'input.md new file mode 100644 index 0000000..549f071 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/dimensione dell'input.md @@ -0,0 +1,5 @@ +[[Misura]] relativa ai [[parametro|parametri]] che ne astrae la dimensione. + +Calcolata in base a vari criteri: +- [[criterio di costo logaritmico]] +- [[criterio di costo uniforme]] diff --git a/9 - Algoritmi distribuiti/1 - Problemi/funzione costo.md b/9 - Algoritmi distribuiti/1 - Problemi/funzione costo.md new file mode 100644 index 0000000..e80165f --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/funzione costo.md @@ -0,0 +1,13 @@ +--- +aliases: + - costo + - cost +--- + + +[[funzione obiettivo]] per un [[problema di minimizzazione]]. + +$$ +\Huge +cost(\dots) +$$ \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/funzione guadagno.md b/9 - Algoritmi distribuiti/1 - Problemi/funzione guadagno.md new file mode 100644 index 0000000..6169418 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/funzione guadagno.md @@ -0,0 +1,12 @@ +--- +aliases: + - guadagno + - gain +--- + +[[funzione obiettivo]] per un [[problema di massimizzazione]]. + +$$ +\Huge +gain(\dots) +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/funzione obiettivo.md b/9 - Algoritmi distribuiti/1 - Problemi/funzione obiettivo.md new file mode 100644 index 0000000..bd5bdc0 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/funzione obiettivo.md @@ -0,0 +1,9 @@ +[[Funzione]] che si vuole ottimizzare in un [[problema di ottimizzazione]]. + +$$ +\Huge +goal(\dots) +$$ + +In [[problema di minimizzazione|problemi di minimizzazione]] è detta [[funzione costo]]. +In [[problema di massimizzazione|problemi di massimizzazione]] è detta [[funzione guadagno]]. \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/insieme delle istanze.md b/9 - Algoritmi distribuiti/1 - Problemi/insieme delle istanze.md new file mode 100644 index 0000000..20d74f0 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/insieme delle istanze.md @@ -0,0 +1,5 @@ +[[Insieme]] di tutte le [[istanza|istanze]] di un [[problema computazionale]]. + +$$ +\Huge I +$$ \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/insieme delle soluzioni.md b/9 - Algoritmi distribuiti/1 - Problemi/insieme delle soluzioni.md new file mode 100644 index 0000000..6acbc16 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/insieme delle soluzioni.md @@ -0,0 +1,5 @@ +[[insieme]] di tutte le [[soluzione|soluzioni]] di un [[problema computazionale]]: + +$$ +\Huge S +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/istanza negativa.md b/9 - Algoritmi distribuiti/1 - Problemi/istanza negativa.md new file mode 100644 index 0000000..d354551 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/istanza negativa.md @@ -0,0 +1,3 @@ +[[istanza]] di un [[problema decisionale]] il cui risultato è [[negativo]]. + +Opposta all'[[istanza positiva]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/istanza positiva.md b/9 - Algoritmi distribuiti/1 - Problemi/istanza positiva.md new file mode 100644 index 0000000..b08e526 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/istanza positiva.md @@ -0,0 +1,3 @@ +[[istanza]] di un [[problema decisionale]] il cui risultato è [[positivo]]. + +Opposta all'[[istanza negativa]]. \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/istanza.md b/9 - Algoritmi distribuiti/1 - Problemi/istanza.md new file mode 100644 index 0000000..e95fe9b --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/istanza.md @@ -0,0 +1,11 @@ +--- +aliases: + - input +--- + + +Specifica selezione di [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|parametri]] di un [[problema computazionale]]. + +$$ +\Huge I +$$ \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/logaritmo in base 2.md b/9 - Algoritmi distribuiti/1 - Problemi/logaritmo in base 2.md new file mode 100644 index 0000000..f8b196c --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/logaritmo in base 2.md @@ -0,0 +1,5 @@ +[[logaritmo]] a volte rappresentato con la seguente sintassi: +$$ +\Huge +lg(n) +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/notazione O-grande.md b/9 - Algoritmi distribuiti/1 - Problemi/notazione O-grande.md new file mode 100644 index 0000000..20aa0c6 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/notazione O-grande.md @@ -0,0 +1,26 @@ +--- +aliases: + - big-O +--- +[[notazione asintotica]] per il [[limite inferiore]]. + +$$ +\def \varAsym {{\color{royalblue} g(n)}} +\def \varFunc {{\color{orangered} f(n)}} +\def \varMore {{\color{palegreen} c_{more}}} +\def \varBeginning {{\color{turquoise} n_0}} +\Huge +O(\varAsym) +$$ +In linguaggio formale, $\varFunc$ è in $O(\varAsym)$ se: +$$ +O(\varAsym) +\Longleftrightarrow +\begin{cases} + \exists & \varMore > 0\\ + \exists & \varBeginning > 0\\ + \\ + \forall & n \geq \varBeginning\\ + : & 0 \leq \varFunc \leq (\varMore \cdot \varAsym) +\end{cases} +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/notazione asintotica.md b/9 - Algoritmi distribuiti/1 - Problemi/notazione asintotica.md new file mode 100644 index 0000000..6c3a5cf --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/notazione asintotica.md @@ -0,0 +1,13 @@ +Notazione astratta per confrontare funzioni, usata solitamente per fare confronti di [[costo computazionale]]. + +$$ +\def \varAsym {{\color{royalblue} g(n)}} +\Huge +\boxdot(\varAsym) +$$ + +| Limite | Asintoto stretto | Asintoto libero | +|-|-|-| +| [[Limite inferiore]] | [[notazione O-grande]] | [[notazione o-piccola]] | +| [[Limite bilaterale]] | [[notazione Θ-grande]] | | +| [[Limite superiore]] | [[notazione Ω-grande]] | [[notazione ω-piccola]] | diff --git a/9 - Algoritmi distribuiti/1 - Problemi/notazione o-piccola.md b/9 - Algoritmi distribuiti/1 - Problemi/notazione o-piccola.md new file mode 100644 index 0000000..f25a7a9 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/notazione o-piccola.md @@ -0,0 +1,28 @@ +--- +aliases: + - small-o +--- +[[notazione asintotica]] per il [[limite inferiore]]. + +$$ +\def \varAsym {{\color{royalblue} g(n)}} +\def \varFunc {{\color{orangered} f(n)}} +\def \varMore {{\color{palegreen} c_{more}}} +\def \varBeginning {{\color{turquoise} n_0}} +\Huge +o(\varAsym) +$$ +In linguaggio formale, $\varFunc$ è in $O(\varAsym)$ se: +$$ +o(\varAsym) +\Longleftrightarrow +\begin{cases} + \forall & \varMore > 0\\ + \\ + : & \begin{cases} + \exists & \varBeginning > 0\\ + \forall & n \geq \varBeginning\\ + : & 0 \leq \varFunc \leq (\varMore \cdot \varAsym) + \end{cases} +\end{cases} +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/notazione Θ-grande.md b/9 - Algoritmi distribuiti/1 - Problemi/notazione Θ-grande.md new file mode 100644 index 0000000..e5f7024 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/notazione Θ-grande.md @@ -0,0 +1,32 @@ +--- +aliases: + - big-Theta + - notazione theta-grande + - big-Θ + - tight bound +--- +[[notazione asintotica]] per il [[limite bilaterale]]. + +$$ +\def \varAsym {{\color{royalblue} g(n)}} +\def \varFunc {{\color{orangered} f(n)}} +\def \varLess {{\color{lightcoral} c_{less}}} +\def \varMore {{\color{palegreen} c_{more}}} +\def \varBeginning {{\color{turquoise} n_0}} +\Huge +\Theta(\varAsym) +$$ + +In linguaggio formale, $\varFunc$ è in $\Theta(\varAsym)$ se: +$$ +\Theta(\varAsym) +\Longleftrightarrow +\begin{cases} + \exists & \varLess > 0\\ + \exists & \varMore > 0\\ + \exists & \varBeginning > 0\\ + \\ + \forall & n \geq \varBeginning\\ + : & 0 \leq (\varLess \cdot \varAsym) \leq \varFunc \leq (\varMore \cdot \varAsym) +\end{cases} +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/notazione Ω-grande.md b/9 - Algoritmi distribuiti/1 - Problemi/notazione Ω-grande.md new file mode 100644 index 0000000..01b3571 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/notazione Ω-grande.md @@ -0,0 +1,31 @@ +--- +aliases: + - big-Omega + - notazione omega-grande + - big-Ω + - lower bound +--- +[[notazione asintotica]] per il [[limite inferiore]]. + +$$ +\def \varAsym {{\color{royalblue} g(n)}} +\def \varFunc {{\color{orangered} f(n)}} +\def \varLess {{\color{lightcoral} c_{less}}} +\def \varMore {{\color{palegreen} c_{more}}} +\def \varBeginning {{\color{turquoise} n_0}} +\Huge +\Omega(\varAsym) +$$ + +In linguaggio formale, $\varFunc$ è in $\Omega(\varAsym)$ se: +$$ +\Omega(\varAsym) +\Longleftrightarrow +\begin{cases} + \exists & \varLess > 0\\ + \exists & \varBeginning > 0\\ + \\ + \forall & n \geq \varBeginning\\ + : & 0 \leq (\varLess \cdot \varAsym) \leq \varFunc +\end{cases} +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/notazione ω-piccola.md b/9 - Algoritmi distribuiti/1 - Problemi/notazione ω-piccola.md new file mode 100644 index 0000000..27fab3c --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/notazione ω-piccola.md @@ -0,0 +1,30 @@ +--- +aliases: + - omega-piccola + - small-ω + - small-omega +--- +[[notazione asintotica]] per il [[limite inferiore]]. + +$$ +\def \varAsym {{\color{royalblue} g(n)}} +\def \varFunc {{\color{orangered} f(n)}} +\def \varLess {{\color{lightcoral} c_{less}}} +\def \varBeginning {{\color{turquoise} n_0}} +\Huge +\omega(\varAsym) +$$ +In linguaggio formale, $\varFunc$ è in $\omega(\varAsym)$ se: +$$ +\omega(\varAsym) +\Longleftrightarrow +\begin{cases} + \forall & \varLess > 0\\ + \\ + : & \begin{cases} + \exists & \varBeginning > 0\\ + \forall & n \geq \varBeginning\\ + : & 0 \leq (\varLess \cdot \varAsym) \leq \varFunc + \end{cases} +\end{cases} +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/ottimizzazione → decisionale.md b/9 - Algoritmi distribuiti/1 - Problemi/ottimizzazione → decisionale.md new file mode 100644 index 0000000..8546fbc --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/ottimizzazione → decisionale.md @@ -0,0 +1,5 @@ +Un [[problema di ottimizzazione]] si può convertire in [[problema decisionale]]: + +> **[[problema di ottimizzazione|Ottimizzazione]]**: Dato un [[grafo]] e due [[nodo di un grafo|nodi]], qual è la lunghezza del cammino minimo? +> +> **[[problema decisionale|Decisionale]]**: Dato un [[grafo]] e due [[nodo di un grafo|nodi]], esiste un cammino minimo più corto di $k$? diff --git a/9 - Algoritmi distribuiti/1 - Problemi/parametro.md b/9 - Algoritmi distribuiti/1 - Problemi/parametro.md new file mode 100644 index 0000000..8e8e88b --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/parametro.md @@ -0,0 +1,8 @@ +--- +aliases: + - input + - argomento +--- + + +Informazione utilizzata da un [[algoritmo]] per arrivare a un [[risultato]]. \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/polinomiale.md b/9 - Algoritmi distribuiti/1 - Problemi/polinomiale.md new file mode 100644 index 0000000..59a49c0 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/polinomiale.md @@ -0,0 +1,5 @@ +[[Funzione]] rappresentabile nel seguente modo: +$$ +\Huge +\sum_{monomio = 0}^{grado} coefficiente_{monomio} \cdot n^{monomio} +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema P e NP.md b/9 - Algoritmi distribuiti/1 - Problemi/problema P e NP.md new file mode 100644 index 0000000..736986d --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema P e NP.md @@ -0,0 +1,19 @@ +[[problema]] matematico tutt'ora [[irrisolto]]. + +## Enunciato + +La [[classe di problemi P]] e la [[classe di problemi NP]] sono equivalenti? + +## Relazione con [[classe di problemi NP-completi|NP-complete]] + +Se si riesce a trovare un problema [[classe di problemi NP-completi|NP-complete]] con costo [[polinomiale]]: +$$ +\large +P = NP +$$ + +Se si riesce a dimostrare che per risolvere un problema [[classe di problemi NP-completi|NP-complete]] non esistono [[algoritmo|algoritmi]] con costo [[polinomiale]]: +$$ +\large +P \not= NP +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema computazionale.md b/9 - Algoritmi distribuiti/1 - Problemi/problema computazionale.md new file mode 100644 index 0000000..834900d --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema computazionale.md @@ -0,0 +1,5 @@ +[[Problema]] a cui vogliamo trovare una risposta dipendente da [[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro|parametri]] non specificati. + +$$ +\Huge \Pi : I → S +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema decisionale.md b/9 - Algoritmi distribuiti/1 - Problemi/problema decisionale.md new file mode 100644 index 0000000..bdcb1e9 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema decisionale.md @@ -0,0 +1 @@ +[[problema computazionale]] con risposta [[boolean|booleana]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema del commesso viaggiatore.md b/9 - Algoritmi distribuiti/1 - Problemi/problema del commesso viaggiatore.md new file mode 100644 index 0000000..f7a8e60 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema del commesso viaggiatore.md @@ -0,0 +1,61 @@ +--- +aliases: + - traveling salesman problem + - TSP +--- +[[problema di ottimizzazione]] appartenente alla [[classe di problemi NP-difficili]]. +## Enunciato + +Dato un [[grafo completo]] pesato, qual è il [[ciclo hamiltoniano]] di costo minimo? + +### Verifica + +Dato un [[grafo completo]] pesato, e un [[ciclo hamiltoniano]], esso è quello di costo minimo? + +## Dimostrazione della [[classe di problemi NP-difficili]] + +Si può fare uso della [[ricerca di ciclo hamiltoniano]] per dimostrare la classe di appartenenza di questo problema. +$$ +\def \varGraphA {{\color{DarkSalmon} Graph_{Hamilton}}} +\def \varEdgesA {{\color{LightSalmon} Edges_{Hamilton}}} +\def \varGraphB {{\color{Orchid} Graph_{Salesman}}} +\def \varEdgesB {{\color{Thistle} Edges_{Salesman}}} +\def \varCost {{\color{MediumPurple} Cost_{Salesman}}} +\def \varNodes {{\color{SpringGreen} Nodes_{Shared}}} + +\tiny\color{Gray} [Definizione\ variabili\ \TeX\ qui] +$$ + +Partiamo dal [[grafo]] semplice della [[ricerca di ciclo hamiltoniano]], che definiamo così: +$$ +\varGraphA = (\varNodes, \varEdgesA) +$$ + +Vogliamo associare ogni [[istanza]] di esso a un'[[istanza]] di problema del commesso viaggiatore, che però richiede che il grafo sia [[grafo completo|completo]] e pesato: +$$ +\varGraphB = (\varNodes, \varEdgesB) +$$ + +Allora, sfruttiamo i pesi a nostro vantaggio per creare un grafo in cui gli archi di $\varGraphA$ siano sempre preferiti nella scelta del percorso: +$$ +\forall\ edge \in \varEdgesB : cost(edge) = \begin{cases} +\textrm{if}\ edge \in \varEdgesA & 0 +\\\\ +\textrm{else} & 1 +\end{cases} +$$ +Una volta determinata la soluzione del problema del commesso viaggiatore, giungeremo a conoscenza del costo minimo del percorso che attraversa tutti i nodi: +$$ +travelingSalesmanProblem(\varGraphB) = \varCost +$$ + +In base al costo minimo $\varCost$ risultante, possiamo determinare la risposta al problema di [[ricerca di ciclo hamiltoniano]]. + +Infatti, se una soluzione ad esso esiste, il problema del commesso viaggiatore darà $\varCost = 0$, in quanto tutti gli archi di $\varGraphA$ sono preferiti per via del loro peso minore; viceversa, se una soluzione ad esso non esiste, l'output sarà $\varCost > 0$, che significa che è necessario aggiungere il dato numero di archi ulteriori per formare un [[ciclo hamiltoniano]]: +$$ +\begin{cases} + \textrm{if}\ \varCost = 0 & \exists\ hamiltonianCycle(\varGraphA) + \\\\ + \textrm{else} & \not\exists\ hamiltonianCycle(\varGraphA) +\end{cases} +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema di massimizzazione.md b/9 - Algoritmi distribuiti/1 - Problemi/problema di massimizzazione.md new file mode 100644 index 0000000..ef477b1 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema di massimizzazione.md @@ -0,0 +1,9 @@ +--- +aliases: + - massimizzare + - massimizzazione +--- + +[[problema di ottimizzazione]] in cui si cerca il [[massimo globale]] di una [[funzione guadagno]]. + +[[Duale]] del [[problema di minimizzazione]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema di minimizzazione.md b/9 - Algoritmi distribuiti/1 - Problemi/problema di minimizzazione.md new file mode 100644 index 0000000..1116b24 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema di minimizzazione.md @@ -0,0 +1,9 @@ +--- +aliases: + - minimizzare + - minimizzazione +--- + +[[problema di ottimizzazione]] in cui si cerca il [[minimo globale]] di una [[funzione costo]]. + +[[Duale]] del [[problema di massimizzazione]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema di ottimizzazione.md b/9 - Algoritmi distribuiti/1 - Problemi/problema di ottimizzazione.md new file mode 100644 index 0000000..5da07e9 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema di ottimizzazione.md @@ -0,0 +1,5 @@ +[[problema computazionale]] in cui si vuole trovare la [[soluzione ottima]] di una [[funzione obiettivo]]. + +Sono problemi di ottimizzazione: +- i [[problema di minimizzazione|problemi di minimizzazione]] +- i [[problema di massimizzazione|problemi di massimizzazione]] diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema di ricerca.md b/9 - Algoritmi distribuiti/1 - Problemi/problema di ricerca.md new file mode 100644 index 0000000..0fad4ab --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema di ricerca.md @@ -0,0 +1 @@ +[[problema computazionale]] che cerca una qualsiasi [[soluzione]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema intrattabile.md b/9 - Algoritmi distribuiti/1 - Problemi/problema intrattabile.md new file mode 100644 index 0000000..7058748 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema intrattabile.md @@ -0,0 +1,3 @@ +[[problema computazionale]] la cui [[notazione O-grande]] è superiore a [[polinomiale]]. + +> [[torre di Hanoi]] diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema irrisolvibile.md b/9 - Algoritmi distribuiti/1 - Problemi/problema irrisolvibile.md new file mode 100644 index 0000000..5867d0e --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema irrisolvibile.md @@ -0,0 +1,3 @@ +[[problema]] per cui non esiste un [[algoritmo]] per risolverlo. + +> [[halting problem]] \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema presumibilmente intrattabile.md b/9 - Algoritmi distribuiti/1 - Problemi/problema presumibilmente intrattabile.md new file mode 100644 index 0000000..591481c --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema presumibilmente intrattabile.md @@ -0,0 +1,6 @@ +--- +aliases: + - problema difficile +--- + +[[problema]] per cui non è ancora stato scoperto un algoritmo che lo rende [[problema trattabile|trattabile]], ma nemmeno è ancora stato dimostrato che è [[problema intrattabile|intrattabile]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/problema trattabile.md b/9 - Algoritmi distribuiti/1 - Problemi/problema trattabile.md new file mode 100644 index 0000000..31b3862 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/problema trattabile.md @@ -0,0 +1 @@ +[[problema computazionale]] la cui [[notazione O-grande]] è [[polinomiale]] o inferiore. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/ricerca di ciclo hamiltoniano.md b/9 - Algoritmi distribuiti/1 - Problemi/ricerca di ciclo hamiltoniano.md new file mode 100644 index 0000000..34045c6 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/ricerca di ciclo hamiltoniano.md @@ -0,0 +1,9 @@ +[[problema decisionale]] appartenente alla [[classe di problemi NP]]. + +## Enunciato + +Dato un [[grafo]], esiste un [[circuito di un grafo|circuito]] che passa attraverso tutti i [[nodo di un grafo|nodi]]? + +### Verifica + +Dato un [[circuito di un grafo]], esso passa attraverso tutti i [[nodo di un grafo|nodi]]? diff --git a/9 - Algoritmi distribuiti/1 - Problemi/riduzione di Karp.md b/9 - Algoritmi distribuiti/1 - Problemi/riduzione di Karp.md new file mode 100644 index 0000000..bcaa026 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/riduzione di Karp.md @@ -0,0 +1,77 @@ +Un [[problema decisionale]] $A$ può essere trasformato in un altro [[problema decisionale]] $B$ attraverso una *riduzione di Karp* se: +- la trasformazione è un'operazione in tempo [[polinomiale]] +- ogni [[istanza positiva]] del primo problema rimane un'[[istanza positiva]] dopo essere stata trasformata +- ogni [[istanza negativa]] del primo problema rimane un'[[istanza negativa]] dopo essere stata trasformata + +$$ +\def \varProblemA {{\color{DarkOrchid} Problem_{A}}} +\def \varProblemB {{\color{SlateBlue} Problem_{B}}} +\def \varProblemC {{\color{DarkOliveGreen} Problem_{C}}} +\def \karp {\leq_p} +\Huge +\varProblemA \karp \varProblemB +$$ + +## Corollari + +Se un problema è [[polinomiale]], e un altro può essere ridotto ad esso, anche l'altro è [[polinomiale]]: +$$ +\large +\begin{cases} + \varProblemA \karp \varProblemB + \\\\ + \varProblemB \in P +\end{cases} +\implies +\begin{cases} + \\ + \varProblemA \in P + \\\quad +\end{cases} +$$ + +Se un problema non è [[polinomiale]], e può essere ridotto ad un altro, anche l'altro non è [[polinomiale]]: +$$ +\large +\begin{cases} + \varProblemA \karp \varProblemB + \\\\ + \varProblemA \not\in P +\end{cases} +\implies +\begin{cases} + \\ + \varProblemB \not\in P + \\\quad +\end{cases} +$$ + +Infine, se due problemi possono ridursi a vicenda uno all'altro, essi sono [[problemi equivalenti|equivalenti]]: +$$ +\large +\begin{cases} + \varProblemA \karp \varProblemB + \\\\ + \varProblemB \karp \varProblemA +\end{cases} +\implies +\begin{cases} + \\ + \varProblemA \equiv_P \varProblemB + \\\quad +\end{cases} +$$ + +## Proprietà + +La [[riduzione di Karp]] è [[transitività|transitiva]]: +$$ +\large +\begin{cases} + \varProblemA \karp \varProblemB + \\\\ + \varProblemB \karp \varProblemC +\end{cases} +\implies +\varProblemA \karp \varProblemC +$$ diff --git a/9 - Algoritmi distribuiti/1 - Problemi/satisfability.md b/9 - Algoritmi distribuiti/1 - Problemi/satisfability.md new file mode 100644 index 0000000..acc2ec2 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/satisfability.md @@ -0,0 +1,5 @@ +--- +aliases: + - SAT +--- +[[problema]] particolare, dimostrato direttamente essere [[classe di problemi NP-completi|NP-complete]] con i teoremi [[teorema di Cook|di Cook]] e [[teorema di Levin|di Levin]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/soluzione ottima.md b/9 - Algoritmi distribuiti/1 - Problemi/soluzione ottima.md new file mode 100644 index 0000000..96ec532 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/soluzione ottima.md @@ -0,0 +1 @@ +[[soluzione]] ad un [[problema di ottimizzazione]] in cui si cerca di trovare massimi e minimi di una [[funzione obiettivo]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/soluzione.md b/9 - Algoritmi distribuiti/1 - Problemi/soluzione.md new file mode 100644 index 0000000..eb9f1ce --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/soluzione.md @@ -0,0 +1,6 @@ +--- +aliases: + - soluzione ammissibile +--- + +Risposta ad un [[problema computazionale]] che soddisfa uno o più [[vincolo|vincoli]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/spazio.md b/9 - Algoritmi distribuiti/1 - Problemi/spazio.md new file mode 100644 index 0000000..b8fa14d --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/spazio.md @@ -0,0 +1,5 @@ +[[Memoria]] aggiuntiva richiesta per l'esecuzione di un [[algoritmo]]. + +Non viene considerata la [[memoria]] richiesta per la codifica dell'algoritmo stesso: solo lo spazio utilizzato dalle variabili! + +> Può essere riutilizzato! diff --git a/9 - Algoritmi distribuiti/1 - Problemi/struttura dati.md b/9 - Algoritmi distribuiti/1 - Problemi/struttura dati.md new file mode 100644 index 0000000..10a0af7 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/struttura dati.md @@ -0,0 +1 @@ +Metodo formale per [[information storage|immagazzinare]] e [[information retrieval|organizzare]] [[dato|dati]]. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/tempo.md b/9 - Algoritmi distribuiti/1 - Problemi/tempo.md new file mode 100644 index 0000000..524e838 --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/tempo.md @@ -0,0 +1,3 @@ +Numero di operazioni elementari necessarie all'esecuzione di un [[algoritmo]]. + +> Non può essere riutilizzato, purtroppo: una volta usato, se n'è andato per sempre... diff --git a/9 - Algoritmi distribuiti/1 - Problemi/tesi di Church-Turing.md b/9 - Algoritmi distribuiti/1 - Problemi/tesi di Church-Turing.md new file mode 100644 index 0000000..a1eac8a --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/tesi di Church-Turing.md @@ -0,0 +1,5 @@ +[[teorema]]. + +Dimostra come [[modello di calcolo|modelli di calcolo]] diversi si possano [[simulazione|simulare]] a vicenda con [[costo computazionale]] [[polinomiale]]. + +Si dice che questi [[modello di calcolo|modelli di calcolo]] sono *equivalenti*. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/verifica.md b/9 - Algoritmi distribuiti/1 - Problemi/verifica.md new file mode 100644 index 0000000..74f9b7d --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/verifica.md @@ -0,0 +1,3 @@ +[[problema decisionale]]. + +Data una [[istanza]] di un [[problema computazionale]], e un blob di dati, determina se l'istanza è [[istanza positiva|positiva]] oppure no. diff --git a/9 - Algoritmi distribuiti/1 - Problemi/★ problemi.canvas b/9 - Algoritmi distribuiti/1 - Problemi/★ problemi.canvas new file mode 100644 index 0000000..c47e4ff --- /dev/null +++ b/9 - Algoritmi distribuiti/1 - Problemi/★ problemi.canvas @@ -0,0 +1,97 @@ +{ + "nodes":[ + {"id":"2fa2100ba46491e0","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema computazionale.md","x":400,"y":160,"width":400,"height":400,"color":"#ffffff"}, + {"id":"4d9df57404c587fb","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/algoritmo.md","x":960,"y":160,"width":400,"height":400}, + {"id":"b8b560342486fa07","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/algoritmo corretto.md","x":1520,"y":160,"width":400,"height":400}, + {"id":"84de9c7afe086bb2","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/istanza.md","x":1520,"y":-400,"width":400,"height":400}, + {"id":"99356f7338916f2a","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/parametro.md","x":960,"y":-400,"width":400,"height":400}, + {"id":"2b663ab68be70503","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/costo computazionale.md","x":1520,"y":-960,"width":400,"height":400}, + {"id":"6ea2fa5401a8dc2d","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/notazione asintotica.md","x":2080,"y":-960,"width":400,"height":400}, + {"id":"96087a1e560c5db9","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/notazione Ω-grande.md","x":2640,"y":-400,"width":400,"height":400}, + {"id":"4861d4d932bb49d1","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/notazione O-grande.md","x":2640,"y":-1520,"width":400,"height":400}, + {"id":"3ea93785ad795bc5","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/notazione Θ-grande.md","x":2640,"y":-960,"width":400,"height":400}, + {"id":"ced16fa489b483e4","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/notazione o-piccola.md","x":3200,"y":-1520,"width":400,"height":400}, + {"id":"30ece85688f3e1d6","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/notazione ω-piccola.md","x":3200,"y":-400,"width":400,"height":400}, + {"id":"fb78acc4fe436b2a","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/tempo.md","x":1520,"y":-1520,"width":400,"height":400}, + {"id":"662f16c70139f74d","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/spazio.md","x":960,"y":-1520,"width":400,"height":400}, + {"id":"e4114af324fea985","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema di ricerca.md","x":400,"y":720,"width":400,"height":400}, + {"id":"303dd65005ef65d1","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/dimensione dell'input.md","x":960,"y":-960,"width":400,"height":400}, + {"id":"41a5d32ee5783a9b","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/criterio di costo logaritmico.md","x":400,"y":-960,"width":400,"height":400}, + {"id":"22ab6112962c09a2","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/criterio di costo uniforme.md","x":400,"y":-1520,"width":400,"height":400}, + {"id":"0a7e255246795bd0","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/struttura dati.md","x":400,"y":-400,"width":400,"height":400}, + {"id":"505027c3f0cce7d1","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema trattabile.md","x":-160,"y":160,"width":400,"height":400}, + {"id":"72036b7f5bcb1cea","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema presumibilmente intrattabile.md","x":-160,"y":-400,"width":400,"height":400}, + {"id":"0ec6f096ff0db6c1","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema intrattabile.md","x":-160,"y":-960,"width":400,"height":400}, + {"id":"aaf848090d80e69c","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema irrisolvibile.md","x":-160,"y":-1520,"width":400,"height":400}, + {"id":"3fbf2a25d17d78cf","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema decisionale.md","x":960,"y":720,"width":400,"height":400}, + {"id":"38ba1863399c80c0","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema di ottimizzazione.md","x":-160,"y":720,"width":400,"height":400}, + {"id":"c41da8ad8618d49a","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema di minimizzazione.md","x":-720,"y":1280,"width":400,"height":400}, + {"id":"2d23bf1f559c76b3","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema di massimizzazione.md","x":-720,"y":720,"width":400,"height":400}, + {"id":"c183db924540bb16","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/classe di problemi P.md","x":1520,"y":1280,"width":400,"height":400}, + {"id":"1c97631823924bf3","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/certificato per un'istanza.md","x":2640,"y":160,"width":400,"height":400}, + {"id":"68315b5cd001b79f","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/istanza positiva.md","x":2080,"y":160,"width":400,"height":400}, + {"id":"69df0c39c81b3a96","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/istanza negativa.md","x":2080,"y":-400,"width":400,"height":400}, + {"id":"e16ab66f799f3ae2","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP.md","x":2640,"y":1280,"width":400,"height":400}, + {"id":"667eab670c20f925","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/verifica.md","x":2640,"y":720,"width":400,"height":400}, + {"id":"052bb54fc3e2bdd0","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/funzione costo.md","x":-1280,"y":1280,"width":400,"height":400}, + {"id":"ceb788423da6743f","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/funzione guadagno.md","x":-1280,"y":720,"width":400,"height":400}, + {"id":"1239fce8da90b379","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/ricerca di ciclo hamiltoniano.md","x":3200,"y":1280,"width":400,"height":400}, + {"id":"e5cca91ee7f4ab57","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/circuito di un grafo.md","x":3760,"y":1280,"width":400,"height":400}, + {"id":"42f22b07a767377f","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/riduzione di Karp.md","x":2080,"y":1280,"width":400,"height":400}, + {"id":"67e36944e3ac98a1","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-completi.md","x":2080,"y":1840,"width":400,"height":400}, + {"id":"f02c184b8d016c3d","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/satisfability.md","x":2080,"y":2400,"width":400,"height":400}, + {"id":"2499685926aff387","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/tesi di Church-Turing.md","x":1520,"y":1840,"width":400,"height":400}, + {"id":"04da4a4d26b5e1fb","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md","x":2640,"y":1840,"width":400,"height":400}, + {"id":"752b123ee666a16f","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/problema del commesso viaggiatore.md","x":3200,"y":1840,"width":400,"height":400}, + {"id":"55f7a2f155a33bf9","type":"file","file":"9 - Algoritmi distribuiti/1 - Problemi/ottimizzazione → decisionale.md","x":400,"y":1280,"width":400,"height":400} + ], + "edges":[ + {"id":"2ecf2377ed8b1bd7","fromNode":"2fa2100ba46491e0","fromSide":"right","toNode":"4d9df57404c587fb","toSide":"left"}, + {"id":"f4da02ae1af1786b","fromNode":"4d9df57404c587fb","fromSide":"top","toNode":"99356f7338916f2a","toSide":"bottom"}, + {"id":"578fb4fb09c3abfb","fromNode":"4d9df57404c587fb","fromSide":"top","toNode":"0a7e255246795bd0","toSide":"bottom"}, + {"id":"d5d770b3919c888e","fromNode":"99356f7338916f2a","fromSide":"right","toNode":"84de9c7afe086bb2","toSide":"left"}, + {"id":"f7fe97bbb72d57e7","fromNode":"4d9df57404c587fb","fromSide":"right","toNode":"b8b560342486fa07","toSide":"left"}, + {"id":"8e9f8c9f602dedde","fromNode":"84de9c7afe086bb2","fromSide":"right","toNode":"69df0c39c81b3a96","toSide":"left"}, + {"id":"8155dae1b43e0efe","fromNode":"84de9c7afe086bb2","fromSide":"right","toNode":"68315b5cd001b79f","toSide":"left"}, + {"id":"db637d8072f6424e","fromNode":"2fa2100ba46491e0","fromSide":"left","toNode":"505027c3f0cce7d1","toSide":"right"}, + {"id":"f0136eba96ec9bfc","fromNode":"2fa2100ba46491e0","fromSide":"left","toNode":"72036b7f5bcb1cea","toSide":"right"}, + {"id":"786fb81c1fec4259","fromNode":"2fa2100ba46491e0","fromSide":"left","toNode":"0ec6f096ff0db6c1","toSide":"right"}, + {"id":"18ff2a4002812517","fromNode":"2fa2100ba46491e0","fromSide":"left","toNode":"aaf848090d80e69c","toSide":"right"}, + {"id":"15c2dafa502b7420","fromNode":"303dd65005ef65d1","fromSide":"left","toNode":"41a5d32ee5783a9b","toSide":"right"}, + {"id":"7cdf210ffa10a532","fromNode":"303dd65005ef65d1","fromSide":"left","toNode":"22ab6112962c09a2","toSide":"right"}, + {"id":"c5a60bb237872773","fromNode":"84de9c7afe086bb2","fromSide":"top","toNode":"2b663ab68be70503","toSide":"bottom"}, + {"id":"5747b24b217b85df","fromNode":"303dd65005ef65d1","fromSide":"top","toNode":"662f16c70139f74d","toSide":"bottom"}, + {"id":"cc98a75492da277f","fromNode":"2b663ab68be70503","fromSide":"top","toNode":"662f16c70139f74d","toSide":"bottom"}, + {"id":"26afac0fd17f0b2b","fromNode":"2b663ab68be70503","fromSide":"top","toNode":"fb78acc4fe436b2a","toSide":"bottom"}, + {"id":"d41064d76a534fd1","fromNode":"2b663ab68be70503","fromSide":"left","toNode":"303dd65005ef65d1","toSide":"right"}, + {"id":"994a41e30b24baef","fromNode":"303dd65005ef65d1","fromSide":"bottom","toNode":"99356f7338916f2a","toSide":"top"}, + {"id":"607f8a19ef4cca37","fromNode":"2b663ab68be70503","fromSide":"right","toNode":"6ea2fa5401a8dc2d","toSide":"left"}, + {"id":"b23456992689e813","fromNode":"6ea2fa5401a8dc2d","fromSide":"right","toNode":"4861d4d932bb49d1","toSide":"left"}, + {"id":"67f2ce36b3dc0f83","fromNode":"6ea2fa5401a8dc2d","fromSide":"right","toNode":"3ea93785ad795bc5","toSide":"left"}, + {"id":"029fc42e1e746bbc","fromNode":"6ea2fa5401a8dc2d","fromSide":"right","toNode":"96087a1e560c5db9","toSide":"left"}, + {"id":"a1bce0c9ff8eb0eb","fromNode":"96087a1e560c5db9","fromSide":"right","toNode":"30ece85688f3e1d6","toSide":"left"}, + {"id":"35c68f290c68b74c","fromNode":"4861d4d932bb49d1","fromSide":"right","toNode":"ced16fa489b483e4","toSide":"left"}, + {"id":"e9f25f0010648997","fromNode":"2fa2100ba46491e0","fromSide":"bottom","toNode":"e4114af324fea985","toSide":"top"}, + {"id":"55fe3b9a66ebc08e","fromNode":"2fa2100ba46491e0","fromSide":"bottom","toNode":"3fbf2a25d17d78cf","toSide":"top"}, + {"id":"8022a93284c26cba","fromNode":"2fa2100ba46491e0","fromSide":"bottom","toNode":"38ba1863399c80c0","toSide":"top"}, + {"id":"3617f86a1266668e","fromNode":"38ba1863399c80c0","fromSide":"left","toNode":"2d23bf1f559c76b3","toSide":"right"}, + {"id":"9857a526ed3345ee","fromNode":"38ba1863399c80c0","fromSide":"left","toNode":"c41da8ad8618d49a","toSide":"right"}, + {"id":"4f5afcf387890ece","fromNode":"c41da8ad8618d49a","fromSide":"left","toNode":"052bb54fc3e2bdd0","toSide":"right"}, + {"id":"75d226df25a3db63","fromNode":"2d23bf1f559c76b3","fromSide":"left","toNode":"ceb788423da6743f","toSide":"right"}, + {"id":"5fdfbd3a7d0a738c","fromNode":"68315b5cd001b79f","fromSide":"right","toNode":"1c97631823924bf3","toSide":"left"}, + {"id":"7cb923e889418fc2","fromNode":"3fbf2a25d17d78cf","fromSide":"right","toNode":"c183db924540bb16","toSide":"top"}, + {"id":"4ec32e21d3ba4428","fromNode":"3fbf2a25d17d78cf","fromSide":"right","toNode":"667eab670c20f925","toSide":"left"}, + {"id":"da58dff95c8a1205","fromNode":"667eab670c20f925","fromSide":"bottom","toNode":"e16ab66f799f3ae2","toSide":"top"}, + {"id":"a60dc6e6e34d8b3b","fromNode":"e16ab66f799f3ae2","fromSide":"right","toNode":"1239fce8da90b379","toSide":"left"}, + {"id":"78dfcdd3464ce41b","fromNode":"1239fce8da90b379","fromSide":"right","toNode":"e5cca91ee7f4ab57","toSide":"left"}, + {"id":"883e41806073c173","fromNode":"67e36944e3ac98a1","fromSide":"bottom","toNode":"f02c184b8d016c3d","toSide":"top"}, + {"id":"0bee7f08eaa49e34","fromNode":"e16ab66f799f3ae2","fromSide":"left","toNode":"42f22b07a767377f","toSide":"right"}, + {"id":"4f5e0f4a5c6258e4","fromNode":"42f22b07a767377f","fromSide":"bottom","toNode":"67e36944e3ac98a1","toSide":"top"}, + {"id":"f3beef26950dfbf4","fromNode":"42f22b07a767377f","fromSide":"bottom","toNode":"2499685926aff387","toSide":"top"}, + {"id":"e2a0098ea841e251","fromNode":"752b123ee666a16f","fromSide":"top","toNode":"1239fce8da90b379","toSide":"bottom"}, + {"id":"f96b982c72439d11","fromNode":"e16ab66f799f3ae2","fromSide":"bottom","toNode":"04da4a4d26b5e1fb","toSide":"top"}, + {"id":"99bf4a794d69b88a","fromNode":"04da4a4d26b5e1fb","fromSide":"right","toNode":"752b123ee666a16f","toSide":"left"}, + {"id":"7f36b71875467a4f","fromNode":"38ba1863399c80c0","fromSide":"bottom","toNode":"55f7a2f155a33bf9","toSide":"left"}, + {"id":"558af60eebc73b7d","fromNode":"55f7a2f155a33bf9","fromSide":"right","toNode":"3fbf2a25d17d78cf","toSide":"bottom"} + ] +} \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/algoritmo di approssimazione.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/algoritmo di approssimazione.md new file mode 100644 index 0000000..e07c552 --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/algoritmo di approssimazione.md @@ -0,0 +1 @@ +[[algoritmo]] [[polinomiale]] per un [[classe di problemi NP-difficili|problema NP-hard]] che vi trova una [[soluzione approssimata]] entro un certo [[fattore di approssimazione]]. diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/approssimazione del problema del commesso viaggiatore.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/approssimazione del problema del commesso viaggiatore.md new file mode 100644 index 0000000..293058b --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/approssimazione del problema del commesso viaggiatore.md @@ -0,0 +1,75 @@ +[[algoritmo di approssimazione]] per il [[problema del commesso viaggiatore]]. + +Per questo problema, il [[fattore di approsimazione]] $\alpha$ può essere costante solo se [[P=NP]]. + +> L'algoritmo di approssimazione a fattore costante è riducibile alla [[ricerca di ciclo hamiltoniano]]. + +## Sfruttando la [[proprietà triangolare per il costo degli archi]] + +### Algoritmo + +#### $Tree$ + +Si può trovare il [[albero di copertura minimo]] di $Graph$ in tempo [[polinomiale]]. + +#### $2 \cdot Tree$ + +Si [[raddoppiamento di arco|raddoppiano]] gli archi di $Tree$. + +#### $Euler$ + +Si trova il [[ciclo euleriano]] per $2 \cdot Tree$. + +#### $Hamilton$ + +Si trova il [[ciclo hamiltoniano]] per $Tree$, usando *shortcut*: + +- Si selezionano i nodi di $Euler$ mantenendoli nello stesso ordine, ma scartando quelli che vi appaiono due volte, e poi connettendo l'ultimo al primo. + +$Hamilton$ è la soluzione approssimata, con [[fattore di approsimazione]] $2$. + +### Dimostrazione + +#### $cost(Hamilton) \leq cost(Euler)$ + +Per la [[proprietà triangolare per il costo degli archi]]. + +#### $cost(Euler) = 2 \cdot cost(Tree)$ + +Per via del [[raddoppiamento di arco|raddoppiamento di archi]]. + +#### $2 \cdot cost(Tree) \leq 2 \cdot cost(Optimal)$ + +Togliendo un arco qualsiasi, $Optimal$ diventa un [[albero di copertura]]. + +$Tree$ è un altro [[albero di copertura]], ma [[albero di copertura minimo|minimo]]. + +### [[Tightness]] + +#TODO was busy fixing the rest of the notes + +## Algoritmo di Christofides + +#### $Tree$ + +Si può trovare il [[albero di copertura minimo]] di $Graph$ in tempo [[polinomiale]]. + +#### $Perfect$ + +Si trova il [[minimum perfect matching]] dei nodi di [[grado di un nodo|grado]] dispari di $Tree$. + +#### $Merged$ + +Si uniscono gli archi di $Perfect$ a $Tree$. + +#### $Euler$ + +Si trova il [[ciclo euleriano]] per $Merged$. + +#### $Hamilton$ + +Si trova il [[ciclo hamiltoniano]] per $Tree$, usando *shortcut*: + +- Si selezionano i nodi di $Euler$ mantenendoli nello stesso ordine, ma scartando quelli che vi appaiono due volte, e poi connettendo l'ultimo al primo. + +$Hamilton$ è la soluzione approssimata, con [[fattore di approsimazione]] $2$. diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/fattore di approssimazione.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/fattore di approssimazione.md new file mode 100644 index 0000000..51fec3a --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/fattore di approssimazione.md @@ -0,0 +1,15 @@ +[[Costante]]. + +$$ +\Huge +\alpha +$$ + +In un [[algoritmo di approssimazione]], indica di quanto può essere peggiore la [[soluzione approssimata]] restituita rispetto alla [[soluzione ottima]]. + +$$ +\Large +cost(approx) +\leq +\alpha \cdot cost(opt) +$$ diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/minimum perfect matching.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/minimum perfect matching.md new file mode 100644 index 0000000..39b8c6f --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/minimum perfect matching.md @@ -0,0 +1,3 @@ +#TODO + +Selezione di archi disgiunti dal costo minimo che copre tutti i nodi. diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/proprietà triangolare per il costo degli archi.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/proprietà triangolare per il costo degli archi.md new file mode 100644 index 0000000..d724ad5 --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/proprietà triangolare per il costo degli archi.md @@ -0,0 +1,10 @@ +In un [[grafo]], vale quando per ogni triade di archi: + +$$ +\Large +cost(X → Z) +\leq +cost(X → Y) ++ +cost(Y → Z) +$$ diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round per vertex cover problem.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round per vertex cover problem.md new file mode 100644 index 0000000..87fdee9 --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round per vertex cover problem.md @@ -0,0 +1 @@ +#TODO diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round.md new file mode 100644 index 0000000..c8d942b --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round.md @@ -0,0 +1,9 @@ +Tecnica per la risoluzione di [[classe di problemi NP-difficili|problemi NP-hard]]. + +#TODO + +Consiste in: +1. esprimere il problema come programmazione lineare intera +2. rilassare il vincolo di selezione intera a programmazione lineare semplice +3. arrotondare ad una soluzione approssimata + diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/soluzione approssimata.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/soluzione approssimata.md new file mode 100644 index 0000000..3ad433a --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/soluzione approssimata.md @@ -0,0 +1,6 @@ +Una [[9 - Algoritmi distribuiti/1 - Problemi/soluzione|soluzione ammissibile]] peggiore della [[soluzione ottima]]. + +$$ +\Huge +Approx +$$ diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover problem.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover problem.md new file mode 100644 index 0000000..82cfb2a --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover problem.md @@ -0,0 +1,15 @@ +[[problema di minimizzazione]] [[classe di problemi NP-difficili|NP-hard]]. + +Dato un [[grafo]] non diretto e non pesato, vogliamo trovare il [[vertex cover]] di [[cardinalità]] [[problema di minimizzazione|minima]]. + +## #TODO Con un [[algoritmo greedy]] + +1. Finchè rimangono degli archi: + 2. Scelgo un arco a caso + 3. Aggiungo i due estremi al cover + 4. Cancello tutti gli archi incidenti ai due nodi + +È polinomiale perchè il numero di iterazioni massime è il numero di archi nel grafo, quindi tempo in $O(n)$. + +Fattore di approssimazione $2$. C'è una dimostrazione facile, ma ho troppo sonno, ha a che fare con il fatto che gli archi dell'algoritmo greedy sono disgiunti + diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover.md b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover.md new file mode 100644 index 0000000..a127328 --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover.md @@ -0,0 +1 @@ +[[Insieme]] di [[nodo di un grafo|nodi di un grafo]] il cui insieme di archi copre tutto il grafo. diff --git a/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/★ algoritmi di approssimazione.canvas b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/★ algoritmi di approssimazione.canvas new file mode 100644 index 0000000..7ab1a9d --- /dev/null +++ b/9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/★ algoritmi di approssimazione.canvas @@ -0,0 +1,6 @@ +{ + "nodes":[ + {"id":"4d3c216659c17596","x":-480,"y":-160,"width":400,"height":400,"color":"#ffffff","type":"file","file":"9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/algoritmo di approssimazione.md"} + ], + "edges":[] +} \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma del ritardo di comunicazione.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma del ritardo di comunicazione.md new file mode 100644 index 0000000..bf93656 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma del ritardo di comunicazione.md @@ -0,0 +1,3 @@ +[[assioma]]. + +Se non ci sono guasti, lo scambio di [[messaggio|messaggi]] è sempre un tempo finito. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma dell'orientamento locale.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma dell'orientamento locale.md new file mode 100644 index 0000000..913e555 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma dell'orientamento locale.md @@ -0,0 +1,9 @@ +[[assioma]]. + +Un'[[entità]] può distinguere tra i suoi vicini: +- quanti sono i vicini +- quali sono i vicini + +> Conoscono l'*indirizzo IP* dei suoi vicini! + +> Non è detto che conoscano la rete globale. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/azione.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/azione.md new file mode 100644 index 0000000..dc85440 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/azione.md @@ -0,0 +1,7 @@ +Risposta di un'[[entità]] a un [[evento]], dipendente dall'[[evento]] stesso e dal suo [[stato]]. + +Può consistere di: +- [[computazione]] +- invio di un [[messaggio]] +- cambio di [[stato]] +- #TODO diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comportamento.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comportamento.md new file mode 100644 index 0000000..a0c38bc --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comportamento.md @@ -0,0 +1,5 @@ +Insieme di tutte le [[azione|azioni]] di un'[[entità]]. + +È [[determinismo|deterministico]]: stessa coppia di [[evento]] e [[stato]] producono la stessa azione. + +È [[completo]]: ogni coppia di [[evento]] e [[stato]] deve avere un'azione definita. \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comunicazione.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comunicazione.md new file mode 100644 index 0000000..87f55d3 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comunicazione.md @@ -0,0 +1,4 @@ +[[Risorsa]]. + +Misurata in [[messaggio|messaggi]] totali scambiati tra entità. + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/costo computazionale distribuito.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/costo computazionale distribuito.md new file mode 100644 index 0000000..8323d5c --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/costo computazionale distribuito.md @@ -0,0 +1,14 @@ +--- +aliases: + - complessità computazionale distribuita +--- +Misura di [[costo computazionale]] per [[sistema distribuito|sistemi distribuiti]]. + +Può essere di: +- [[comunicazione]] +- [[spazio]] usato dai [[messaggio|messaggi]]: + - [[criterio di costo logaritmico]] + - [[criterio di costo uniforme]] +- [[tempo]] + - [[criterio di costo sincrono totale]] + - [[criterio di costo asincrono]] diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo asincrono.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo asincrono.md new file mode 100644 index 0000000..4cc8e8e --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo asincrono.md @@ -0,0 +1,3 @@ +[[criterio di costo]] di [[tempo]] per [[sistema distribuito|sistemi distribuiti]]. + +Misurato con la catena di [[messaggio|messaggi]] più lunga del [[sistema distribuito]]. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo sincrono totale.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo sincrono totale.md new file mode 100644 index 0000000..c49523c --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo sincrono totale.md @@ -0,0 +1,3 @@ +[[criterio di costo]] di [[tempo]] per [[sistema distribuito|sistemi distribuiti]]. + +Misurato con 1 unità di tempo per 1 [[messaggio]] scambiato. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/entità.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/entità.md new file mode 100644 index 0000000..9480d51 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/entità.md @@ -0,0 +1,12 @@ +--- +aliases: + - macchina +--- +Unità di computazione in un [[sistema distribuito]]. + +Ha: +- [[istanza|input]] individuale +- [[stato]] individuale +- [[codice]] condiviso +- #TODO un terzo elemento che ho perso + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento esterno.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento esterno.md new file mode 100644 index 0000000..697c149 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento esterno.md @@ -0,0 +1 @@ +[[evento]] scatenatosi all'esterno del [[sistema distribuito]], ovvero nell'[[ambiente]]. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento interno.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento interno.md new file mode 100644 index 0000000..5f65691 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento interno.md @@ -0,0 +1,3 @@ +[[evento]] scatenatosi all'interno del [[sistema distribuito]], ma non nell'[[entità]] considerata. + +> Un [[messaggio]]. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento personale.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento personale.md new file mode 100644 index 0000000..c418381 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento personale.md @@ -0,0 +1,3 @@ +[[evento]] scatenatosi nell'[[entità]] stessa che lo gestisce. + +> Un [[tick]] di [[clock]]. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento.md new file mode 100644 index 0000000..2b04fba --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento.md @@ -0,0 +1,11 @@ +Avvenimento che scatena una risposta in una [[entità]]. + +Può essere: +- [[evento personale]] +- [[evento interno]] +- [[evento esterno]] + +> **Evento personale**: Tick di clock. + +> **Evento interno**: Ricezione di un messaggio. + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/messaggio.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/messaggio.md new file mode 100644 index 0000000..6d09cdc --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/messaggio.md @@ -0,0 +1 @@ +[[lista|sequenza]] finita di [[bit]], inviata da un'[[entità]] e ricevuta da un'altra. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni del modello.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni del modello.md new file mode 100644 index 0000000..af7387e --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni del modello.md @@ -0,0 +1,6 @@ +Nel trattare [[sistema distribuito simmetrico|sistemi distribuiti simmetrici]], bisogna sempre esplicitare: +- [[restrizioni di comunicazione]] +- [[restrizioni di affidabilità]] +- [[restrizioni topologiche]] +- [[restrizioni di tempo]] + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di affidabilità.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di affidabilità.md new file mode 100644 index 0000000..0a2c1d3 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di affidabilità.md @@ -0,0 +1,3 @@ +[[restrizioni del modello|restrizione]]. + +> Si verificano [[guasto|guasti]]? Di che tipo? Un'[[entità]] è in grado di rilevarli? diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di comunicazione.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di comunicazione.md new file mode 100644 index 0000000..49f862b --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di comunicazione.md @@ -0,0 +1,5 @@ +[[restrizioni del modello|restrizione]]. + +> Come vengono ordinati i [[messaggi]]? [[FIFO]]? + +> Il [[canale di comunicazione]] è [[half-duplex]] o [[full-duplex]]? diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di tempo.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di tempo.md new file mode 100644 index 0000000..fe15665 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di tempo.md @@ -0,0 +1,5 @@ +[[restrizioni del modello|restrizione]]. + +> Quanto tempo ci mette un [[messaggio]] ad arrivare? + +> I [[clock]] delle [[entità]] sono sincronizzati? diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni topologiche.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni topologiche.md new file mode 100644 index 0000000..3b91e3a --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni topologiche.md @@ -0,0 +1,3 @@ +[[restrizioni del modello|restrizione]]. + +> Si conoscono le caratteristiche [[grafo|topologiche]] della [[rete di comunicazione]]? Quali sono? diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/rete di comunicazione.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/rete di comunicazione.md new file mode 100644 index 0000000..00d2b3b --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/rete di comunicazione.md @@ -0,0 +1,5 @@ +--- +aliases: + - communication network +--- +[[grafo]] di quali [[entità]] possono inviare [[messaggio|messaggi]] a quali altre. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito asincrono.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito asincrono.md new file mode 100644 index 0000000..aaf550d --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito asincrono.md @@ -0,0 +1 @@ +[[sistema distribuito]] che non ha [[restrizioni di tempo]]. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito simmetrico.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito simmetrico.md new file mode 100644 index 0000000..80d6165 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito simmetrico.md @@ -0,0 +1 @@ +[[sistema distribuito]] in cui tutte le [[entità]] hanno lo stesso [[comportamento]]. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito.md new file mode 100644 index 0000000..dfb5452 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito.md @@ -0,0 +1,7 @@ +--- +aliases: + - distributed system +--- +[[Sistema]] formato da un [[insieme]] di [[entità]]. + +> Non solo la computazione è distribuita, anche l'input del sistema potrebbe essere distribuito! diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema parallelo.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema parallelo.md new file mode 100644 index 0000000..4d72150 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema parallelo.md @@ -0,0 +1,7 @@ +--- +aliases: + - parallel system + - parallel machine + - macchina parallela +--- +[[Sistema]] che esegue più istruzioni contemporaneamente. \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema sequenziale.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema sequenziale.md new file mode 100644 index 0000000..2e0d251 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema sequenziale.md @@ -0,0 +1,7 @@ +--- +aliases: + - sequential machine + - macchina sequenziale + - sequential system +--- +[[Sistema]] che esegue istruzioni sequenzialmente. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/broadcast.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/broadcast.md new file mode 100644 index 0000000..37c7777 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/broadcast.md @@ -0,0 +1,21 @@ +[[Problema]] per un [[sistema distribuito]]. + +## Definizione + +Una singola [[entità]] vuole fare arrivare un [[messaggio]] a tutte le altre. + +### [[restrizioni del modello]] + +- [[affidabilità totale]] +- [[full-duplex]] +- [[grafo connesso]] + +> L'algoritmo è indipendente da: +> - [[topologia]] +> - numero di [[entità]] +> - presenza di [[identificativi]] del sistema + +## Algoritmi + +- [[flooding broadcast v3]] +- \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v1.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v1.md new file mode 100644 index 0000000..faffc44 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v1.md @@ -0,0 +1,22 @@ +[[Algoritmo]] ***incorretto*** di [[broadcast]]. + +Ogni [[entità]] manda l'informazione a tutti i suoi vicini. + +## [[Stato]] + +- `INITIATOR`: quello che manda il messaggio +- `SLEEPING`: quelli che non mandano il messaggio + +## [[comportamento]] + +### `INITIATOR` + +Se ricevo il messaggio non faccio niente. + +### `SLEEPING` + +Se ricevo il messaggio lo propago ai miei vicini. + +## Incorrettezza + +L'algoritmo molto probabilmente non terminerà! diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v2.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v2.md new file mode 100644 index 0000000..990c518 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v2.md @@ -0,0 +1,23 @@ +[[Algoritmo]] di [[broadcast]], una correzione a [[flooding broadcast v1]]. + +Ogni [[entità]] manda l'informazione a tutti i suoi vicini, **ma solo se non l'ha già fatto**. + +## [[Stato]] + +- `INITIATOR`: quello che manda il messaggio +- `SLEEPING`: quelli che non mandano il messaggio +- **`DONE`: quelli non hanno mandato il messaggio, ma l'hanno ricevuto e inoltrato** + +## [[comportamento]] + +### `INITIATOR` + +Se ricevo il messaggio non faccio niente. + +### `SLEEPING` + +Se ricevo il messaggio lo propago ai miei vicini e passo a `DONE`. + +### **`DONE`** + +**Se ricevo il messaggio non faccio niente.** diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v3.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v3.md new file mode 100644 index 0000000..85cd5d3 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v3.md @@ -0,0 +1,47 @@ +[[Algoritmo]] di [[broadcast]], migliore rispetto a [[flooding broadcast v2]]. + +Ogni [[entità]] manda l'informazione a tutti i suoi vicini **che non gliel'hanno mandato**, ma solo se non l'ha già fatto. + +## [[Stato]] + +- `INITIATOR`: quello che manda il messaggio +- `SLEEPING`: quelli che non mandano il messaggio +- `DONE`: quelli non hanno mandato il messaggio, ma l'hanno ricevuto e inoltrato + +## [[comportamento]] + +### `INITIATOR` + +Se ricevo il messaggio non faccio niente. + +### `SLEEPING` + +Se ricevo il messaggio lo propago ai miei vicini **eccetto quello che me l'ha mandato** e passo a `DONE`. + +### `DONE` + +Se ricevo il messaggio non faccio niente. + +## [[costo computazionale distribuito]] + +### [[Spazio]] + +Abbiamo massimo $2$ messaggi per ogni [[arco di un grafo|arco]] della [[rete di comunicazione]]: +- $1$ normalmente +- $2$ se i due nodi che l'arco connette si mandano messaggi a vicenda + +Quindi, l'algoritmo è in $O(archi)$, ovvero $O(nodi)$, e in particolare: + #TODO La formula formattata bene. + +### [[Tempo]] (unitario uniforme per messaggio) + +[[diametro di un grafo|Diametro]] della [[rete di comunicazione]]. + +Quindi, l'algoritmo è in $O(nodi)$. + +## Osservazioni + +C'è [[terminazione locale]], ma non [[terminazione globale]]: non si sa [[termination detection problem|il momento in cui il messaggio è stato propagato a tutti i nodi]]! + +L'algoritmo è efficiente negli [[albero|alberi]], non nei [[grafo completo|grafi completi]]: + #TODO Al minimo richiede $n - 1$ messaggi, e quindi $\Omega(nodi)$. \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/wake-up problem.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/wake-up problem.md new file mode 100644 index 0000000..f0d2a5c --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/wake-up problem.md @@ -0,0 +1,9 @@ +[[Problema]] per [[sistema distribuito|sistemi distribuiti]]. + +È un [[broadcast]] in cui ci sono più `INITIATOR`. + +## Algoritmi + +- [[flooding broadcast v3]] + - #TODO Più archi avranno $2$ messaggi scambiati. + - $2 \cdot archi - (nodi - initiator)$ diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree tramite traversal.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree tramite traversal.md new file mode 100644 index 0000000..c44c51d --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree tramite traversal.md @@ -0,0 +1,16 @@ +[[Algoritmo]] di [[costruzione di uno spanning tree]]. + +Utilizza un [[token]] per visitare sequenzialmente tutti i nodi del tree. + +## #TODO [[restrizioni del modello]] + +- Iniziatore singolo +- [[full-duplex]] +- Connettività??? +- [[affidabilità totale]] + +## [[Stato]] + + +## [[comportamento]] + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree.md new file mode 100644 index 0000000..f8d2ac4 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree.md @@ -0,0 +1,11 @@ +[[Problema]] per [[sistema distribuito|sistemi distribuiti]]. + +Consiste nel creare uno [[spanning tree]] per effettuare efficientemente [[broadcast]] ripetuti. + +## [[restrizioni del modello]] + +#ŦODO + +## Algoritmi + +- [[protocollo shout v1]] \ No newline at end of file diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v1.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v1.md new file mode 100644 index 0000000..641a8d9 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v1.md @@ -0,0 +1,11 @@ +[[Algoritmo]] per la [[costruzione di uno spanning tree]]. + +## #TODO [[Stato]] + +## #TODO [[comportamento]] + +## [[costo computazionale distribuito]] + +È composto da una fase di [[flooding broadcast v3]] più una fase di reply. + +Dato che nella fase di reply ogni nodo risponde una e una sola volta, possiamo dire che il costo sia esattamente doppio a quello del [[flooding broadcast v3]]. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v2.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v2.md new file mode 100644 index 0000000..cb74c4d --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v2.md @@ -0,0 +1,8 @@ +[[Algoritmo]] per la [[costruzione di uno spanning tree]], basato su [[protocollo shout v1]] ma che interpreta come `No` lo scambio di due `Question` tra nodi. + +## #TODO [[Stato]] + +## #TODO [[comportamento]] + +## [[costo computazionale distribuito]] + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/spanning tree.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/spanning tree.md new file mode 100644 index 0000000..c850809 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/spanning tree.md @@ -0,0 +1 @@ +[[Sottografo]] [[grafo aciclico|aciclico]] [[grafo connesso|connesso]] che contiene tutti i nodi dell'originale, ma solo un sottoinsieme degli archi. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/1 - Concetti/leader election.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/1 - Concetti/leader election.md new file mode 100644 index 0000000..94372fb --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/1 - Concetti/leader election.md @@ -0,0 +1,10 @@ +#TODO [[Problema]]. + +Roba della lezione scorsa. + +Tanti nodi uguali devono decidere uno di loro che diventerà leader. + +In base alla topologia del grafo, si ha che: +- [[leader election su anello]] + +I nodi hanno tutti un ID univoco, e solitamente si elegge leader il nodo con ID minore. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/anello.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/anello.md new file mode 100644 index 0000000..2490e04 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/anello.md @@ -0,0 +1,4 @@ +[[Grafo]] in cui: + +- ogni [[nodo di un grafo|nodo]] ha due [[arco di un grafo|archi]], *destra* e *sinistra* +- ogni [[arco di un grafo|arco]] connette un nodo a *destra* e un nodo a *sinistra* diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election all-the-way su anello.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election all-the-way su anello.md new file mode 100644 index 0000000..d81f0c9 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election all-the-way su anello.md @@ -0,0 +1,11 @@ +#TODO + +Invia in una direzione il proprio ID finchè non è tornato indietro. + +Per sapere quando è terminato, richiede che: +- o i messaggi vengano consegnati in ordine +- o sia conosciuto il numero di nodi nell'anello + - contatore in messaggi + - contatore in ogni entità + + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election as-far-as-it-can su anello.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election as-far-as-it-can su anello.md new file mode 100644 index 0000000..1ce3fd7 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election as-far-as-it-can su anello.md @@ -0,0 +1,3 @@ +[[algoritmo]] di [[leader election su anello]]. + +#TODO Inoltra solo gli ID minori di quelli già inviati. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election controlled-distance su anello.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election controlled-distance su anello.md new file mode 100644 index 0000000..299bd75 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election controlled-distance su anello.md @@ -0,0 +1,34 @@ +#TODO [[algoritmo]] di [[leader election su anello]]. + +## [[restrizioni del modello]] + +- [[full-duplex]] +- [[affidabilità totale]] +- [[orientamento locale]] +- [[identificatori distinti]] +- **non c'è bisogno di conoscere N** + +## Funzionamento + +I nodi possono essere *candidati* o *sconfitti*. + +Ad ogni fase, ogni candidato cerca di sconfiggere alcuni nodi. + +In particolare: + +1. Ogni candidato manda il suo ID ai suoi vicini. +2. Ogni vicino propaga il messaggio fino a quando non ha viaggiato per $2^{stage}$ archi. +3. If + - Il messaggio incontra un ID più piccolo, si ferma. + - Il messaggio raggiunge la fine del suo viaggio, viene rimandato indietro. +4. Se l'ID non torna indietro da entrambe le direzioni, il nodo è *sconfitto*. +5. Se il messaggio inviato a sinistra viene ricevuto a destra o viceversa, allora è stato percorso tutto l'anello. +## [[costo computazionale distribuito]] + +### [[spazio]] + +#TODO + +## [[tempo]] + +#TODO diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election su anello.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election su anello.md new file mode 100644 index 0000000..e08d3a2 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election su anello.md @@ -0,0 +1,6 @@ +#TODO [[leader election]] applicata a un [[grafo]] ad [[anello]]. + +> Studiata principalmente per motivi storici. + +[[leader election all-the-way su anello]] +[[leader election as-far-as-it-can su anello]] diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/FloodMax.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/FloodMax.md new file mode 100644 index 0000000..a6aa263 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/FloodMax.md @@ -0,0 +1,11 @@ +#TODO [[algoritmo]] di [[leader election su grafo generico]]. + +## Funzionamento (del duale FloodMin) + +Vengono effettuati $Diametro$ [[flooding broadcast v3]], ciascuno con l'id più basso incontrato da ciascun nodo nella fase precedente. + +## [[costo computazionale]] + +### [[spazio]] +### [[tempo]] + diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/leader election su grafo generico.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/leader election su grafo generico.md new file mode 100644 index 0000000..de78665 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/leader election su grafo generico.md @@ -0,0 +1,5 @@ +#TODO [[problema]] di [[leader election]] applicato a un qualsiasi [[grafo]]. + +## Algoritmi conosciuti + +- [[FloodMax]] diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/broadcast routing.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/broadcast routing.md new file mode 100644 index 0000000..36a4798 --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/broadcast routing.md @@ -0,0 +1,5 @@ +[[algoritmo]] di [[routing]]. + +Sfrutta il [[broadcast]] per fare arrivare il messaggio a destinazione. + +Funziona, ma è molto problematico in termini di [[costo computazionale distribuito]]! diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing table.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing table.md new file mode 100644 index 0000000..c286d1b --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing table.md @@ -0,0 +1,5 @@ +#TODO Termine? + +Database contenuto in ciascuna entità che effettua [[routing]]. + +Associa ogni destinazione al collegamento necessario per raggiungerla e al costo richiesto. diff --git a/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing.md b/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing.md new file mode 100644 index 0000000..71a91eb --- /dev/null +++ b/9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing.md @@ -0,0 +1,7 @@ +--- +aliases: + - instradamento +--- +[[problema]]. + +Consiste nel determinare un percorso all'interno della [[rete di comunicazione]] tra due [[entità]]. \ No newline at end of file diff --git a/steffo-file-index-ignore.json b/steffo-file-index-ignore.json new file mode 100644 index 0000000..99b5ce4 --- /dev/null +++ b/steffo-file-index-ignore.json @@ -0,0 +1,4 @@ +[ + "[.](?!md|canvas).+$", + "/0 - Materiale di studio/" +] \ No newline at end of file diff --git a/steffo-file-index.json b/steffo-file-index.json new file mode 100644 index 0000000..19eacbf --- /dev/null +++ b/steffo-file-index.json @@ -0,0 +1,1696 @@ +{ + "basenames": { + "routing": "9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing.md", + "routing table": "9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing table.md", + "broadcast routing": "9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/broadcast routing.md", + "leader election su grafo generico": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/leader election su grafo generico.md", + "FloodMax": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/FloodMax.md", + "leader election su anello": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election su anello.md", + "leader election controlled-distance su anello": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election controlled-distance su anello.md", + "leader election as-far-as-it-can su anello": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election as-far-as-it-can su anello.md", + "leader election all-the-way su anello": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election all-the-way su anello.md", + "anello": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/anello.md", + "leader election": "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/1 - Concetti/leader election.md", + "spanning tree": "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/spanning tree.md", + "protocollo shout v2": "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v2.md", + "protocollo shout v1": "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v1.md", + "costruzione di uno spanning tree": "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree.md", + "costruzione di uno spanning tree tramite traversal": "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree tramite traversal.md", + "wake-up problem": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/wake-up problem.md", + "flooding broadcast v3": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v3.md", + "flooding broadcast v2": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v2.md", + "flooding broadcast v1": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v1.md", + "broadcast": "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/broadcast.md", + "sistema sequenziale": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema sequenziale.md", + "sistema parallelo": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema parallelo.md", + "sistema distribuito": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito.md", + "sistema distribuito simmetrico": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito simmetrico.md", + "sistema distribuito asincrono": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito asincrono.md", + "rete di comunicazione": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/rete di comunicazione.md", + "restrizioni topologiche": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni topologiche.md", + "restrizioni di tempo": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di tempo.md", + "restrizioni di comunicazione": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di comunicazione.md", + "restrizioni di affidabilità": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di affidabilità.md", + "restrizioni del modello": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni del modello.md", + "messaggio": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/messaggio.md", + "evento": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento.md", + "evento personale": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento personale.md", + "evento interno": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento interno.md", + "evento esterno": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento esterno.md", + "entità": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/entità.md", + "criterio di costo sincrono totale": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo sincrono totale.md", + "criterio di costo asincrono": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo asincrono.md", + "costo computazionale distribuito": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/costo computazionale distribuito.md", + "comunicazione": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comunicazione.md", + "comportamento": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comportamento.md", + "azione": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/azione.md", + "assioma dell'orientamento locale": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma dell'orientamento locale.md", + "assioma del ritardo di comunicazione": "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma del ritardo di comunicazione.md", + "★ algoritmi di approssimazione": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/★ algoritmi di approssimazione.canvas", + "vertex cover": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover.md", + "vertex cover problem": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover problem.md", + "soluzione approssimata": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/soluzione approssimata.md", + "relax and round": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round.md", + "relax and round per vertex cover problem": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round per vertex cover problem.md", + "proprietà triangolare per il costo degli archi": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/proprietà triangolare per il costo degli archi.md", + "minimum perfect matching": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/minimum perfect matching.md", + "fattore di approssimazione": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/fattore di approssimazione.md", + "approssimazione del problema del commesso viaggiatore": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/approssimazione del problema del commesso viaggiatore.md", + "algoritmo di approssimazione": "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/algoritmo di approssimazione.md", + "★ problemi": "9 - Algoritmi distribuiti/1 - Problemi/★ problemi.canvas", + "verifica": "9 - Algoritmi distribuiti/1 - Problemi/verifica.md", + "tesi di Church-Turing": "9 - Algoritmi distribuiti/1 - Problemi/tesi di Church-Turing.md", + "tempo": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/tempo.md", + "struttura dati": "9 - Algoritmi distribuiti/1 - Problemi/struttura dati.md", + "spazio": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/spazio.md", + "soluzione": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione.md", + "soluzione ottima": "9 - Algoritmi distribuiti/1 - Problemi/soluzione ottima.md", + "satisfability": "9 - Algoritmi distribuiti/1 - Problemi/satisfability.md", + "riduzione di Karp": "9 - Algoritmi distribuiti/1 - Problemi/riduzione di Karp.md", + "ricerca di ciclo hamiltoniano": "9 - Algoritmi distribuiti/1 - Problemi/ricerca di ciclo hamiltoniano.md", + "problema trattabile": "9 - Algoritmi distribuiti/1 - Problemi/problema trattabile.md", + "problema presumibilmente intrattabile": "9 - Algoritmi distribuiti/1 - Problemi/problema presumibilmente intrattabile.md", + "problema irrisolvibile": "9 - Algoritmi distribuiti/1 - Problemi/problema irrisolvibile.md", + "problema intrattabile": "9 - Algoritmi distribuiti/1 - Problemi/problema intrattabile.md", + "problema di ricerca": "9 - Algoritmi distribuiti/1 - Problemi/problema di ricerca.md", + "problema di ottimizzazione": "9 - Algoritmi distribuiti/1 - Problemi/problema di ottimizzazione.md", + "problema di minimizzazione": "9 - Algoritmi distribuiti/1 - Problemi/problema di minimizzazione.md", + "problema di massimizzazione": "9 - Algoritmi distribuiti/1 - Problemi/problema di massimizzazione.md", + "problema del commesso viaggiatore": "9 - Algoritmi distribuiti/1 - Problemi/problema del commesso viaggiatore.md", + "problema decisionale": "9 - Algoritmi distribuiti/1 - Problemi/problema decisionale.md", + "problema computazionale": "9 - Algoritmi distribuiti/1 - Problemi/problema computazionale.md", + "problema P e NP": "9 - Algoritmi distribuiti/1 - Problemi/problema P e NP.md", + "polinomiale": "9 - Algoritmi distribuiti/1 - Problemi/polinomiale.md", + "parametro": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro.md", + "ottimizzazione → decisionale": "9 - Algoritmi distribuiti/1 - Problemi/ottimizzazione → decisionale.md", + "notazione ω-piccola": "9 - Algoritmi distribuiti/1 - Problemi/notazione ω-piccola.md", + "notazione Ω-grande": "9 - Algoritmi distribuiti/1 - Problemi/notazione Ω-grande.md", + "notazione Θ-grande": "9 - Algoritmi distribuiti/1 - Problemi/notazione Θ-grande.md", + "notazione o-piccola": "9 - Algoritmi distribuiti/1 - Problemi/notazione o-piccola.md", + "notazione asintotica": "9 - Algoritmi distribuiti/1 - Problemi/notazione asintotica.md", + "notazione O-grande": "9 - Algoritmi distribuiti/1 - Problemi/notazione O-grande.md", + "logaritmo in base 2": "9 - Algoritmi distribuiti/1 - Problemi/logaritmo in base 2.md", + "istanza": "9 - Algoritmi distribuiti/1 - Problemi/istanza.md", + "istanza positiva": "9 - Algoritmi distribuiti/1 - Problemi/istanza positiva.md", + "istanza negativa": "9 - Algoritmi distribuiti/1 - Problemi/istanza negativa.md", + "insieme delle soluzioni": "9 - Algoritmi distribuiti/1 - Problemi/insieme delle soluzioni.md", + "insieme delle istanze": "9 - Algoritmi distribuiti/1 - Problemi/insieme delle istanze.md", + "funzione obiettivo": "9 - Algoritmi distribuiti/1 - Problemi/funzione obiettivo.md", + "funzione guadagno": "9 - Algoritmi distribuiti/1 - Problemi/funzione guadagno.md", + "funzione costo": "9 - Algoritmi distribuiti/1 - Problemi/funzione costo.md", + "dimensione dell'input": "9 - Algoritmi distribuiti/1 - Problemi/dimensione dell'input.md", + "criterio di costo": "9 - Algoritmi distribuiti/1 - Problemi/criterio di costo.md", + "criterio di costo uniforme": "9 - Algoritmi distribuiti/1 - Problemi/criterio di costo uniforme.md", + "criterio di costo logaritmico": "9 - Algoritmi distribuiti/1 - Problemi/criterio di costo logaritmico.md", + "costo computazionale": "9 - Algoritmi distribuiti/1 - Problemi/costo computazionale.md", + "classe di problemi P": "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi P.md", + "classe di problemi NP": "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP.md", + "classe di problemi NP-difficili": "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md", + "classe di problemi NP-completi": "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-completi.md", + "circuito di un grafo": "9 - Algoritmi distribuiti/1 - Problemi/circuito di un grafo.md", + "certificato per un'istanza": "9 - Algoritmi distribuiti/1 - Problemi/certificato per un'istanza.md", + "algoritmo": "9 - Algoritmi distribuiti/1 - Problemi/algoritmo.md", + "algoritmo corretto": "9 - Algoritmi distribuiti/1 - Problemi/algoritmo corretto.md", + "vulnerabilità": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/vulnerabilità.md", + "vettore di attacco": "8 - Sviluppo di software sicuro/1 - Terminologia/vettore di attacco.md", + "superficie di attacco": "8 - Sviluppo di software sicuro/1 - Terminologia/superficie di attacco.md", + "sicurezza": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza.md", + "sicurezza informatica": "8 - Sviluppo di software sicuro/1 - Terminologia/sicurezza informatica.md", + "rischio": "8 - Sviluppo di software sicuro/1 - Terminologia/rischio.md", + "principio del silenzio": "8 - Sviluppo di software sicuro/1 - Terminologia/principio del silenzio.md", + "principio del minimo privilegio": "8 - Sviluppo di software sicuro/1 - Terminologia/principio del minimo privilegio.md", + "prestazioni": "8 - Sviluppo di software sicuro/1 - Terminologia/prestazioni.md", + "politica di sicurezza": "8 - Sviluppo di software sicuro/1 - Terminologia/politica di sicurezza.md", + "minaccia": "8 - Sviluppo di software sicuro/1 - Terminologia/minaccia.md", + "meccanismo di sicurezza": "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di sicurezza.md", + "meccanismo di rilevazione": "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di rilevazione.md", + "meccanismo di reazione": "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di reazione.md", + "meccanismo di prevenzione": "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di prevenzione.md", + "input valido": "8 - Sviluppo di software sicuro/1 - Terminologia/input valido.md", + "input lecito": "8 - Sviluppo di software sicuro/1 - Terminologia/input lecito.md", + "input invalido": "8 - Sviluppo di software sicuro/1 - Terminologia/input invalido.md", + "input illecito": "8 - Sviluppo di software sicuro/1 - Terminologia/input illecito.md", + "funzionalità": "8 - Sviluppo di software sicuro/1 - Terminologia/funzionalità.md", + "exploit": "8 - Sviluppo di software sicuro/1 - Terminologia/exploit.md", + "distinguisher": "8 - Sviluppo di software sicuro/1 - Terminologia/distinguisher.md", + "difetto": "8 - Sviluppo di software sicuro/1 - Terminologia/difetto.md", + "debolezza": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/debolezza.md", + "bug": "8 - Sviluppo di software sicuro/1 - Terminologia/bug.md", + "attaccante": "8 - Sviluppo di software sicuro/1 - Terminologia/attaccante.md", + "asset": "8 - Sviluppo di software sicuro/1 - Terminologia/asset.md", + "analisi dei rischi": "8 - Sviluppo di software sicuro/1 - Terminologia/analisi dei rischi.md", + "STRIDE": "8 - Sviluppo di software sicuro/1 - Terminologia/STRIDE.md", + "🞵 parentesi anti-eugenica": "8 - Sistemi complessi/6 - Robustezza/🞵 parentesi anti-eugenica.md", + "★ robustezza": "8 - Sistemi complessi/6 - Robustezza/★ robustezza.canvas", + "versatilità": "8 - Sistemi complessi/6 - Robustezza/versatilità.md", + "tratto": "8 - Sistemi complessi/6 - Robustezza/tratto.md", + "tolleranza altamente ottimizzata": "8 - Sistemi complessi/6 - Robustezza/tolleranza altamente ottimizzata.md", + "robustezza": "8 - Sistemi complessi/6 - Robustezza/robustezza.md", + "robustezza locale": "8 - Sistemi complessi/6 - Robustezza/robustezza locale.md", + "robustezza distribuita": "8 - Sistemi complessi/6 - Robustezza/robustezza distribuita.md", + "robustezza differenziale": "8 - Sistemi complessi/6 - Robustezza/robustezza differenziale.md", + "robustezza biologica": "8 - Sistemi complessi/6 - Robustezza/robustezza biologica.md", + "ridondanza": "8 - Sistemi complessi/6 - Robustezza/ridondanza.md", + "rete regolatrice di geni": "8 - Sistemi complessi/6 - Robustezza/rete regolatrice di geni.md", + "rete neutrale": "8 - Sistemi complessi/6 - Robustezza/rete neutrale.md", + "proteoma": "8 - Sistemi complessi/6 - Robustezza/proteoma.md", + "popolazione": "8 - Sistemi complessi/6 - Robustezza/popolazione.md", + "point mutation": "8 - Sistemi complessi/6 - Robustezza/point mutation.md", + "pleiotropia": "8 - Sistemi complessi/6 - Robustezza/pleiotropia.md", + "plasticità fenotipica": "8 - Sistemi complessi/6 - Robustezza/plasticità fenotipica.md", + "paradosso dell'evolvibilità": "8 - Sistemi complessi/6 - Robustezza/paradosso dell'evolvibilità.md", + "omeostasi": "8 - Sistemi complessi/6 - Robustezza/omeostasi.md", + "nucleotide": "8 - Sistemi complessi/6 - Robustezza/nucleotide.md", + "modello duplication-degeneracy-complementation": "8 - Sistemi complessi/6 - Robustezza/modello duplication-degeneracy-complementation.md", + "individuo": "8 - Sistemi complessi/6 - Robustezza/individuo.md", + "genotipo": "8 - Sistemi complessi/6 - Robustezza/genotipo.md", + "genoma": "8 - Sistemi complessi/6 - Robustezza/genoma.md", + "gene": "8 - Sistemi complessi/6 - Robustezza/gene.md", + "fitness": "8 - Sistemi complessi/6 - Robustezza/fitness.md", + "fenotipo": "8 - Sistemi complessi/6 - Robustezza/fenotipo.md", + "evolvibilità": "8 - Sistemi complessi/6 - Robustezza/evolvibilità.md", + "degenerazione": "8 - Sistemi complessi/6 - Robustezza/degenerazione.md", + "crossover": "8 - Sistemi complessi/6 - Robustezza/crossover.md", + "cromosoma": "8 - Sistemi complessi/6 - Robustezza/cromosoma.md", + "canalizzazione": "8 - Sistemi complessi/6 - Robustezza/canalizzazione.md", + "★ insiemi auto-replicanti": "8 - Sistemi complessi/5 - Origine della vita/★ insiemi auto-replicanti.canvas", + "★ geni come random boolean network": "8 - Sistemi complessi/5 - Origine della vita/★ geni come random boolean network.canvas", + "substrato": "8 - Sistemi complessi/5 - Origine della vita/substrato.md", + "modello di Kauffman per gli insiemi auto-replicanti": "8 - Sistemi complessi/5 - Origine della vita/modello di Kauffman per gli insiemi auto-replicanti.md", + "modello di Kauffman gene-RBN": "8 - Sistemi complessi/5 - Origine della vita/modello di Kauffman gene-RBN.md", + "insieme auto-replicante": "8 - Sistemi complessi/5 - Origine della vita/insieme auto-replicante.md", + "insieme auto-catalitico riflessivo generato da cibo": "8 - Sistemi complessi/5 - Origine della vita/insieme auto-catalitico riflessivo generato da cibo.md", + "gene duplication": "8 - Sistemi complessi/5 - Origine della vita/gene duplication.md", + "catalizzatore": "8 - Sistemi complessi/5 - Origine della vita/catalizzatore.md", + "★ ipergrafi": "8 - Sistemi complessi/4 - Grafi/★ ipergrafi.canvas", + "★ grafi": "8 - Sistemi complessi/4 - Grafi/★ grafi.canvas", + "★ grafi multi-livello": "8 - Sistemi complessi/4 - Grafi/★ grafi multi-livello.canvas", + "rete multiplex": "8 - Sistemi complessi/4 - Grafi/rete multiplex.md", + "rete multiplex straightforward": "8 - Sistemi complessi/4 - Grafi/rete multiplex straightforward.md", + "rete multiplex correlata": "8 - Sistemi complessi/4 - Grafi/rete multiplex correlata.md", + "rete interdipendente": "8 - Sistemi complessi/4 - Grafi/rete interdipendente.md", + "raggio di un grafo": "8 - Sistemi complessi/4 - Grafi/raggio di un grafo.md", + "percorso euleriano": "8 - Sistemi complessi/4 - Grafi/percorso euleriano.md", + "percolation threshold": "8 - Sistemi complessi/4 - Grafi/percolation threshold.md", + "multislice modularity": "8 - Sistemi complessi/4 - Grafi/multislice modularity.md", + "lunghezza caratteristica di un grafo": "8 - Sistemi complessi/4 - Grafi/lunghezza caratteristica di un grafo.md", + "iperrete": "8 - Sistemi complessi/4 - Grafi/iperrete.md", + "ipergrafo": "8 - Sistemi complessi/4 - Grafi/ipergrafo.md", + "iperarco": "8 - Sistemi complessi/4 - Grafi/iperarco.md", + "interdipendenza": "8 - Sistemi complessi/4 - Grafi/interdipendenza.md", + "grafo": "8 - Sistemi complessi/4 - Grafi/grafo.md", + "grafo sparso": "8 - Sistemi complessi/4 - Grafi/grafo sparso.md", + "grafo small-world": "8 - Sistemi complessi/4 - Grafi/grafo small-world.md", + "grafo scale-free": "8 - Sistemi complessi/4 - Grafi/grafo scale-free.md", + "grafo multi-livello": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello.md", + "grafo multi-livello k-partito": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello k-partito.md", + "grafo multi-livello interconnesso": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello interconnesso.md", + "grafo multi-livello diagonale": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello diagonale.md", + "grafo multi-livello diagonale a livelli accoppiati": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello diagonale a livelli accoppiati.md", + "grafo multi-livello categorico": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello categorico.md", + "grafo multi-livello allineato ai nodi": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello allineato ai nodi.md", + "grafo multi-livello a livelli disgiunti": "8 - Sistemi complessi/4 - Grafi/grafo multi-livello a livelli disgiunti.md", + "grafo denso": "8 - Sistemi complessi/4 - Grafi/grafo denso.md", + "grafo connesso": "8 - Sistemi complessi/4 - Grafi/grafo connesso.md", + "grafo completo": "8 - Sistemi complessi/4 - Grafi/grafo completo.md", + "grafo casuale": "8 - Sistemi complessi/4 - Grafi/grafo casuale.md", + "grafo ad archi colorati": "8 - Sistemi complessi/4 - Grafi/grafo ad archi colorati.md", + "grafo a reticolo": "8 - Sistemi complessi/4 - Grafi/grafo a reticolo.md", + "grafo a nodi colorati": "8 - Sistemi complessi/4 - Grafi/grafo a nodi colorati.md", + "eccentricità di un nodo": "8 - Sistemi complessi/4 - Grafi/eccentricità di un nodo.md", + "distanza tra nodi di un grafo": "8 - Sistemi complessi/4 - Grafi/distanza tra nodi di un grafo.md", + "diametro di un grafo": "8 - Sistemi complessi/4 - Grafi/diametro di un grafo.md", + "coefficiente di clustering": "8 - Sistemi complessi/4 - Grafi/coefficiente di clustering.md", + "coefficiente di clustering in una rete multiplex": "8 - Sistemi complessi/4 - Grafi/coefficiente di clustering in una rete multiplex.md", + "circuito euleriano": "8 - Sistemi complessi/4 - Grafi/circuito euleriano.md", + "bellezza": "8 - Sistemi complessi/4 - Grafi/bellezza.md", + "aspetto ordinale di un grafo multi-livello": "8 - Sistemi complessi/4 - Grafi/aspetto ordinale di un grafo multi-livello.md", + "aspetto di un grafo multi-livello": "8 - Sistemi complessi/4 - Grafi/aspetto di un grafo multi-livello.md", + "aspetto categorico di un grafo multi-livello": "8 - Sistemi complessi/4 - Grafi/aspetto categorico di un grafo multi-livello.md", + "arco di accoppiamento": "8 - Sistemi complessi/4 - Grafi/arco di accoppiamento.md", + "★ automi cellulari": "8 - Sistemi complessi/3 - Automi cellulari/★ automi cellulari.canvas", + "vicinato di von Neumann": "8 - Sistemi complessi/3 - Automi cellulari/vicinato di von Neumann.md", + "vicinato di un automa cellulare": "8 - Sistemi complessi/3 - Automi cellulari/vicinato di un automa cellulare.md", + "vicinato di Moore": "8 - Sistemi complessi/3 - Automi cellulari/vicinato di Moore.md", + "universalità": "8 - Sistemi complessi/3 - Automi cellulari/universalità.md", + "stato di una cella": "8 - Sistemi complessi/3 - Automi cellulari/stato di una cella.md", + "spaceship": "8 - Sistemi complessi/3 - Automi cellulari/spaceship.md", + "sincronizzazione del plotone di esecuzione": "8 - Sistemi complessi/3 - Automi cellulari/sincronizzazione del plotone di esecuzione.md", + "reticolo di un automa cellulare": "8 - Sistemi complessi/3 - Automi cellulari/reticolo di un automa cellulare.md", + "reticolo FCHC": "8 - Sistemi complessi/3 - Automi cellulari/reticolo FCHC.md", + "regola di transizione": "8 - Sistemi complessi/3 - Automi cellulari/regola di transizione.md", + "regola di Wolfram": "8 - Sistemi complessi/3 - Automi cellulari/regola di Wolfram.md", + "regola 110 di Wolfram": "8 - Sistemi complessi/3 - Automi cellulari/regola 110 di Wolfram.md", + "puffer": "8 - Sistemi complessi/3 - Automi cellulari/puffer.md", + "oscillator": "8 - Sistemi complessi/3 - Automi cellulari/oscillator.md", + "modello Schelling": "8 - Sistemi complessi/3 - Automi cellulari/modello Schelling.md", + "modello Sakoda": "8 - Sistemi complessi/3 - Automi cellulari/modello Sakoda.md", + "modello Nowak-Lewenstein": "8 - Sistemi complessi/3 - Automi cellulari/modello Nowak-Lewenstein.md", + "modello HPP": "8 - Sistemi complessi/3 - Automi cellulari/modello HPP.md", + "modello FHP": "8 - Sistemi complessi/3 - Automi cellulari/modello FHP.md", + "modello FHP con particelle velocità zero": "8 - Sistemi complessi/3 - Automi cellulari/modello FHP con particelle velocità zero.md", + "modello Axelrod": "8 - Sistemi complessi/3 - Automi cellulari/modello Axelrod.md", + "metodo reticolare di Boltzmann": "8 - Sistemi complessi/3 - Automi cellulari/metodo reticolare di Boltzmann.md", + "lambda di Langton": "8 - Sistemi complessi/3 - Automi cellulari/lambda di Langton.md", + "gun": "8 - Sistemi complessi/3 - Automi cellulari/gun.md", + "giardino dell'Eden": "8 - Sistemi complessi/3 - Automi cellulari/giardino dell'Eden.md", + "classe di complessità di Wolfram": "8 - Sistemi complessi/3 - Automi cellulari/classe di complessità di Wolfram.md", + "classe 4 di Wolfram": "8 - Sistemi complessi/3 - Automi cellulari/classe 4 di Wolfram.md", + "classe 3 di Wolfram": "8 - Sistemi complessi/3 - Automi cellulari/classe 3 di Wolfram.md", + "classe 2 di Wolfram": "8 - Sistemi complessi/3 - Automi cellulari/classe 2 di Wolfram.md", + "classe 1 di Wolfram": "8 - Sistemi complessi/3 - Automi cellulari/classe 1 di Wolfram.md", + "cella di un automa cellulare": "8 - Sistemi complessi/3 - Automi cellulari/cella di un automa cellulare.md", + "breeder": "8 - Sistemi complessi/3 - Automi cellulari/breeder.md", + "automa cellulare": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare.md", + "automa cellulare totalistico": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare totalistico.md", + "automa cellulare probabilistico": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare probabilistico.md", + "automa cellulare partizionante": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare partizionante.md", + "automa cellulare legale": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare legale.md", + "automa cellulare invertibile": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare invertibile.md", + "automa cellulare continuo": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo.md", + "automa cellulare continuo spaziale": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo spaziale.md", + "automa cellulare booleano": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare booleano.md", + "automa cellulare asincrono": "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare asincrono.md", + "auto-replicazione": "8 - Sistemi complessi/3 - Automi cellulari/auto-replicazione.md", + "anisotropia": "8 - Sistemi complessi/3 - Automi cellulari/anisotropia.md", + "Wireworld": "8 - Sistemi complessi/3 - Automi cellulari/Wireworld.md", + "Perrier's Loops": "8 - Sistemi complessi/3 - Automi cellulari/Perrier's Loops.md", + "Langton's Loops": "8 - Sistemi complessi/3 - Automi cellulari/Langton's Loops.md", + "Game of Life": "8 - Sistemi complessi/3 - Automi cellulari/Game of Life.md", + "Evoloop": "8 - Sistemi complessi/3 - Automi cellulari/Evoloop.md", + "★ sistemi complessi": "8 - Sistemi complessi/2 - Sistemi complessi/★ sistemi complessi.canvas", + "topological mixing": "8 - Sistemi complessi/2 - Sistemi complessi/topological mixing.md", + "sistema complesso": "8 - Sistemi complessi/2 - Sistemi complessi/sistema complesso.md", + "rete": "8 - Sistemi complessi/2 - Sistemi complessi/rete.md", + "pila di sabbia abeliana": "8 - Sistemi complessi/2 - Sistemi complessi/pila di sabbia abeliana.md", + "parte di un sistema complesso": "8 - Sistemi complessi/2 - Sistemi complessi/parte di un sistema complesso.md", + "ordine spontaneo": "8 - Sistemi complessi/2 - Sistemi complessi/ordine spontaneo.md", + "non-linearità": "8 - Sistemi complessi/2 - Sistemi complessi/non-linearità.md", + "feedback loop": "8 - Sistemi complessi/2 - Sistemi complessi/feedback loop.md", + "fallimento a cascata": "8 - Sistemi complessi/2 - Sistemi complessi/fallimento a cascata.md", + "emergenza": "8 - Sistemi complessi/2 - Sistemi complessi/emergenza.md", + "dense periodic orbits": "8 - Sistemi complessi/2 - Sistemi complessi/dense periodic orbits.md", + "criticità auto-organizzata": "8 - Sistemi complessi/2 - Sistemi complessi/criticità auto-organizzata.md", + "caos": "8 - Sistemi complessi/2 - Sistemi complessi/caos.md", + "auto-organizzazione": "8 - Sistemi complessi/2 - Sistemi complessi/auto-organizzazione.md", + "apertura all'ambiente": "8 - Sistemi complessi/2 - Sistemi complessi/apertura all'ambiente.md", + "adattabilità": "8 - Sistemi complessi/2 - Sistemi complessi/adattabilità.md", + "Landau's phenomenological theory": "8 - Sistemi complessi/2 - Sistemi complessi/Landau's phenomenological theory.md", + "★ sistemi dinamici": "8 - Sistemi complessi/1 - Sistemi dinamici/★ sistemi dinamici.canvas", + "veicolo di Braitenberg": "8 - Sistemi complessi/1 - Sistemi dinamici/veicolo di Braitenberg.md", + "traiettoria": "8 - Sistemi complessi/1 - Sistemi dinamici/traiettoria.md", + "stabilità": "8 - Sistemi complessi/1 - Sistemi dinamici/stabilità.md", + "spazio di fase": "8 - Sistemi complessi/1 - Sistemi dinamici/spazio di fase.md", + "sistema lineare": "8 - Sistemi complessi/1 - Sistemi dinamici/sistema lineare.md", + "sistema dissipativo": "8 - Sistemi complessi/1 - Sistemi dinamici/sistema dissipativo.md", + "sistema dinamico": "8 - Sistemi complessi/1 - Sistemi dinamici/sistema dinamico.md", + "sella": "8 - Sistemi complessi/1 - Sistemi dinamici/sella.md", + "seconda legge della termodinamica": "8 - Sistemi complessi/1 - Sistemi dinamici/seconda legge della termodinamica.md", + "repulsore": "8 - Sistemi complessi/1 - Sistemi dinamici/repulsore.md", + "punto critico": "8 - Sistemi complessi/1 - Sistemi dinamici/punto critico.md", + "potenziale": "8 - Sistemi complessi/1 - Sistemi dinamici/potenziale.md", + "numero di Rayleigh": "8 - Sistemi complessi/1 - Sistemi dinamici/numero di Rayleigh.md", + "numero critico di Rayleigh": "8 - Sistemi complessi/1 - Sistemi dinamici/numero critico di Rayleigh.md", + "metastabilità": "8 - Sistemi complessi/1 - Sistemi dinamici/metastabilità.md", + "legge di potenza": "8 - Sistemi complessi/1 - Sistemi dinamici/legge di potenza.md", + "legge Gutenberg-Richter": "8 - Sistemi complessi/1 - Sistemi dinamici/legge Gutenberg-Richter.md", + "instabilità": "8 - Sistemi complessi/1 - Sistemi dinamici/instabilità.md", + "effetto Marangoni": "8 - Sistemi complessi/1 - Sistemi dinamici/effetto Marangoni.md", + "criticità": "8 - Sistemi complessi/1 - Sistemi dinamici/criticità.md", + "convezione di Rayleigh-Bénard": "8 - Sistemi complessi/1 - Sistemi dinamici/convezione di Rayleigh-Bénard.md", + "condizione iniziale": "8 - Sistemi complessi/1 - Sistemi dinamici/condizione iniziale.md", + "centro": "8 - Sistemi complessi/1 - Sistemi dinamici/centro.md", + "attrattore": "8 - Sistemi complessi/1 - Sistemi dinamici/attrattore.md", + "unit test": "8 - Metodologie di sviluppo software/Testing/unit test.md", + "test": "8 - Metodologie di sviluppo software/Testing/test.md", + "test coverage": "8 - Metodologie di sviluppo software/Testing/test coverage.md", + "regression test": "8 - Metodologie di sviluppo software/Testing/regression test.md", + "performance test": "8 - Metodologie di sviluppo software/Testing/performance test.md", + "acceptance test": "8 - Metodologie di sviluppo software/Testing/acceptance test.md", + "integration test": "8 - Metodologie di sviluppo software/Testing/integration test.md", + "timeboxing": "8 - Metodologie di sviluppo software/Tecniche di sviluppo/timeboxing.md", + "test-driven development": "8 - Metodologie di sviluppo software/Tecniche di sviluppo/test-driven development.md", + "sprint review": "8 - Metodologie di sviluppo software/Tecniche di sviluppo/sprint review.md", + "sprint retrospective": "8 - Metodologie di sviluppo software/Tecniche di sviluppo/sprint retrospective.md", + "sprint planning": "8 - Metodologie di sviluppo software/Tecniche di sviluppo/sprint planning.md", + "refactoring": "8 - Metodologie di sviluppo software/Tecniche di sviluppo/refactoring.md", + "pair programming": "8 - Metodologie di sviluppo software/Tecniche di sviluppo/pair programming.md", + "5 - Project Estimation": "8 - Metodologie di sviluppo software/Svolgimento esercizi/5 - Project Estimation.md", + "scrum master": "8 - Metodologie di sviluppo software/Ruoli professionali/scrum master.md", + "product owner": "8 - Metodologie di sviluppo software/Ruoli professionali/product owner.md", + "unified process": "8 - Metodologie di sviluppo software/Processi di sviluppo/unified process.md", + "scrum": "8 - Metodologie di sviluppo software/Processi di sviluppo/scrum.md", + "scrum of scrum": "8 - Metodologie di sviluppo software/Processi di sviluppo/scrum of scrum.md", + "processo di sviluppo software": "8 - Metodologie di sviluppo software/Processi di sviluppo/processo di sviluppo software.md", + "feature-driven development": "8 - Metodologie di sviluppo software/Processi di sviluppo/feature-driven development.md", + "epic": "8 - Metodologie di sviluppo software/Processi di sviluppo/epic.md", + "daily scrum": "8 - Metodologie di sviluppo software/Processi di sviluppo/daily scrum.md", + "backlog grooming": "8 - Metodologie di sviluppo software/Processi di sviluppo/backlog grooming.md", + "agile": "8 - Metodologie di sviluppo software/Processi di sviluppo/agile.md", + "agile unified process": "8 - Metodologie di sviluppo software/Processi di sviluppo/agile unified process.md", + "modello waterfall": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello waterfall.md", + "modello trasformativo": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello trasformativo.md", + "modello iterativo": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello iterativo.md", + "modello incrementale": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello incrementale.md", + "modello evolutivo": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello evolutivo.md", + "modello di sviluppo": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello di sviluppo.md", + "modello code-and-fix": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello code-and-fix.md", + "modello basato sui componenti": "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello basato sui componenti.md", + "fase di testing": "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di testing.md", + "fase di specifica": "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di specifica.md", + "fase di rilascio": "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di rilascio.md", + "fase di manutenzione": "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di manutenzione.md", + "fase di implementazione": "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di implementazione.md", + "fase di design": "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di design.md", + "user story": "8 - Metodologie di sviluppo software/Artefatti/user story.md", + "product backlog": "8 - Metodologie di sviluppo software/Artefatti/product backlog.md", + "increment": "8 - Metodologie di sviluppo software/Artefatti/increment.md", + "burndown chart": "8 - Metodologie di sviluppo software/Artefatti/burndown chart.md", + "★ mappa concettuale": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/★ mappa concettuale.canvas", + "symmetric ratchet": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/symmetric ratchet.md", + "ricezione X3DH": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/ricezione X3DH.md", + "registrazione X3DH": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/registrazione X3DH.md", + "one-time pre-key": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/one-time pre-key.md", + "non-ripudiabilità": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/non-ripudiabilità.md", + "negabilità": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/negabilità.md", + "invio X3DH": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/invio X3DH.md", + "identity key": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/identity key.md", + "identity information": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/identity information.md", + "double ratchet": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/double ratchet.md", + "authenticated deniable key agreement": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/authenticated deniable key agreement.md", + "authenticated deniable key agreement basato su Diffie-Hellman": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/authenticated deniable key agreement basato su Diffie-Hellman.md", + "X3DH": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/X3DH.md", + "Signal": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Signal.md", + "Signal protocol": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Signal protocol.md", + "Signal AEAD": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Signal AEAD.md", + "Diffie-Hellman ratchet": "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Diffie-Hellman ratchet.md", + "sender spoofing": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/sender spoofing.md", + "sender policy framework": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/sender policy framework.md", + "secure mime": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/secure mime.md", + "record DNS": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/record DNS.md", + "posta elettronica certificata": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/posta elettronica certificata.md", + "phishing": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/phishing.md", + "malware attachment": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/malware attachment.md", + "email": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/email.md", + "domainkeys identified mail": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/domainkeys identified mail.md", + "domain-based message authentication reporting and conformance": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/domain-based message authentication reporting and conformance.md", + "brand indicators for message identification": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/brand indicators for message identification.md", + "authenticated received chain": "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/authenticated received chain.md", + "transport level security": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/transport level security.md", + "transport level security handshake": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/transport level security handshake.md", + "secure shell": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/secure shell.md", + "secure file transfer protocol": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/secure file transfer protocol.md", + "pre-master secret": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/pre-master secret.md", + "mobile shell": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/mobile shell.md", + "encrypted client hello": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/encrypted client hello.md", + "downgrade attack": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/downgrade attack.md", + "datagram transport level security": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/datagram transport level security.md", + "coppia di chiavi effimere": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/coppia di chiavi effimere.md", + "Wireguard": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/Wireguard.md", + "MACSec": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/MACSec.md", + "Internet Key Exchange": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/Internet Key Exchange.md", + "IPSec": "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/IPSec.md", + "trust-on-first-use": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust-on-first-use.md", + "trust anchor": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust anchor.md", + "token": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/token.md", + "tipo di certificato web": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/tipo di certificato web.md", + "stale attack": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/stale attack.md", + "self-signed certificate": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/self-signed certificate.md", + "scope": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/scope.md", + "root certification authority": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/root certification authority.md", + "revoca certificato web": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/revoca certificato web.md", + "public key infrastructure": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/public key infrastructure.md", + "privacy enhanced mail": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/privacy enhanced mail.md", + "periodo di validità": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/periodo di validità.md", + "out-of-band verification": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/out-of-band verification.md", + "online certificate status protocol": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/online certificate status protocol.md", + "online certificate status protocol stapling": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/online certificate status protocol stapling.md", + "issuer": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/issuer.md", + "intermediate certification authority": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/intermediate certification authority.md", + "fiducia transitiva": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/fiducia transitiva.md", + "extended validation": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/extended validation.md", + "domain validation": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/domain validation.md", + "distribuzione chiavi pubbliche": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/distribuzione chiavi pubbliche.md", + "distinguished name": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/distinguished name.md", + "distinguished encoding rules": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/distinguished encoding rules.md", + "denial-of-service attack": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/denial-of-service attack.md", + "delegated verification": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/delegated verification.md", + "creazione di un certificato web": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/creazione di un certificato web.md", + "claim": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/claim.md", + "certificato web": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificato web.md", + "certification authority": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certification authority.md", + "certificate transparency": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificate transparency.md", + "certificate sign request": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificate sign request.md", + "certificate revocation list": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificate revocation list.md", + "audience": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/audience.md", + "attestato": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/attestato.md", + "abstract syntax notation one": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/abstract syntax notation one.md", + "PKCS7 Cryptographic message syntax": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/PKCS7 Cryptographic message syntax.md", + "PKCS12": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/PKCS12.md", + "OpenPGP web of trust": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/OpenPGP web of trust.md", + "JOSE": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/JOSE.md", + "COSE": "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/COSE.md", + "time-based one-time password": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/time-based one-time password.md", + "secure remote password": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/secure remote password.md", + "password-based authenticated key exchange": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/password-based authenticated key exchange.md", + "one-time credential": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/one-time credential.md", + "oblivious": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious.md", + "oblivious pseudo-random function": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious pseudo-random function.md", + "hash-based one-time password": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/hash-based one-time password.md", + "digest authentication": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/digest authentication.md", + "channel binding": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/channel binding.md", + "challenge-response": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response.md", + "challenge-response based on time": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on time.md", + "challenge-response based on public key": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on public key.md", + "challenge-response based on password": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on password.md", + "challenge-response based on common knowledge": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on common knowledge.md", + "blinded": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/blinded.md", + "bearer token": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/bearer token.md", + "basic authentication": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/basic authentication.md", + "augmented password-based key exchange": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/augmented password-based key exchange.md", + "Untitled": "7 - Introduction to quantum information processing/1 - Concetti base/Untitled.md", + "SCRAM authentication": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/SCRAM authentication.md", + "OPAQUE": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/OPAQUE.md", + "Initiative for Open Authentication": "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/Initiative for Open Authentication.md", + "scrypt": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/scrypt.md", + "salt": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/salt.md", + "rainbow table": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/rainbow table.md", + "personal identification number": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/personal identification number.md", + "pepper": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/pepper.md", + "password": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/password.md", + "invalidazione": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/invalidazione.md", + "funzione di password hashing": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing.md", + "funzione di password hashing adattiva": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing adattiva.md", + "enumerazione": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/enumerazione.md", + "data breach": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/data breach.md", + "bcrypt": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/bcrypt.md", + "attacco interattivo": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco interattivo.md", + "attacco di pre-computazione": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco di pre-computazione.md", + "archiviazione delle credenziali": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/archiviazione delle credenziali.md", + "PBKDF2": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/PBKDF2.md", + "PBKDF1": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/PBKDF1.md", + "Argon2": "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/Argon2.md", + "utente": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/utente.md", + "user agent": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/user agent.md", + "servizio di autenticazione": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/servizio di autenticazione.md", + "identificazione": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/identificazione.md", + "database delle credenziali": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/database delle credenziali.md", + "credenziale": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/credenziale.md", + "autorizzazione di utente": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/autorizzazione di utente.md", + "autenticazione di identità": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/autenticazione di identità.md", + "access control model": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/access control model.md", + "access control list": "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/access control list.md", + "weak existential unforgeability": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/weak existential unforgeability.md", + "weak existential message forgery": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/weak existential message forgery.md", + "strong existential unforgeability": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/strong existential unforgeability.md", + "strong existential message forgery": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/strong existential message forgery.md", + "selective message forgery": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/selective message forgery.md", + "random-message attacker": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/random-message attacker.md", + "no-message attacker": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/no-message attacker.md", + "known-message attacker": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/known-message attacker.md", + "contesto di firma digitale": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/contesto di firma digitale.md", + "chosen-message attacker": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/chosen-message attacker.md", + "any message forgery": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/any message forgery.md", + "adaptively-chosen-message attacker": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/adaptively-chosen-message attacker.md", + "zero-knowledge proof": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/zero-knowledge proof.md", + "witness": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/witness.md", + "trasformazione di Fiat-Shamir": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/trasformazione di Fiat-Shamir.md", + "transcript": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/transcript.md", + "signature scheme": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/signature scheme.md", + "signature forgery": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/signature forgery.md", + "protocollo di identificazione di Schnorr non-interattivo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/protocollo di identificazione di Schnorr non-interattivo.md", + "protocollo di identificazione di Schnorr interattivo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/protocollo di identificazione di Schnorr interattivo.md", + "problema di firma digitale": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/problema di firma digitale.md", + "probabilistic signature scheme": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/probabilistic signature scheme.md", + "full domain hash": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/full domain hash.md", + "firma digitale": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/firma digitale.md", + "fiducia": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/fiducia.md", + "elliptic curve digital signature algorithm": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/elliptic curve digital signature algorithm.md", + "digital signature algorithm": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/digital signature algorithm.md", + "Schnorr signature scheme": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/Schnorr signature scheme.md", + "Schnorr deterministic signature scheme": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/Schnorr deterministic signature scheme.md", + "PKCS1 v21": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/PKCS1 v21.md", + "Edwards-curve digital signature algorithm": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/Edwards-curve digital signature algorithm.md", + "trapdoor one-way function": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/trapdoor one-way function.md", + "textbook RSA": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/textbook RSA.md", + "scambio di chiave simmetrica basato sull'incapsulamento": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/scambio di chiave simmetrica basato sull'incapsulamento.md", + "problema RSA": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/problema RSA.md", + "million message attack": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/million message attack.md", + "mask generation function": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/mask generation function.md", + "key encapsulation": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/key encapsulation.md", + "integrated encryption scheme": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/integrated encryption scheme.md", + "funzione toziente": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/funzione toziente.md", + "elliptic curve integrated encryption scheme": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/elliptic curve integrated encryption scheme.md", + "crittografia ibrida": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/crittografia ibrida.md", + "crittografia asimmetrica": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/crittografia asimmetrica.md", + "congettura della fattorizzazione": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/congettura della fattorizzazione.md", + "RSA": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/RSA.md", + "PKCS1 v20": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/PKCS1 v20.md", + "PKCS1 v15": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/PKCS1 v15.md", + "scambio di chiave": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave.md", + "scambio di chiave mutualmente autenticato": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave mutualmente autenticato.md", + "scambio di chiave basato su Diffie-Hellman": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave basato su Diffie-Hellman.md", + "scambio di chiave autenticato": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave autenticato.md", + "scambio di chiave autenticato lato server": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave autenticato lato server.md", + "scambio di chiave autenticato basato su Diffie-Hellman": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave autenticato basato su Diffie-Hellman.md", + "scambio di chiave Diffie-Hellman": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave Diffie-Hellman.md", + "scambio di chiave Diffie-Hellman su curva ellittica": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave Diffie-Hellman su curva ellittica.md", + "one-way function": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/one-way function.md", + "numero primo sicuro": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/numero primo sicuro.md", + "logaritmo discreto su gruppi ciclici primi sugli interi": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/logaritmo discreto su gruppi ciclici primi sugli interi.md", + "logaritmo discreto su curva ellittica": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/logaritmo discreto su curva ellittica.md", + "key generation algorithm": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/key generation algorithm.md", + "coppia di chiavi": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/coppia di chiavi.md", + "congettura Diffie-Hellman": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman.md", + "congettura Diffie-Hellman decisionale": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman decisionale.md", + "congettura Diffie-Hellman computazionale": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman computazionale.md", + "congettura Diffie-Hellman classica": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman classica.md", + "chiave pubblica": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave pubblica.md", + "chiave privata": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave privata.md", + "attacco del sottogruppo debole": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/attacco del sottogruppo debole.md", + "attacco del punto non valido": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/attacco del punto non valido.md", + "Sep256k1": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/Sep256k1.md", + "P-521": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/P-521.md", + "P-256": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/P-256.md", + "Curve448": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/Curve448.md", + "Curve25519": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/Curve25519.md", + "somma di punti su curve ellittiche": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/somma di punti su curve ellittiche.md", + "punto a infinito nelle curve ellittiche": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/punto a infinito nelle curve ellittiche.md", + "gruppo ciclico su curva ellittica": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/gruppo ciclico su curva ellittica.md", + "equazione di Weierstrass": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/equazione di Weierstrass.md", + "curva ellittica": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/curva ellittica.md", + "sottogruppo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/sottogruppo.md", + "ordine di un gruppo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/ordine di un gruppo.md", + "gruppo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo.md", + "gruppo moltiplicativo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo moltiplicativo.md", + "gruppo infinito": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo infinito.md", + "gruppo finito": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo finito.md", + "gruppo di Galois": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo di Galois.md", + "gruppo ciclico": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo ciclico.md", + "gruppo ciclico di modulo primo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo ciclico di modulo primo.md", + "gruppo additivo": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo additivo.md", + "generatore di un gruppo ciclico": "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/generatore di un gruppo ciclico.md", + "struttura dati autenticata": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/struttura dati autenticata.md", + "partial disclosure": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/partial disclosure.md", + "merkle hash tree": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/merkle hash tree.md", + "format-preserving encryption": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/format-preserving encryption.md", + "pseudo-random key": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/pseudo-random key.md", + "key derivation": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/key derivation.md", + "key derivation function": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/key derivation function.md", + "input key material": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/input key material.md", + "extraction di una key derivation function": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/extraction di una key derivation function.md", + "expansion di una key derivation function": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/expansion di una key derivation function.md", + "contestualizzazione di una key derivation function": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/contestualizzazione di una key derivation function.md", + "chiave derivata": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/chiave derivata.md", + "aggiunta di entropia in una key derivation function": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/aggiunta di entropia in una key derivation function.md", + "HKDF": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/HKDF.md", + "HKDF-Extract": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/HKDF-Extract.md", + "HKDF-Expand": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/HKDF-Expand.md", + "funzione contestualizzata": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/funzione contestualizzata.md", + "extendible output function": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/extendible output function.md", + "cSHAKE": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/cSHAKE.md", + "TupleHash": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/TupleHash.md", + "ParallelHash": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/ParallelHash.md", + "Keccak message authentication code": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/Keccak message authentication code.md", + "operation framework": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework.md", + "operation framework probabilistico": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework probabilistico.md", + "operation framework probabilistico per la crittografia simmetrica": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework probabilistico per la crittografia simmetrica.md", + "operation framework deterministico": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework deterministico.md", + "operation framework deterministico per crittografia simmetrica a flusso con nonce": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework deterministico per crittografia simmetrica a flusso con nonce.md", + "operation framework deterministico per crittografia simmetrica a blocchi con initialization vector": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework deterministico per crittografia simmetrica a blocchi con initialization vector.md", + "deterministic authenticated encryption with associated data": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/deterministic authenticated encryption with associated data.md", + "authenticated encryption with associated data": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/authenticated encryption with associated data.md", + "wide-block encryption": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/wide-block encryption.md", + "tweakable operation mode di un cifrario a blocchi": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/tweakable operation mode di un cifrario a blocchi.md", + "tweak": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/tweak.md", + "super pseudo-random permutation": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/super pseudo-random permutation.md", + "narrow-block encryption": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/narrow-block encryption.md", + "disk encryption": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/disk encryption.md", + "disk encryption protocol": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/disk encryption protocol.md", + "ciphertext stealing": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/ciphertext stealing.md", + "XOR-encrypt-XOR with ciphertext stealing": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/XOR-encrypt-XOR with ciphertext stealing.md", + "XOR-encrypt-XOR operation mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/XOR-encrypt-XOR operation mode.canvas", + "HCTR2": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/HCTR2.md", + "Adiantum": "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/Adiantum.md", + "operation mode autenticato di un cifrario a blocchi": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/operation mode autenticato di un cifrario a blocchi.md", + "generic composition": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/generic composition.md", + "encrypt-then-MAC": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/encrypt-then-MAC.md", + "encrypt-and-MAC": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/encrypt-and-MAC.md", + "crittografia simmetrica autenticata": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/crittografia simmetrica autenticata.md", + "counter with cipher block chaining message authentication code": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/counter with cipher block chaining message authentication code.md", + "MAC-then-encrypt": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/MAC-then-encrypt.md", + "Galois-Counter mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/Galois-Counter mode.md", + "Chacha20-Poly1305": "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/Chacha20-Poly1305.md", + "replay attack": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/replay attack.md", + "reflection attack": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/reflection attack.md", + "message authentication code": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/message authentication code.md", + "message authentication code system": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/message authentication code system.md", + "freshness": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/freshness.md", + "autenticazione": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/autenticazione.md", + "SipHash": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/SipHash.md", + "HMAC": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/HMAC.md", + "GMAC": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/GMAC.md", + "CMAC": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/CMAC.md", + "CBC-MAC": "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/CBC-MAC.canvas", + "verifica crittografica dell'integrità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/verifica crittografica dell'integrità.md", + "second pre-image collision": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/second pre-image collision.md", + "second pre-image collision experiment": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/second pre-image collision experiment.md", + "length extension attack": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/length extension attack.md", + "hashing con più input": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/hashing con più input.md", + "funzione di hashing crittografico": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/funzione di hashing crittografico.md", + "first pre-image collision": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/first pre-image collision.md", + "first pre-image collision experiment": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/first pre-image collision experiment.md", + "collision": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/collision.md", + "collision experiment": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/collision experiment.md", + "attacco del compleanno": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/attacco del compleanno.md", + "SHAttered": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHAttered.md", + "SHA512": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA512.md", + "SHA384": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA384.md", + "SHA3": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3.md", + "SHA3-512": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-512.md", + "SHA3-384": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-384.md", + "SHA3-256": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-256.md", + "SHA3-224": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-224.md", + "SHA256": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA256.md", + "SHA224": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA224.md", + "SHA2": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA2.md", + "MD5": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/MD5.md", + "SHA1": "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA1.md", + "verifica dell'integrità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/verifica dell'integrità.md", + "hash": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/hash.md", + "funzione di hashing": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/funzione di hashing.md", + "cyclic redundancy check": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/cyclic redundancy check.md", + "checksum": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/checksum.md", + "bit di parità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/bit di parità.md", + "uniforme": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/uniforme.md", + "synthetic initialization vector": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/synthetic initialization vector.md", + "synthetic initialization vector operation mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/synthetic initialization vector operation mode.canvas", + "riutilizzo di nonce": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/riutilizzo di nonce.md", + "riutilizzo di chiavi": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/riutilizzo di chiavi.md", + "riutilizzo di chiavi nell'one-time pad": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/riutilizzo di chiavi nell'one-time pad.md", + "re-keying": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/re-keying.md", + "rc": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/rc.md", + "random permutation": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/random permutation.md", + "principi di Kerckhoffs": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/principi di Kerckhoffs.md", + "padding": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/padding.md", + "padding oracle attack": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/padding oracle attack.md", + "output feedback operation mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/output feedback operation mode.canvas", + "operation mode di un cifrario a blocchi": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/operation mode di un cifrario a blocchi.md", + "one-time pad": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/one-time pad.md", + "nonce": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/nonce.md", + "nonce → initialization vector": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/nonce → initialization vector.md", + "non-uniforme": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/non-uniforme.md", + "manipolazione dell'initialization vector": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/manipolazione dell'initialization vector.md", + "malleabilità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/malleabilità.md", + "malleabilità dell'one-time pad": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/malleabilità dell'one-time pad.md", + "malleabilità dei cifrari a flusso": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/malleabilità dei cifrari a flusso.md", + "limite di dati cifrabili": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/limite di dati cifrabili.md", + "keystream": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/keystream.md", + "keyed family of pseudo-random permutations": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/keyed family of pseudo-random permutations.md", + "key recovery": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/key recovery.md", + "initialization vector": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/initialization vector.md", + "famiglia di funzioni pseudo-casuali": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/famiglia di funzioni pseudo-casuali.md", + "esperimento IND-DCPA": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/esperimento IND-DCPA.md", + "esperimento IND-CPA": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/esperimento IND-CPA.md", + "esperimento IND-COA": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/esperimento IND-COA.md", + "electronic codebook operation mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/electronic codebook operation mode.canvas", + "distinguibilità degli errori di padding": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/distinguibilità degli errori di padding.md", + "deterministic pseudo-random bitstring generator": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/deterministic pseudo-random bitstring generator.md", + "determinismo dell'initialization vector": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/determinismo dell'initialization vector.md", + "crittografia simmetrica moderna": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/crittografia simmetrica moderna.md", + "counter operation mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/counter operation mode.canvas", + "cipher feedback operation mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cipher feedback operation mode.canvas", + "cipher block chaining operation mode": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cipher block chaining operation mode.canvas", + "cifrario a flusso": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cifrario a flusso.md", + "cifrario a blocchi": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cifrario a blocchi.md", + "chiave simmetrica": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/chiave simmetrica.md", + "bruteforce": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/bruteforce.md", + "blocco": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/blocco.md", + "attacco contro initialization vector prevedibili": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/attacco contro initialization vector prevedibili.md", + "XOR": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/XOR.md", + "XChaCha20": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/XChaCha20.md", + "PKCS7": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/PKCS7.md", + "EFAIL": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/EFAIL.md", + "DES": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/DES.md", + "ChaCha20": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/ChaCha20.md", + "AES": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/AES.md", + "A51": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/A51.md", + "3DES": "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/3DES.md", + "crittografia classica": "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/crittografia classica.md", + "cifrario di Cesare": "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/cifrario di Cesare.md", + "cifrario a trasposizione": "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/cifrario a trasposizione.md", + "cifrario a sostituzione": "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/cifrario a sostituzione.md", + "tipo di avversario": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/tipo di avversario.md", + "testo": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/testo.md", + "plaintext": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/plaintext.md", + "non-adaptive chosen-ciphertext attacker": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/non-adaptive chosen-ciphertext attacker.md", + "known-plaintext attacker": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/known-plaintext attacker.md", + "irrational attacker": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/irrational attacker.md", + "integrità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/integrità.md", + "indistinguibilità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/indistinguibilità.md", + "funzione di decifratura": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/funzione di decifratura.md", + "funzione di cifratura": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/funzione di cifratura.md", + "confidenzialità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/confidenzialità.md", + "comunicazione simmetrica": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/comunicazione simmetrica.md", + "ciphertext": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/ciphertext.md", + "ciphertext-only attacker": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/ciphertext-only attacker.md", + "chosen-plaintext attacker": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/chosen-plaintext attacker.md", + "blob": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/blob.md", + "autenticità": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/autenticità.md", + "adaptive chosen-ciphertext attacker": "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/adaptive chosen-ciphertext attacker.md", + "update dello stato di un pseudo-random number generator": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/update dello stato di un pseudo-random number generator.md", + "true random number generator": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/true random number generator.md", + "stato di un pseudo-random number generator": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/stato di un pseudo-random number generator.md", + "sorgente di rumore": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/sorgente di rumore.md", + "random fork": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/random fork.md", + "random clone": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/random clone.md", + "pseudo-random number generator": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/pseudo-random number generator.md", + "mixing": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/mixing.md", + "imprevedibilità": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/imprevedibilità.md", + "hardware random number generator": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/hardware random number generator.md", + "generatore": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/generatore.md", + "forward secrecy": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/forward secrecy.md", + "flusso": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/flusso.md", + "entropy pool": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/entropy pool.md", + "entropia": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/entropia.md", + "distribuzione uniforme": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/distribuzione uniforme.md", + "dev-urandom": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/dev-urandom.md", + "dev-random": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/dev-random.md", + "casualità crittografica": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/casualità crittografica.md", + "backward secrecy": "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/backward secrecy.md", + "violazione": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/violazione.md", + "utilizzo": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/utilizzo.md", + "squadra": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/squadra.md", + "squadra rossa": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/squadra rossa.md", + "squadra blu": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/squadra blu.md", + "sfidante": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/sfidante.md", + "risorsa": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/risorsa.md", + "mitigazione": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/mitigazione.md", + "livello di sicurezza": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/livello di sicurezza.md", + "garanzia perfetta": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/garanzia perfetta.md", + "garanzia computazionale": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/garanzia computazionale.md", + "esperimento": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/esperimento.md", + "crittologia": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/crittologia.md", + "crittografia": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/crittografia.md", + "crittoanalisi": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/crittoanalisi.md", + "costo": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/costo.md", + "avversario": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/avversario.md", + "attacco": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/attacco.md", + "agente": "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/agente.md", + "vincolo": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/vincolo.md", + "risultato": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/risultato.md", + "protocollo": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/protocollo.md", + "procedura": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/procedura.md", + "problema": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/problema.md", + "primitiva": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/primitiva.md", + "interfaccia": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/interfaccia.md", + "garanzia": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/garanzia.md", + "funzione": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione.md", + "funzione ideale": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione ideale.md", + "dominio": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/dominio.md", + "contesto": "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/contesto.md", + "stato base di un qbit": "7 - Introduction to quantum information processing/1 - Concetti base/stato base di un qbit.md", + "qbit": "7 - Introduction to quantum information processing/1 - Concetti base/qbit.md", + "prodotto tensoriale": "7 - Introduction to quantum information processing/1 - Concetti base/prodotto tensoriale.md", + "ket": "7 - Introduction to quantum information processing/1 - Concetti base/ket.md", + "bit": "7 - Introduction to quantum information processing/1 - Concetti base/bit.md", + "★ glossario": "7 - High performance computing/★ glossario.md", + "★ indice": "7 - Big data analytics/★ indice.canvas", + "README": "7 - Big data analytics/A1 - MongoDB/README.md", + "lista": "0 - Generale/lista.md", + "insieme": "0 - Generale/insieme.md", + "cardinalità di un insieme": "0 - Generale/cardinalità di un insieme.md", + "back edge": "0 - Generale/back edge.md" + }, + "paths": [ + "0 - Generale/back edge.md", + "0 - Generale/cardinalità di un insieme.md", + "0 - Generale/insieme.md", + "0 - Generale/lista.md", + "7 - Big data analytics/A1 - MongoDB/README.md", + "7 - Big data analytics/A2 - Big data/README.md", + "7 - Big data analytics/A3 - Neo4J/README.md", + "7 - Big data analytics/B1 - Data analytics/README.md", + "7 - Big data analytics/B2 - Text analytics/README.md", + "7 - Big data analytics/B3 - Graph analytics/README.md", + "7 - Big data analytics/★ indice.canvas", + "7 - High performance computing/★ glossario.md", + "7 - Introduction to quantum information processing/1 - Concetti base/Untitled.md", + "7 - Introduction to quantum information processing/1 - Concetti base/bit.md", + "7 - Introduction to quantum information processing/1 - Concetti base/ket.md", + "7 - Introduction to quantum information processing/1 - Concetti base/prodotto tensoriale.md", + "7 - Introduction to quantum information processing/1 - Concetti base/qbit.md", + "7 - Introduction to quantum information processing/1 - Concetti base/stato base di un qbit.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/contesto.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/dominio.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione ideale.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/garanzia.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/interfaccia.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/parametro.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/primitiva.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/problema.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/procedura.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/protocollo.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/risultato.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/sicurezza.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/soluzione.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/vincolo.md", + "8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/★ mappa concettuale.canvas", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/agente.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/attacco.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/avversario.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/costo.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/crittoanalisi.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/crittografia.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/crittologia.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/debolezza.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/esperimento.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/garanzia computazionale.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/garanzia perfetta.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/livello di sicurezza.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/mitigazione.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/risorsa.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/sfidante.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/spazio.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/squadra blu.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/squadra rossa.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/squadra.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/tempo.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/utilizzo.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/violazione.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/vulnerabilità.md", + "8 - Crittografia applicata/1 - Concetti/2 - Dimostrare la validità delle soluzioni/★ mappa concettuale.canvas", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/backward secrecy.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/casualità crittografica.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/dev-random.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/dev-urandom.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/distribuzione uniforme.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/entropia.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/entropy pool.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/flusso.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/forward secrecy.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/generatore.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/hardware random number generator.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/imprevedibilità.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/mixing.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/pseudo-random number generator.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/random clone.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/random fork.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/sorgente di rumore.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/stato di un pseudo-random number generator.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/true random number generator.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/update dello stato di un pseudo-random number generator.md", + "8 - Crittografia applicata/1 - Concetti/3 - Casualità ed entropia/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/adaptive chosen-ciphertext attacker.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/autenticità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/blob.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/chosen-plaintext attacker.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/ciphertext-only attacker.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/ciphertext.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/comunicazione simmetrica.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/confidenzialità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/funzione di cifratura.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/funzione di decifratura.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/indistinguibilità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/integrità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/irrational attacker.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/known-plaintext attacker.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/non-adaptive chosen-ciphertext attacker.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/plaintext.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/testo.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/tipo di avversario.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/1 - Modello/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/cifrario a sostituzione.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/cifrario a trasposizione.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/cifrario di Cesare.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/crittografia classica.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/2 - Confidenzialità/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/3DES.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/A51.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/AES.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/ChaCha20.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/DES.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/EFAIL.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/PKCS7.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/XChaCha20.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/XOR.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/attacco contro initialization vector prevedibili.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/blocco.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/bruteforce.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/chiave simmetrica.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cifrario a blocchi.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cifrario a flusso.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cipher block chaining operation mode.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cipher block chaining operation mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cipher feedback operation mode.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/cipher feedback operation mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/counter operation mode.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/counter operation mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/crittografia simmetrica moderna.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/determinismo dell'initialization vector.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/deterministic pseudo-random bitstring generator.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/distinguibilità degli errori di padding.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/electronic codebook operation mode.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/electronic codebook operation mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/esperimento IND-COA.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/esperimento IND-CPA.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/esperimento IND-DCPA.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/famiglia di funzioni pseudo-casuali.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/initialization vector.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/key recovery.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/keyed family of pseudo-random permutations.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/keystream.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/limite di dati cifrabili.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/malleabilità dei cifrari a flusso.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/malleabilità dell'one-time pad.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/malleabilità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/manipolazione dell'initialization vector.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/non-uniforme.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/nonce → initialization vector.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/nonce.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/one-time pad.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/operation mode di un cifrario a blocchi.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/output feedback operation mode.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/output feedback operation mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/padding oracle attack.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/padding.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/principi di Kerckhoffs.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/random permutation.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/rc.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/re-keying.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/riutilizzo di chiavi nell'one-time pad.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/riutilizzo di chiavi.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/riutilizzo di nonce.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/synthetic initialization vector operation mode.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/synthetic initialization vector operation mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/synthetic initialization vector.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/uniforme.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/bit di parità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/checksum.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/cyclic redundancy check.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/funzione di hashing.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/hash.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/verifica dell'integrità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Integrità semplice/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/MD5.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA1.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA2.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA224.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA256.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-224.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-256.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-384.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3-512.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA3.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA384.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHA512.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/SHAttered.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/attacco del compleanno.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/collision experiment.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/collision.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/first pre-image collision experiment.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/first pre-image collision.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/funzione di hashing crittografico.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/hashing con più input.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/length extension attack.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/second pre-image collision experiment.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/second pre-image collision.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/verifica crittografica dell'integrità.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/4 - Integrità crittografica/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/CBC-MAC.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/CBC-MAC.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/CMAC.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/GMAC.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/HMAC.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/SipHash.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/autenticazione.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/freshness.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/message authentication code system.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/message authentication code.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/reflection attack.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/replay attack.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/5 - Autenticazione/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/Chacha20-Poly1305.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/Galois-Counter mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/MAC-then-encrypt.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/counter with cipher block chaining message authentication code.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/crittografia simmetrica autenticata.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/encrypt-and-MAC.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/encrypt-then-MAC.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/generic composition.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/operation mode autenticato di un cifrario a blocchi.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/6 - Indistinguibilità autenticata/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/Adiantum.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/HCTR2.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/XOR-encrypt-XOR operation mode.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/XOR-encrypt-XOR operation mode.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/XOR-encrypt-XOR with ciphertext stealing.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/ciphertext stealing.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/disk encryption protocol.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/disk encryption.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/narrow-block encryption.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/super pseudo-random permutation.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/tweak.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/tweakable operation mode di un cifrario a blocchi.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/wide-block encryption.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/1 - Indistinguibilità su disco/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/authenticated encryption with associated data.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/deterministic authenticated encryption with associated data.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework deterministico per crittografia simmetrica a blocchi con initialization vector.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework deterministico per crittografia simmetrica a flusso con nonce.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework deterministico.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework probabilistico per la crittografia simmetrica.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework probabilistico.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/operation framework.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/2 - Operation framework/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/Keccak message authentication code.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/ParallelHash.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/TupleHash.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/cSHAKE.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/extendible output function.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/funzione contestualizzata.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/3 - Contestualizzazione ed estendibilità/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/HKDF-Expand.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/HKDF-Extract.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/HKDF.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/aggiunta di entropia in una key derivation function.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/chiave derivata.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/contestualizzazione di una key derivation function.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/expansion di una key derivation function.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/extraction di una key derivation function.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/input key material.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/key derivation function.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/key derivation.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/pseudo-random key.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/4 - Derivazione di chiave/★ mappa concettuale.canvas", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/format-preserving encryption.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/merkle hash tree.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/partial disclosure.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/struttura dati autenticata.md", + "8 - Crittografia applicata/2 - Comunicazione simmetrica/7 - Implementazioni particolari/5 - Strutture dati particolari/★ mappa concettuale.canvas", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/generatore di un gruppo ciclico.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo additivo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo ciclico di modulo primo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo ciclico.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo di Galois.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo finito.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo infinito.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo moltiplicativo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/gruppo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/ordine di un gruppo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/sottogruppo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/1 - Teoria dei gruppi/★ mappa concettuale.canvas", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/curva ellittica.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/equazione di Weierstrass.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/gruppo ciclico su curva ellittica.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/punto a infinito nelle curve ellittiche.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/somma di punti su curve ellittiche.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/2 - Teoria delle curve ellittiche/★ mappa concettuale.canvas", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/Curve25519.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/Curve448.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/P-256.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/P-521.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/Sep256k1.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/attacco del punto non valido.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/attacco del sottogruppo debole.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave privata.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/chiave pubblica.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman classica.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman computazionale.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman decisionale.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/congettura Diffie-Hellman.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/coppia di chiavi.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/key generation algorithm.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/logaritmo discreto su curva ellittica.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/logaritmo discreto su gruppi ciclici primi sugli interi.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/numero primo sicuro.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/one-way function.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave Diffie-Hellman su curva ellittica.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave Diffie-Hellman.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave autenticato basato su Diffie-Hellman.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave autenticato lato server.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave autenticato.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave basato su Diffie-Hellman.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave mutualmente autenticato.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/scambio di chiave.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/3 - Scambio di chiave/★ mappa concettuale.canvas", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/PKCS1 v15.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/PKCS1 v20.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/RSA.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/congettura della fattorizzazione.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/crittografia asimmetrica.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/crittografia ibrida.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/elliptic curve integrated encryption scheme.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/funzione toziente.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/integrated encryption scheme.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/key encapsulation.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/mask generation function.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/million message attack.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/problema RSA.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/scambio di chiave simmetrica basato sull'incapsulamento.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/textbook RSA.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/trapdoor one-way function.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/4 - Crittografia asimmetrica/★ mappa concettuale.canvas", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/Edwards-curve digital signature algorithm.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/PKCS1 v21.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/Schnorr deterministic signature scheme.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/Schnorr signature scheme.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/digital signature algorithm.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/elliptic curve digital signature algorithm.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/fiducia.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/firma digitale.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/full domain hash.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/probabilistic signature scheme.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/problema di firma digitale.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/protocollo di identificazione di Schnorr interattivo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/protocollo di identificazione di Schnorr non-interattivo.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/signature forgery.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/signature scheme.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/transcript.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/trasformazione di Fiat-Shamir.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/witness.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/zero-knowledge proof.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/5 - Firma digitale/★ mappa concettuale.canvas", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/adaptively-chosen-message attacker.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/any message forgery.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/chosen-message attacker.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/contesto di firma digitale.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/known-message attacker.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/no-message attacker.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/random-message attacker.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/selective message forgery.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/strong existential message forgery.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/strong existential unforgeability.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/weak existential message forgery.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/weak existential unforgeability.md", + "8 - Crittografia applicata/3 - Comunicazione asimmetrica/6 - Falsificazione di firme/★ mappa concettuale.canvas", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/access control list.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/access control model.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/autenticazione di identità.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/autorizzazione di utente.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/credenziale.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/database delle credenziali.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/identificazione.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/servizio di autenticazione.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/user agent.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/utente.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/1 - Modello/★ mappa concettuale.canvas", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/Argon2.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/PBKDF1.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/PBKDF2.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/archiviazione delle credenziali.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco di pre-computazione.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/attacco interattivo.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/bcrypt.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/data breach.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/enumerazione.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing adattiva.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/funzione di password hashing.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/invalidazione.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/password.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/pepper.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/personal identification number.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/rainbow table.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/salt.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/scrypt.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/2 - Protezione dai data breach/★ mappa concettuale.canvas", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/Initiative for Open Authentication.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/OPAQUE.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/SCRAM authentication.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/Untitled.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/augmented password-based key exchange.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/basic authentication.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/bearer token.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/blinded.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on common knowledge.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on password.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on public key.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response based on time.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/challenge-response.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/channel binding.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/digest authentication.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/hash-based one-time password.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious pseudo-random function.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/oblivious.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/one-time credential.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/password-based authenticated key exchange.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/secure remote password.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/time-based one-time password.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/3 - Autenticazione di identità/★ mappa concettuale.canvas", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/COSE.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/JOSE.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/OpenPGP web of trust.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/PKCS12.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/PKCS7 Cryptographic message syntax.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/abstract syntax notation one.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/attestato.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/audience.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificate revocation list.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificate sign request.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificate transparency.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certification authority.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/certificato web.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/claim.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/creazione di un certificato web.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/delegated verification.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/denial-of-service attack.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/distinguished encoding rules.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/distinguished name.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/distribuzione chiavi pubbliche.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/domain validation.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/extended validation.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/fiducia transitiva.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/intermediate certification authority.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/issuer.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/online certificate status protocol stapling.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/online certificate status protocol.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/out-of-band verification.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/periodo di validità.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/privacy enhanced mail.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/public key infrastructure.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/revoca certificato web.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/root certification authority.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/scope.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/self-signed certificate.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/stale attack.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/tipo di certificato web.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/token.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust anchor.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/trust-on-first-use.md", + "8 - Crittografia applicata/4 - Controllo dell'accesso/4 - Distribuzione di chiavi/★ mappa concettuale.canvas", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/IPSec.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/Internet Key Exchange.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/MACSec.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/Wireguard.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/coppia di chiavi effimere.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/datagram transport level security.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/downgrade attack.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/encrypted client hello.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/mobile shell.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/pre-master secret.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/secure file transfer protocol.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/secure shell.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/transport level security handshake.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/transport level security.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/1 - TCP-IP/★ mappa concettuale.canvas", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/authenticated received chain.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/brand indicators for message identification.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/domain-based message authentication reporting and conformance.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/domainkeys identified mail.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/email.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/malware attachment.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/phishing.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/posta elettronica certificata.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/record DNS.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/secure mime.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/sender policy framework.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/sender spoofing.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/2 - Email/★ mappa concettuale.canvas", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Diffie-Hellman ratchet.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Signal AEAD.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Signal protocol.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/Signal.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/X3DH.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/authenticated deniable key agreement basato su Diffie-Hellman.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/authenticated deniable key agreement.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/double ratchet.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/identity information.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/identity key.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/invio X3DH.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/negabilità.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/non-ripudiabilità.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/one-time pre-key.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/registrazione X3DH.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/ricezione X3DH.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/symmetric ratchet.md", + "8 - Crittografia applicata/5 - Protocolli sicuri/3 - Signal/★ mappa concettuale.canvas", + "8 - Metodologie di sviluppo software/Artefatti/burndown chart.md", + "8 - Metodologie di sviluppo software/Artefatti/increment.md", + "8 - Metodologie di sviluppo software/Artefatti/product backlog.md", + "8 - Metodologie di sviluppo software/Artefatti/user story.md", + "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di design.md", + "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di implementazione.md", + "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di manutenzione.md", + "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di rilascio.md", + "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di specifica.md", + "8 - Metodologie di sviluppo software/Fasi di sviluppo/fase di testing.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello basato sui componenti.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello code-and-fix.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello di sviluppo.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello evolutivo.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello incrementale.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello iterativo.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello trasformativo.md", + "8 - Metodologie di sviluppo software/Modelli di sviluppo/modello waterfall.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/agile unified process.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/agile.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/backlog grooming.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/daily scrum.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/epic.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/feature-driven development.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/processo di sviluppo software.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/scrum of scrum.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/scrum.md", + "8 - Metodologie di sviluppo software/Processi di sviluppo/unified process.md", + "8 - Metodologie di sviluppo software/Ruoli professionali/product owner.md", + "8 - Metodologie di sviluppo software/Ruoli professionali/scrum master.md", + "8 - Metodologie di sviluppo software/Svolgimento esercizi/5 - Project Estimation.md", + "8 - Metodologie di sviluppo software/Tecniche di sviluppo/pair programming.md", + "8 - Metodologie di sviluppo software/Tecniche di sviluppo/refactoring.md", + "8 - Metodologie di sviluppo software/Tecniche di sviluppo/sprint planning.md", + "8 - Metodologie di sviluppo software/Tecniche di sviluppo/sprint retrospective.md", + "8 - Metodologie di sviluppo software/Tecniche di sviluppo/sprint review.md", + "8 - Metodologie di sviluppo software/Tecniche di sviluppo/test-driven development.md", + "8 - Metodologie di sviluppo software/Tecniche di sviluppo/timeboxing.md", + "8 - Metodologie di sviluppo software/Testing/acceptance test.md", + "8 - Metodologie di sviluppo software/Testing/integration test.md", + "8 - Metodologie di sviluppo software/Testing/performance test.md", + "8 - Metodologie di sviluppo software/Testing/regression test.md", + "8 - Metodologie di sviluppo software/Testing/test coverage.md", + "8 - Metodologie di sviluppo software/Testing/test.md", + "8 - Metodologie di sviluppo software/Testing/unit test.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/attrattore.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/centro.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/condizione iniziale.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/convezione di Rayleigh-Bénard.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/criticità.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/effetto Marangoni.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/instabilità.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/legge Gutenberg-Richter.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/legge di potenza.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/metastabilità.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/numero critico di Rayleigh.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/numero di Rayleigh.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/potenziale.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/punto critico.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/repulsore.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/seconda legge della termodinamica.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/sella.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/sistema dinamico.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/sistema dissipativo.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/sistema lineare.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/spazio di fase.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/stabilità.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/traiettoria.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/veicolo di Braitenberg.md", + "8 - Sistemi complessi/1 - Sistemi dinamici/★ sistemi dinamici.canvas", + "8 - Sistemi complessi/2 - Sistemi complessi/Landau's phenomenological theory.md", + "8 - Sistemi complessi/2 - Sistemi complessi/adattabilità.md", + "8 - Sistemi complessi/2 - Sistemi complessi/apertura all'ambiente.md", + "8 - Sistemi complessi/2 - Sistemi complessi/auto-organizzazione.md", + "8 - Sistemi complessi/2 - Sistemi complessi/caos.md", + "8 - Sistemi complessi/2 - Sistemi complessi/criticità auto-organizzata.md", + "8 - Sistemi complessi/2 - Sistemi complessi/dense periodic orbits.md", + "8 - Sistemi complessi/2 - Sistemi complessi/emergenza.md", + "8 - Sistemi complessi/2 - Sistemi complessi/fallimento a cascata.md", + "8 - Sistemi complessi/2 - Sistemi complessi/feedback loop.md", + "8 - Sistemi complessi/2 - Sistemi complessi/non-linearità.md", + "8 - Sistemi complessi/2 - Sistemi complessi/ordine spontaneo.md", + "8 - Sistemi complessi/2 - Sistemi complessi/parte di un sistema complesso.md", + "8 - Sistemi complessi/2 - Sistemi complessi/pila di sabbia abeliana.md", + "8 - Sistemi complessi/2 - Sistemi complessi/rete.md", + "8 - Sistemi complessi/2 - Sistemi complessi/sistema complesso.md", + "8 - Sistemi complessi/2 - Sistemi complessi/topological mixing.md", + "8 - Sistemi complessi/2 - Sistemi complessi/★ sistemi complessi.canvas", + "8 - Sistemi complessi/3 - Automi cellulari/Evoloop.md", + "8 - Sistemi complessi/3 - Automi cellulari/Game of Life.md", + "8 - Sistemi complessi/3 - Automi cellulari/Langton's Loops.md", + "8 - Sistemi complessi/3 - Automi cellulari/Perrier's Loops.md", + "8 - Sistemi complessi/3 - Automi cellulari/Wireworld.md", + "8 - Sistemi complessi/3 - Automi cellulari/anisotropia.md", + "8 - Sistemi complessi/3 - Automi cellulari/auto-replicazione.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare asincrono.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare booleano.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo spaziale.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare continuo.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare invertibile.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare legale.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare partizionante.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare probabilistico.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare totalistico.md", + "8 - Sistemi complessi/3 - Automi cellulari/automa cellulare.md", + "8 - Sistemi complessi/3 - Automi cellulari/breeder.md", + "8 - Sistemi complessi/3 - Automi cellulari/cella di un automa cellulare.md", + "8 - Sistemi complessi/3 - Automi cellulari/classe 1 di Wolfram.md", + "8 - Sistemi complessi/3 - Automi cellulari/classe 2 di Wolfram.md", + "8 - Sistemi complessi/3 - Automi cellulari/classe 3 di Wolfram.md", + "8 - Sistemi complessi/3 - Automi cellulari/classe 4 di Wolfram.md", + "8 - Sistemi complessi/3 - Automi cellulari/classe di complessità di Wolfram.md", + "8 - Sistemi complessi/3 - Automi cellulari/giardino dell'Eden.md", + "8 - Sistemi complessi/3 - Automi cellulari/gun.md", + "8 - Sistemi complessi/3 - Automi cellulari/lambda di Langton.md", + "8 - Sistemi complessi/3 - Automi cellulari/metodo reticolare di Boltzmann.md", + "8 - Sistemi complessi/3 - Automi cellulari/modello Axelrod.md", + "8 - Sistemi complessi/3 - Automi cellulari/modello FHP con particelle velocità zero.md", + "8 - Sistemi complessi/3 - Automi cellulari/modello FHP.md", + "8 - Sistemi complessi/3 - Automi cellulari/modello HPP.md", + "8 - Sistemi complessi/3 - Automi cellulari/modello Nowak-Lewenstein.md", + "8 - Sistemi complessi/3 - Automi cellulari/modello Sakoda.md", + "8 - Sistemi complessi/3 - Automi cellulari/modello Schelling.md", + "8 - Sistemi complessi/3 - Automi cellulari/oscillator.md", + "8 - Sistemi complessi/3 - Automi cellulari/puffer.md", + "8 - Sistemi complessi/3 - Automi cellulari/regola 110 di Wolfram.md", + "8 - Sistemi complessi/3 - Automi cellulari/regola di Wolfram.md", + "8 - Sistemi complessi/3 - Automi cellulari/regola di transizione.md", + "8 - Sistemi complessi/3 - Automi cellulari/reticolo FCHC.md", + "8 - Sistemi complessi/3 - Automi cellulari/reticolo di un automa cellulare.md", + "8 - Sistemi complessi/3 - Automi cellulari/sincronizzazione del plotone di esecuzione.md", + "8 - Sistemi complessi/3 - Automi cellulari/spaceship.md", + "8 - Sistemi complessi/3 - Automi cellulari/stato di una cella.md", + "8 - Sistemi complessi/3 - Automi cellulari/universalità.md", + "8 - Sistemi complessi/3 - Automi cellulari/vicinato di Moore.md", + "8 - Sistemi complessi/3 - Automi cellulari/vicinato di un automa cellulare.md", + "8 - Sistemi complessi/3 - Automi cellulari/vicinato di von Neumann.md", + "8 - Sistemi complessi/3 - Automi cellulari/★ automi cellulari.canvas", + "8 - Sistemi complessi/4 - Grafi/arco di accoppiamento.md", + "8 - Sistemi complessi/4 - Grafi/aspetto categorico di un grafo multi-livello.md", + "8 - Sistemi complessi/4 - Grafi/aspetto di un grafo multi-livello.md", + "8 - Sistemi complessi/4 - Grafi/aspetto ordinale di un grafo multi-livello.md", + "8 - Sistemi complessi/4 - Grafi/bellezza.md", + "8 - Sistemi complessi/4 - Grafi/circuito euleriano.md", + "8 - Sistemi complessi/4 - Grafi/coefficiente di clustering in una rete multiplex.md", + "8 - Sistemi complessi/4 - Grafi/coefficiente di clustering.md", + "8 - Sistemi complessi/4 - Grafi/diametro di un grafo.md", + "8 - Sistemi complessi/4 - Grafi/distanza tra nodi di un grafo.md", + "8 - Sistemi complessi/4 - Grafi/eccentricità di un nodo.md", + "8 - Sistemi complessi/4 - Grafi/grafo a nodi colorati.md", + "8 - Sistemi complessi/4 - Grafi/grafo a reticolo.md", + "8 - Sistemi complessi/4 - Grafi/grafo ad archi colorati.md", + "8 - Sistemi complessi/4 - Grafi/grafo casuale.md", + "8 - Sistemi complessi/4 - Grafi/grafo completo.md", + "8 - Sistemi complessi/4 - Grafi/grafo connesso.md", + "8 - Sistemi complessi/4 - Grafi/grafo denso.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello a livelli disgiunti.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello allineato ai nodi.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello categorico.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello diagonale a livelli accoppiati.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello diagonale.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello interconnesso.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello k-partito.md", + "8 - Sistemi complessi/4 - Grafi/grafo multi-livello.md", + "8 - Sistemi complessi/4 - Grafi/grafo scale-free.md", + "8 - Sistemi complessi/4 - Grafi/grafo small-world.md", + "8 - Sistemi complessi/4 - Grafi/grafo sparso.md", + "8 - Sistemi complessi/4 - Grafi/grafo.md", + "8 - Sistemi complessi/4 - Grafi/interdipendenza.md", + "8 - Sistemi complessi/4 - Grafi/iperarco.md", + "8 - Sistemi complessi/4 - Grafi/ipergrafo.md", + "8 - Sistemi complessi/4 - Grafi/iperrete.md", + "8 - Sistemi complessi/4 - Grafi/lunghezza caratteristica di un grafo.md", + "8 - Sistemi complessi/4 - Grafi/multislice modularity.md", + "8 - Sistemi complessi/4 - Grafi/percolation threshold.md", + "8 - Sistemi complessi/4 - Grafi/percorso euleriano.md", + "8 - Sistemi complessi/4 - Grafi/raggio di un grafo.md", + "8 - Sistemi complessi/4 - Grafi/rete interdipendente.md", + "8 - Sistemi complessi/4 - Grafi/rete multiplex correlata.md", + "8 - Sistemi complessi/4 - Grafi/rete multiplex straightforward.md", + "8 - Sistemi complessi/4 - Grafi/rete multiplex.md", + "8 - Sistemi complessi/4 - Grafi/★ grafi multi-livello.canvas", + "8 - Sistemi complessi/4 - Grafi/★ grafi.canvas", + "8 - Sistemi complessi/4 - Grafi/★ ipergrafi.canvas", + "8 - Sistemi complessi/5 - Origine della vita/catalizzatore.md", + "8 - Sistemi complessi/5 - Origine della vita/gene duplication.md", + "8 - Sistemi complessi/5 - Origine della vita/insieme auto-catalitico riflessivo generato da cibo.md", + "8 - Sistemi complessi/5 - Origine della vita/insieme auto-replicante.md", + "8 - Sistemi complessi/5 - Origine della vita/modello di Kauffman gene-RBN.md", + "8 - Sistemi complessi/5 - Origine della vita/modello di Kauffman per gli insiemi auto-replicanti.md", + "8 - Sistemi complessi/5 - Origine della vita/substrato.md", + "8 - Sistemi complessi/5 - Origine della vita/★ geni come random boolean network.canvas", + "8 - Sistemi complessi/5 - Origine della vita/★ insiemi auto-replicanti.canvas", + "8 - Sistemi complessi/6 - Robustezza/canalizzazione.md", + "8 - Sistemi complessi/6 - Robustezza/cromosoma.md", + "8 - Sistemi complessi/6 - Robustezza/crossover.md", + "8 - Sistemi complessi/6 - Robustezza/degenerazione.md", + "8 - Sistemi complessi/6 - Robustezza/evolvibilità.md", + "8 - Sistemi complessi/6 - Robustezza/fenotipo.md", + "8 - Sistemi complessi/6 - Robustezza/fitness.md", + "8 - Sistemi complessi/6 - Robustezza/gene.md", + "8 - Sistemi complessi/6 - Robustezza/genoma.md", + "8 - Sistemi complessi/6 - Robustezza/genotipo.md", + "8 - Sistemi complessi/6 - Robustezza/individuo.md", + "8 - Sistemi complessi/6 - Robustezza/modello duplication-degeneracy-complementation.md", + "8 - Sistemi complessi/6 - Robustezza/nucleotide.md", + "8 - Sistemi complessi/6 - Robustezza/omeostasi.md", + "8 - Sistemi complessi/6 - Robustezza/paradosso dell'evolvibilità.md", + "8 - Sistemi complessi/6 - Robustezza/plasticità fenotipica.md", + "8 - Sistemi complessi/6 - Robustezza/pleiotropia.md", + "8 - Sistemi complessi/6 - Robustezza/point mutation.md", + "8 - Sistemi complessi/6 - Robustezza/popolazione.md", + "8 - Sistemi complessi/6 - Robustezza/proteoma.md", + "8 - Sistemi complessi/6 - Robustezza/rete neutrale.md", + "8 - Sistemi complessi/6 - Robustezza/rete regolatrice di geni.md", + "8 - Sistemi complessi/6 - Robustezza/ridondanza.md", + "8 - Sistemi complessi/6 - Robustezza/robustezza biologica.md", + "8 - Sistemi complessi/6 - Robustezza/robustezza differenziale.md", + "8 - Sistemi complessi/6 - Robustezza/robustezza distribuita.md", + "8 - Sistemi complessi/6 - Robustezza/robustezza locale.md", + "8 - Sistemi complessi/6 - Robustezza/robustezza.md", + "8 - Sistemi complessi/6 - Robustezza/tolleranza altamente ottimizzata.md", + "8 - Sistemi complessi/6 - Robustezza/tratto.md", + "8 - Sistemi complessi/6 - Robustezza/versatilità.md", + "8 - Sistemi complessi/6 - Robustezza/★ robustezza.canvas", + "8 - Sistemi complessi/6 - Robustezza/🞵 parentesi anti-eugenica.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/STRIDE.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/analisi dei rischi.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/asset.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/attaccante.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/bug.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/debolezza.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/difetto.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/distinguisher.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/exploit.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/funzionalità.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/input illecito.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/input invalido.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/input lecito.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/input valido.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di prevenzione.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di reazione.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di rilevazione.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/meccanismo di sicurezza.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/minaccia.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/politica di sicurezza.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/prestazioni.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/principio del minimo privilegio.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/principio del silenzio.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/rischio.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/sicurezza informatica.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/sicurezza.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/superficie di attacco.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/vettore di attacco.md", + "8 - Sviluppo di software sicuro/1 - Terminologia/vulnerabilità.md", + "9 - Algoritmi distribuiti/1 - Problemi/algoritmo corretto.md", + "9 - Algoritmi distribuiti/1 - Problemi/algoritmo.md", + "9 - Algoritmi distribuiti/1 - Problemi/certificato per un'istanza.md", + "9 - Algoritmi distribuiti/1 - Problemi/circuito di un grafo.md", + "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-completi.md", + "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP-difficili.md", + "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi NP.md", + "9 - Algoritmi distribuiti/1 - Problemi/classe di problemi P.md", + "9 - Algoritmi distribuiti/1 - Problemi/costo computazionale.md", + "9 - Algoritmi distribuiti/1 - Problemi/criterio di costo logaritmico.md", + "9 - Algoritmi distribuiti/1 - Problemi/criterio di costo uniforme.md", + "9 - Algoritmi distribuiti/1 - Problemi/criterio di costo.md", + "9 - Algoritmi distribuiti/1 - Problemi/dimensione dell'input.md", + "9 - Algoritmi distribuiti/1 - Problemi/funzione costo.md", + "9 - Algoritmi distribuiti/1 - Problemi/funzione guadagno.md", + "9 - Algoritmi distribuiti/1 - Problemi/funzione obiettivo.md", + "9 - Algoritmi distribuiti/1 - Problemi/insieme delle istanze.md", + "9 - Algoritmi distribuiti/1 - Problemi/insieme delle soluzioni.md", + "9 - Algoritmi distribuiti/1 - Problemi/istanza negativa.md", + "9 - Algoritmi distribuiti/1 - Problemi/istanza positiva.md", + "9 - Algoritmi distribuiti/1 - Problemi/istanza.md", + "9 - Algoritmi distribuiti/1 - Problemi/logaritmo in base 2.md", + "9 - Algoritmi distribuiti/1 - Problemi/notazione O-grande.md", + "9 - Algoritmi distribuiti/1 - Problemi/notazione asintotica.md", + "9 - Algoritmi distribuiti/1 - Problemi/notazione o-piccola.md", + "9 - Algoritmi distribuiti/1 - Problemi/notazione Θ-grande.md", + "9 - Algoritmi distribuiti/1 - Problemi/notazione Ω-grande.md", + "9 - Algoritmi distribuiti/1 - Problemi/notazione ω-piccola.md", + "9 - Algoritmi distribuiti/1 - Problemi/ottimizzazione → decisionale.md", + "9 - Algoritmi distribuiti/1 - Problemi/parametro.md", + "9 - Algoritmi distribuiti/1 - Problemi/polinomiale.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema P e NP.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema computazionale.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema decisionale.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema del commesso viaggiatore.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema di massimizzazione.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema di minimizzazione.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema di ottimizzazione.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema di ricerca.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema intrattabile.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema irrisolvibile.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema presumibilmente intrattabile.md", + "9 - Algoritmi distribuiti/1 - Problemi/problema trattabile.md", + "9 - Algoritmi distribuiti/1 - Problemi/ricerca di ciclo hamiltoniano.md", + "9 - Algoritmi distribuiti/1 - Problemi/riduzione di Karp.md", + "9 - Algoritmi distribuiti/1 - Problemi/satisfability.md", + "9 - Algoritmi distribuiti/1 - Problemi/soluzione ottima.md", + "9 - Algoritmi distribuiti/1 - Problemi/soluzione.md", + "9 - Algoritmi distribuiti/1 - Problemi/spazio.md", + "9 - Algoritmi distribuiti/1 - Problemi/struttura dati.md", + "9 - Algoritmi distribuiti/1 - Problemi/tempo.md", + "9 - Algoritmi distribuiti/1 - Problemi/tesi di Church-Turing.md", + "9 - Algoritmi distribuiti/1 - Problemi/verifica.md", + "9 - Algoritmi distribuiti/1 - Problemi/★ problemi.canvas", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/algoritmo di approssimazione.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/approssimazione del problema del commesso viaggiatore.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/fattore di approssimazione.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/minimum perfect matching.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/proprietà triangolare per il costo degli archi.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round per vertex cover problem.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/relax and round.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/soluzione approssimata.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover problem.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/vertex cover.md", + "9 - Algoritmi distribuiti/2 - Algoritmi di approssimazione/★ algoritmi di approssimazione.canvas", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma del ritardo di comunicazione.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/assioma dell'orientamento locale.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/azione.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comportamento.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/comunicazione.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/costo computazionale distribuito.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo asincrono.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/criterio di costo sincrono totale.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/entità.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento esterno.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento interno.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento personale.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/evento.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/messaggio.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni del modello.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di affidabilità.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di comunicazione.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni di tempo.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/restrizioni topologiche.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/rete di comunicazione.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito asincrono.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito simmetrico.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema distribuito.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema parallelo.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/1 - Concetti/sistema sequenziale.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/broadcast.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v1.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v2.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/flooding broadcast v3.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/2 - Broadcast/wake-up problem.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree tramite traversal.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/costruzione di uno spanning tree.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v1.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/protocollo shout v2.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/3 - Spanning tree/spanning tree.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/1 - Concetti/leader election.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/anello.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election all-the-way su anello.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election as-far-as-it-can su anello.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election controlled-distance su anello.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/2 - Su anello/leader election su anello.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/FloodMax.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/4 - Leader election/3 - Su grafo generico/leader election su grafo generico.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/broadcast routing.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing table.md", + "9 - Algoritmi distribuiti/3 - Computazione distribuita/5 - Routing/routing.md" + ] +} \ No newline at end of file