Wifi 802-11

In this document, we will discuss the actual Wi-Fi standard that we can find in the market. The initial slides consist of extensive lists of Wi-Fi technologies and their uses, such as Bluetooth network, Wi-Fi network, long-range Wi-Fi, and 3G network. However, they are currently out of service. Service Sets Basic Service Set There are various divisions within the service set, each of which provides certain types of service. In the basic service, we have things like SSID, which is the service set identifier that is broadcasted in the beacon as described in Mac Wifi. ...

August 28, 2024 · Reading Time: 2 minutes ·  By Xuanqiang Angelo Huang

Block Ciphers

Utilizzano blocchi per cifra invece che stream generators. $n$ bits in input and $m$ bits in output generally a key is expanded into multiple keys, one for each rounds, and applied to a round function that iterates on the $m$. DES 56 bit 3DES 56*3 bit di chiave AES che può andare a 128, 196 o 256 Solitamente i stream ciphers studiati in OTP and Stream Ciphers sono più veloci. Cipher Speed MB/sec RC4 126 Salsa20 643 Sosemanuk 727 AES 13 3DES 109 Data Encryption Standard - 1974 da IBM su commissione di NSA (Horst Feistel designed Lucifer at IBM in early 1970) - 1976 DES is federal standard with key-len 56 bits and block-len 64 bits. in quel periodo era solamente fatta dalla intelligence, non c’era bisogno di comunicazioni per il pubblico in quel periodo. ...

June 2, 2024 · Reading Time: 10 minutes ·  By Xuanqiang Angelo Huang

Key Exchange protocols

Metodi di key exchange Trusted Key parties (sono come Certificate authorities studiati in Sicurezza delle reti) Merkle Puzzles DH protocol Trusted Third parties Squared Key problem Un problema abbastanza ovvio è che per storare le chiavi di tutti c’è una necessità $O(n^{2})$ on $O(n)$ users Se c’è un trusted key parties il numero delle chiavi si riduce di molto, ritorna ad essere lineare! Protocols Toy Exchange protocol TTP = Trusted Third party (simile a quanto poi si avrà in Asymmetric Cryptography) ...

June 2, 2024 · Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

Memory Corruption

First of all, we need to have a strong understanding of how a program allocates memory during its execution. See Memoria, Memoria virtuale and other notes about Nomi e Scope, Gestione della memoria. The thing you have to remember is that Every new function call allocates a new block, with his local variables. How the calling parameters are stored in the stack How the heap is allocated (common heap algos are in Gestione della memoria) How the stack grows (and how it can overflow it, and overwriting important data). Common attack vectors We use C, as it is the easiest way to show how this could be attacked. ...

June 2, 2024 · Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

The Tor protocol

Some notes Mix-based systems Created in 1981 by David Chaum. Very similar to the previous one, in practice, in the end, it acts as a proxy but not only does it take and receive, but it also mixes together the packets it has received from the sources, applying its key. Disadvantage: The public-private mixing system is very slow. For this reason, a network of nodes is established, each having a symmetric key, making it much faster. ...

June 2, 2024 · Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

User authentication

The user authentication is one of the most important parts for computer security, because every security policy starts with authentication. This authentication should be easy to use, if not users will not use this. So this should be a good compromise. Parts of authentication security security: Registration Authentication check Recovery These three are the main parts of security. Some challenges in user authentication Intermediate principals A part that we will not cover are the intermediate principals which attach the mean of transmission or intermediate devices used in the transmission. E.g. a key-logger in the client system is enough to compromise the security of the authentication. ...

April 11, 2024 · Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

Algebra Logica

Strutture algebriche Differenza matematica e informatica Una osservazione per quanto riguarda la logica intuizionista è che sta a metà fra matematica e informatica perché la dimostrazione intuizionista possiede in sé un algoritmo e una struttura di dati. Infatti di solito l’informatico scrive senza fare la dimostrazione dell’algoritmo mentre il matematico scrive la dimostrazione senza fare l’algoritmo (inoltre può definire degli enti ed oggetti che non siano rappresentabili come dati in quanto possono essere infiniti. ...

April 8, 2024 · Reading Time: 4 minutes ·  By Xuanqiang Angelo Huang

Introduzione a Logica

Lo scopo della logica è Correttezza del ragionamento, anche verificata attraverso algoritmi predittivi. Si svilupperanno linguaggi logici I metodi per la veridicità di una sentenza. Possibilità e metodi del ragionamento logico Completezza e non-deducibilità di alcuni ragionamenti Necessità di completezza delle ipotesi: più ipotesi = ragionamento valido? Completezza delle tesi, impossibile. Una necessità della logica è Meta-logica: La logica si deve cercare di basare su certe basi, spesso queste non sono certe, però danno un certo grado di sicurezza → Se la base è solida allora tutto il ragionamento di una parte è giusta ...

April 8, 2024 · Reading Time: 2 minutes ·  By Xuanqiang Angelo Huang

Introduzione algoritmi

0 Introduzione 0.1 L’algoritmo Vogliamo cercare di creare algoritmi, ovvero soluzioni a problemi computazionali che non dipendono dal linguaggio di programmazione. 0.1.1 Definizione Procedura per risolvere un problema in un numero finito di passi (quindi un algoritmo deve finire) 0.1.2 Origine della parola Il nome “algoritmo” deriva da un nome di un matematico persiano dell 800 d.c. Muhammad ibn Musa al-Khwarizmi, che latinizzato diventa algorithmi, quindi i latini hanno creato la parola! ...

April 8, 2024 · Reading Time: 4 minutes ·  By Xuanqiang Angelo Huang

Livello OS

9.1 Caratteristiche Il sistema operativo non ha sempre avuto una interfaccia grafica. 9.1.1 In generale Principalmente è un gestore delle risorse come il disco, la CPU, l’output e l’input. È qualcosa che si infrappone come interfaccia fra le applicazioni e quello che è presente sotto. 9.1.2 Ambiti principali 9.2 Paginazione Al programma non interessa se effettivamente è presente in memoria fisica questa quantità di memoria, si di solito basta sempre. ...

April 8, 2024 · Reading Time: 4 minutes ·  By Xuanqiang Angelo Huang