En Maude-modell for sikker asynkron kommunikasjon i π-kalkylen

Størrelse: px
Begynne med side:

Download "En Maude-modell for sikker asynkron kommunikasjon i π-kalkylen"

Transkript

1 En Maude-modell for sikker asynkron kommunikasjon i π-kalkylen Henrik Dæhli og Joakim Hjertås 23. juni 2005

2 Plan Problemstilling Bakgrunn Maude sikkerhet π-kalkylen og varianter av denne en Maude-modell av asynkron π-kalkyle Arbeid anvendt asynkron π-kalkyle vår Maude-modell av kalkylen analyse og bruk av vår Maude-modell Konklusjon 1

3 Problemstilling Hvordan kan Maude brukes som analyseverktøy for sikkerhetsegenskaper ved asynkron kommunikasjon i π-kalkylen? 2

4 Maude Deklarativt programmeringsspråk Basert på omskrivningslogikk ligninger: ubetingede: eq t = u. betingede: ceq t = u if c. regler: ubetingede: rl [l] : t -> u. betingede: crl [l] : t -> u if c. Spesifikasjoner: funksjoner, sorter, subsorter, moduler Omskrivninger og søk: rew, frew, search 3

5 Sikkerhet Sikkerhetstjenester autentisering tilgangskontroll integritet konfidensialitet ikke-fornektelse Sikkerhetsmekanismer hashing kryptografi - symmetrisk - asymmetrisk digitale signaturer 4

6 Typer angrep Verste-tilfelle analyse («worst-case») Vårt fokus er logiske angrep feil bruk av sikkerhetsmekanismer protokollfeil Essensielt: er ønsket sikkerhet oppnådd antatt at sikkerhetsmekanismene er sikre? Ser ikke på angrep rettet mot selve sikkerhetsmekanismene sikkerhet ved «tåkelegging» («security by obscurity»), antar derfor at protokollen er kjent 5

7 π-kalkylen Formell kalkyle for modellering av: parallellitet kommunikasjon mobilitet Uendelig mengde navn benyttes både for verdier og kanaler, typisk brukes a, b, c... Høynivå modellering av prosesser. 6

8 Definering av π-kalkylen Syntaks Strukturell kongruens Operasjonell semantikk 7

9 Eksempel Output: Input: Parallell: ax. P a(y). Q ax. P a(y). Q Handling: ax. P a(y). Q τ P Q{x/y} Restriksjon: (Vx) P 8

10 Varianter av π-kalkylen Asynkron π-kalkyle Anvendt π-kalkyle («applied π-calculus») 9

11 Asynkron π-kalkyle Modellering av asynkron kommunikasjon Kan oppnås ved å legge ekstra krav på uttrykkene i vanlig π-kalkyle (subkalkyle) 10

12 Anvendt π-kalkyle Utvidelse av π-kalkylen Underliggende likhetslogikk signatur sorter likheter Muliggjør sending av verdier laget ved applisering av funksjoner Funksjoner passer godt til modellering av sikkerhetsmekanismer 11

13 Eksempel: anvendt π-kalkyle Hashing h(data) Ingen ligninger a h(t). P Symmetrisk kryptografi enc(data, nøkkel) dec(chiffer, nøkkel) dec ( enc(d, k), k ) = d (Vk) ( a enc(d, k). P a(y). b dec(y, k). Q ) 12

14 Maude-modell av asynkron π-kalkyle Thati, Sen og Martí-Oliet har laget en Maude-modell for denne varianten av π-kalkylen. bygge opp π-kalkyle-uttrykk og gjøre omskrivinger på disse søke gjennom mulige omskrivinger innfører et eksekveringsmiljø Kalkyleregel: P 0 Q 0,..., P n Q n P Q Maude-regel: crl [l] : P -> Q if P 0 -> Q 0 /\... /\ P n -> Q n 13

15 Rekapitulasjon Vi har sett på: asynkron π-kalkyle anvendt π-kalkyle en Maude-modell av asynkron π-kalkyle Vi ønsker en Maude-modell med elementer både fra asynkron og anvendt π-kalkyle for å benytte denne for analyse av asynkron sikker kommunikasjon. 14

16 Plan To muligheter: utvide Maude-modellen direkte utvide på kalkylenivå og deretter utvide Maude-modellen Vi valgte sistnevnte strategi, med følgende argumenter: fordel å ha en veldefinert kalkyle på tradisjonelt vis mer oversiktlig å utvide Maude-modellen med kalkylen definert først 15

17 Ny kalkyle: anvendt asynkron π-kalkyle En kombinasjon av asynkron og anvendt π-kalkyle: basert på asynkron π-kalkyle utvidet med hovedelementene fra anvendt π-kalkyle laget med tanke på å kunne modelleres i Maude 16

18 Kombinering av kalkylene tilpasse elementene i anvendt til formen på den asynkrone kalkylen tilpassing til å lage Maude-modell av begrenset strukturell kongruens: assoc, comm normalform? verdioverføring, uten «pekere» fjerning av aktive substitusjoner restriksjoner ved output 17

19 Utvidelse av Maude-modellen Miljø liste over mottatte meldinger kunnskapsmengde spesifisering av miljøets handlinger Fra navn til termer spesifisering av underliggede funksjoner og likheter ikke kun en term, men modul og term Sortsystemet Name og Data subsorting 18

20 Analyse i vår modell Miljøet utgjør rollen som angriper Eksplisitt spesifisering av miljøets oppførsel Maude-systemet muliggjør: «tilfeldig» omskriving (rew, frew) søk gjennom mulige tilstander (search) Viktig å kunne spesifisere interessante tilstander ved søk Ofte enklest å finne problemer ved mot-eksempler (dvs. en tilstand som bryter med et sikkerhetskrav) 19

21 Analyseverktøy Spesifisering av tilstander inenvironment inputcheck outputcheck Forslag til metode for reduksjon av tilstandsrommet rt rtl } forsøk viste signifikant forminskning i antall tilstander 20

22 Eksempel: kode for hashing in modell mod EXAMPLE-HASHING is including PI. sort Hash. subsort Hash < Data. op hash : Data -> Hash. var S : Subst. var D : Data. eq namesin(hash(d)) = namesin(d). eq apply S to hash(d) = hash(apply S to D). endm 21

23 Eksempel: eksekvering av hashing Kode: op sendhash : -> TraceTrm. eq sendhash = [ [emptylist +++ emptyset] a < hash( msg) > ]. rew sendhash. Kjøring: rewrite in EXAMPLE-HASHING-ANALYZE : sendhash. rewrites: 3 in 0ms cpu (0ms real) (~ rewrites/second) result TraceTrm: {output(hash( msg) on a, emptyset)}[hash( msg) on a +++ hash( msg)]nil 22

24 Eksempel: symmetrisk kryptografi op enc : Data Name -> Data. op dec : Data Name -> Data. eq dec(enc(d,n),n) = D. ceq [ L +++ kunnskap {}}{ agenten {}}{ N enc(d,n) M ] A = [ L +++ N enc(d,n) D M ] A if ny kunnskap betingelse {}}{ not D in M. 23

25 Eksempel: analyse Kommando: search [ [emptylist +++ emptyset] new [ k] ( x < k > y < enc( msg, k) > ) ] =>* X:TraceTrm such that inenvironment(x:tracetrm, msg). Resultat: {output( k on x, k)} {output(enc( msg, k) on y, emptyset)} [ k on x :: enc( msg, k) on y +++ k msg enc( msg, k)] nil nil 24

26 Konklusjon Problemstilling: Hvordan kan Maude brukes som analyseverktøy for sikkerhetsegenskaper ved asynkron kommunikasjon i π-kalkylen? Oppsummering: Laget ny kombinert kalkyle Modellert denne i Maude Foreslått metoder for analyse i denne Vist bruk av, og analyse i, modellen ved flere eksempler 25

En Maude-modell for sikker asynkron kommunikasjon i π-kalkylen. Masteroppgave. Henrik Dæhli Joakim Hjertås

En Maude-modell for sikker asynkron kommunikasjon i π-kalkylen. Masteroppgave. Henrik Dæhli Joakim Hjertås UNIVERSITETET I OSLO Institutt for informatikk En Maude-modell for sikker asynkron kommunikasjon i π-kalkylen Masteroppgave Henrik Dæhli Joakim Hjertås Mai 2005 iii Sammendrag Vi kombinerer to varianter

Detaljer

INF 3230/4230 Forelesning 9: Omskrivningslogikk

INF 3230/4230 Forelesning 9: Omskrivningslogikk 27.3.2006 INF 3230 9 1 INF 3230/4230 Forelesning 9: Omskrivningslogikk Peter Ølveczky/Ingrid Yu Kapittel 5 og 6 Omskrivningslogikk Parallelle steg Formatering 27.3.2006 INF 3230 9 2 Midterm eksamen Midterm

Detaljer

Modellering av kommuniserende systemer i Maude

Modellering av kommuniserende systemer i Maude Modellering av kommuniserende systemer i Maude Endelig: distribuerte systemer objekt-orientering kommunikasjon synkrone og asynkrone objekter INF3230/4230 Forelesning 11 p. 1/34 Siste nytt fra WRLA 04

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 4. juni 2010 Tid for eksamen: 9.00 12.00 Oppgavesettet

Detaljer

INF 3230: Videregående kurs i formell modellering

INF 3230: Videregående kurs i formell modellering INF 3230: Videregående kurs i formell modellering Peter Ølveczky Universitetet i Oslo 9. mai 2012 Eksekverbar Formell Modellering Modellering: lage en modell av systemdesign før implementasjon Formell:

Detaljer

Bevisbar sikkerhet. Kristian Gjøsteen. 2. mars 2005

Bevisbar sikkerhet. Kristian Gjøsteen. 2. mars 2005 Bevisbar sikkerhet Kristian Gjøsteen 2. mars 2005 Oversikt Hvorfor bevisbar sikkerhet? Hva er bevisbar sikkerhet? Eksempel Hvorfor bevisbar sikkerhet? Mål Vi ønsker å lage kryptosystemer hvis sikkerhet

Detaljer

Emnebeskrivelser for emner tatt ved Universitetet i Oslo. Presentasjon laget av Joakim Hjertås

Emnebeskrivelser for emner tatt ved Universitetet i Oslo. Presentasjon laget av Joakim Hjertås Emnebeskrivelser for emner tatt ved Universitetet i Oslo Presentasjon laget av Joakim Hjertås 10. mars 2005 Innhold INF4110 - Programmeringsspråk 2 INF4200 - Algoritmer og effektivitet 3 INF4330 - Problemløsning

Detaljer

INF 3230/4230 Forelesning 4: Assosiativitet og kommutativitet; operasjonell semantikk

INF 3230/4230 Forelesning 4: Assosiativitet og kommutativitet; operasjonell semantikk 13.2.2006 INF 3230 4 1 INF 3230/4230 Forelesning 4: Assosiativitet og kommutativitet; operasjonell semantikk Peter Ølveczky Forelest av Ingrid C. Yu Innhold: attributter i Maude (særlig assoc og comm)

Detaljer

INF3140 Modeller for parallellitet INF3140/4140: Programanalyse

INF3140 Modeller for parallellitet INF3140/4140: Programanalyse INF3140/4140: Programanalyse Uke 4, side 1. Hvordan sjekke egenskaper ved programmer? Testing eller debugging øker tilliten til programmet ved prøving, men gir ingen garanti for korrekthet Operasjonell

Detaljer

INF Logikk og analysemetoder Forslag til løsning på oppgave fra læreboken

INF Logikk og analysemetoder Forslag til løsning på oppgave fra læreboken INF4170 - Logikk og analysemetoder Forslag til løsning på oppgave 3.2.1 fra læreboken Joakim Hjertås, joakimh@ifi.uio.no 7. mars 2004 Sammendrag Disse sidene kommer med forslag til løsning på oppgave 3.2.1

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 4. april 2008 Tid for eksamen: 9.00 12.00 Oppgavesettet

Detaljer

INF3430. VHDL byggeblokker og testbenker

INF3430. VHDL byggeblokker og testbenker INF3430 VHDL byggeblokker og Innhold Entity/architecture Strukturelle design (nettliste) Generics Configurations Operatorer-Operator prioritet (precedence) Datatyper Bit / IEEE1164 std_ulogic /std_logic

Detaljer

Effektiv eksekvering av spørsmål

Effektiv eksekvering av spørsmål UNIVERSITETET I OSLO Effektiv eksekvering av spørsmål Basert på foiler av Hector Garcia-Molina, Ragnar Normann Oversikt Spørsmålshåndtering Modell for kostnadsberegning Kostnad for basis-operasjoner Implementasjons-algoritmer

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230/4230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 24. mars 2006 Tid for eksamen: 13.30 16.30

Detaljer

Forelesning 2: Kryptografi

Forelesning 2: Kryptografi Universitetet i Oslo IN2120 Informasjonssikkerhet Høst 2018 Workshop-spørsmål med svarforslag Forelesning 2: Kryptografi Spørsmål 1 a. For hvilke informasjonstilstander (lagring, overføring, behandling)

Detaljer

INF3430/4431. VHDL byggeblokker og testbenker

INF3430/4431. VHDL byggeblokker og testbenker INF3430/4431 VHDL byggeblokker og testbenker Entity/architecture Innhold Strukturelle design (nettliste) Generics Configurations Operatorer-Operator prioritet (precedence) Datatyper Bit / IEEE1164 std_ulogic

Detaljer

Tittel: Metode og enhet for randomisering av en hemmelig nøkkel for beskyttelse mot angrep fra supplerende kanaler

Tittel: Metode og enhet for randomisering av en hemmelig nøkkel for beskyttelse mot angrep fra supplerende kanaler V2199NO00 EP 2 99 26 B1 Tittel: Metode og enhet for randomisering av en hemmelig nøkkel for beskyttelse mot angrep fra supplerende kanaler 1 1 2 3 Beskrivelse [0001] Oppfinnelsen omfatter en metode og

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF220 Formell modellering og eksekvering av kommuniserende systemer Eksamensdag: 5. juni 2003 Tid for eksamen: 9.00 15.00 Oppgavesettet

Detaljer

TDT4165 PROGRAMMING LANGUAGES. Exercise 02 Togvogn-skifting

TDT4165 PROGRAMMING LANGUAGES. Exercise 02 Togvogn-skifting TDT4165 PROGRAMMING LANGUAGES Fall 2012 Exercise 02 Togvogn-skifting Problembeskrivelse Du er sjef for å skifte vognene til et tog. Vi antar at hver vogn selv har en motor og at toget ikke har noe lokomotiv.

Detaljer

INF 3232/4232 Forelesning 1: Introduksjon; signaturer; grunntermer

INF 3232/4232 Forelesning 1: Introduksjon; signaturer; grunntermer INF 3232/4232 Forelesning 1: Introduksjon; signaturer; grunntermer Peter Ölveczky Universitetet i Oslo 16. januar 2017 Peter Ölveczky (Universitetet i Oslo) Introduksjon++ 16. januar 2017 1 / 50 Dagens

Detaljer

Effektiv eksekvering av spørsmål

Effektiv eksekvering av spørsmål UNIVERSITETET I OSLO Effektiv eksekvering av spørsmål Spørsmålshåndtering Modell for kostnadsberegning Kostnad for basisoperasjoner Implementasjonsalgoritmer Institutt for Informatikk INF3100 6.4.2016

Detaljer

Forelesning 2: Kryptografi

Forelesning 2: Kryptografi Universitetet i Oslo IN2120 Informasjonssikkerhet Høst 2019 Workshop-oppgaver med løsningsforslag Forelesning 2: Kryptografi Oppgave 1 a. For hvilke informasjonstilstander (lagring, overføring, behandling)

Detaljer

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er Dagens temaer Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture Sekvensiell logikk Flip-flop er Design av sekvensielle kretser Tilstandsdiagram Tellere og registre INF2270 1/19

Detaljer

VEDLEGG 7 SIKKERHET 1. KRAV TIL SIKRING AV DATAFILER VED OVERFØRING TIL/FRA BANKEN

VEDLEGG 7 SIKKERHET 1. KRAV TIL SIKRING AV DATAFILER VED OVERFØRING TIL/FRA BANKEN VEDLEGG 7 SIKKERHET 1. KRAV TIL SIKRING AV DATAFILER VED OVERFØRING TIL/FRA BANKEN 1.1 Sikkerhetskravene bygger på at det til enhver tid skal være et 1 til 1-forhold mellom det som er registrert i Virksomhetens

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230/4230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 8. juni 2006 Tid for eksamen: 9.00 12.00

Detaljer

Innføring i blokkjedeteknologi. Slobodan Petrović, NTNU Gjøvik 14/

Innføring i blokkjedeteknologi. Slobodan Petrović, NTNU Gjøvik 14/ Innføring i blokkjedeteknologi Slobodan Petrović, NTNU Gjøvik 14/09-2018 Innhold Innledning Grunnkomponenter av en blokkjede (blockchain) Kryptografiske hash funksjoner (spredefunksjon, avtrykkfunksjon)

Detaljer

Elementær Kryptografi (Appendix A, Cryptography Basics, Building Secure Software)

Elementær Kryptografi (Appendix A, Cryptography Basics, Building Secure Software) 1 Elementær Kryptografi (Appendix A, Cryptography Basics, Building Secure Software) Mich ael Morten sen m ich aelm @ii.u ib.n o 10/ 10/ 05 INF329 Utviklin g av sikre ap p likasjon er 2 Elementær kryptografi

Detaljer

TDT4165 PROGRAMMING LANGUAGES. Exercise 01 Introduksjon til Oz

TDT4165 PROGRAMMING LANGUAGES. Exercise 01 Introduksjon til Oz TDT4165 PROGRAMMING LANGUAGES Fall 2012 Exercise 01 Introduksjon til Oz Denne øvingen vil gjøre deg kjent med Emacs og Mozart. Du må kunne bruke disse verktøyene for å gjøre resten av øvingene. Mozart

Detaljer

Algoritmer - definisjon

Algoritmer - definisjon Algoritmeanalyse Algoritmer - definisjon En algoritme er en beskrivelse av hvordan man løser et veldefinert problem med en presist formulert sekvens av et endelig antall enkle, utvetydige og tidsbegrensede

Detaljer

Steg 1: Regneoperasjoner på en klokke

Steg 1: Regneoperasjoner på en klokke Diffie-Hellman nøkkelutveksling Skrevet av: Martin Strand Kurs: Python Tema: Tekstbasert, Kryptografi Fag: Matematikk, Programmering Klassetrinn: 8.-10. klasse, Videregående skole Introduksjon Du har tidligere

Detaljer

Dagens tema. Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er. Tellere og registre

Dagens tema. Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er. Tellere og registre Dagens tema Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture Sekvensiell logikk Flip-flop er Tellere og registre Design av sekvensielle kretser (Tilstandsdiagram) 1/19 Sekvensiell

Detaljer

En mengde andre typer som DVD, CD, FPGA, Flash, (E)PROM etc. (Kommer. Hukommelse finnes i mange varianter avhengig av hva de skal brukes til:

En mengde andre typer som DVD, CD, FPGA, Flash, (E)PROM etc. (Kommer. Hukommelse finnes i mange varianter avhengig av hva de skal brukes til: 2 Dagens temaer Dagens 4 Sekvensiell temaer hentes fra kapittel 3 i Computer Organisation and Architecture Design Flip-flop er av sekvensielle kretser Tellere Tilstandsdiagram og registre Sekvensiell Hvis

Detaljer

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning INF2820 Datalingvistikk V2014 13. gang, 10.4.2014 Jan Tore Lønning I dag Introduksjon til semantikk Formell semantikk grunnideene Logikk i NLTK 2 Semantikk Semantikk= studiet av mening Lingvistisk semantikk

Detaljer

Effektiv eksekvering av spørsmål

Effektiv eksekvering av spørsmål UNIVERSITETET I OSLO Effektiv eksekvering av spørsmål Spørsmålshåndtering Modell for kostnadsberegning Kostnad for basisoperasjoner Implementasjonsalgoritmer Institutt for Informatikk INF3100 21.3.2014

Detaljer

INF3340/4431. Tilstandsmaskiner

INF3340/4431. Tilstandsmaskiner INF3340/4431 Tilstandsmaskiner Innhold Tilstandsmaskiner Mealy og Moore maskiner SM tilstandsdiagrammer Syntese av SM diagrammer Tilstandskoding Implementasjon ved bruk av VHDL Eksempler INF3430/4431 -

Detaljer

Betinget eksekvering og logiske tester i shell

Betinget eksekvering og logiske tester i shell Betinget eksekvering og logiske tester i shell Betinget eksekvering *? Programmet utfører operasjon(er) bare hvis en logisk betingelse er sann Bash tilbyr to kontrollstrukturer for å kunne gjøre betinget

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230/4230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 7. juni 2007 Tid for eksamen: 9.00 12.00

Detaljer

Dagens temaer. temaer hentes fra kapittel 3 i Computer Organisation. av sekvensielle kretser. and Architecture. Tilstandsdiagram.

Dagens temaer. temaer hentes fra kapittel 3 i Computer Organisation. av sekvensielle kretser. and Architecture. Tilstandsdiagram. Dagens temaer 1 Dagens Sekvensiell temaer hentes fra kapittel 3 i Computer Organisation and Architecture logikk Flip-flop er Design av sekvensielle kretser Tilstandsdiagram Tellere og registre Sekvensiell

Detaljer

INF3430/4430. Grunnleggende VHDL

INF3430/4430. Grunnleggende VHDL INF3430/4430 Grunnleggende VHDL 26.09.2005 20.57 Agenda Entity/architecture Strukturelle design (netlist) Generics Configurations Operatorer-Operator presedence Datatyper Bit / IEEE1164 Std_ulogic /std_logic

Detaljer

INF3430/4430. Grunnleggende VHDL. 11-Sep-06

INF3430/4430. Grunnleggende VHDL. 11-Sep-06 INF3430/4430 Grunnleggende VHDL 11-Sep-06 Agenda Entity/architecture Strukturelle design (netlist) Generics Configurations Operatorer-Operator presedence Datatyper Bit / IEEE1164 Std_ulogic /std_logic

Detaljer

INF3340/4340. Synkrone design Tilstandsmaskiner

INF3340/4340. Synkrone design Tilstandsmaskiner INF3340/4340 Synkrone design Tilstandsmaskiner 18.09.2007 Agenda Tilstandsmaskiner Mealy og Moore maskiner ASM tilstandsdiagrammer Syntese av ASM diagrammer Tilstandskoding Implementasjon ved bruk av VHDL

Detaljer

Dagens tema. Dagens temaer hentes fra kapittel 3 i læreboken. Repetisjon, design av digitale kretser. Kort om 2-komplements form

Dagens tema. Dagens temaer hentes fra kapittel 3 i læreboken. Repetisjon, design av digitale kretser. Kort om 2-komplements form Dagens tema Dagens temaer hentes fra kapittel 3 i læreboken Repetisjon, design av digitale kretser Kort om 2-komplements form Binær addisjon/subtraksjon Aritmetisk-logisk enhet (ALU) Demo av Digital Works

Detaljer

INF3340. Tilstandsmaskiner

INF3340. Tilstandsmaskiner INF3340 Tilstandsmaskiner Innhold Tilstandsmaskiner Mealy og Moore maskiner ASM tilstandsdiagrammer Syntese av ASM diagrammer Tilstandskoding Implementasjon ved bruk av VHDL Eksempler INF3430-Tilstandsmaskiner

Detaljer

Effektiv eksekvering av spørsmål

Effektiv eksekvering av spørsmål UNIVERSITETET I OSLO Effektiv eksekvering av spørsmål Spørsmålshåndtering Modell for kostnadsberegning Kostnad for basisoperasjoner Implementasjonsalgoritmer Institutt for Informatikk INF3100 23.3.2015

Detaljer

Kunnskapsbasert Engineering (KBE) med Common Lisp

Kunnskapsbasert Engineering (KBE) med Common Lisp Kunnskapsbasert Engineering (KBE) med Common Lisp KBE for semi-automatisk design av leiligheter og bygninger Kristoffer Kvello Selvaag BlueThink Temaer Hva er Kunnskapsbasert Engineering? Lisp Hva bruker

Detaljer

Database security. Kapittel 14 Building Secure Software. Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no

Database security. Kapittel 14 Building Secure Software. Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no Database security Kapittel 14 Building Secure Software Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no Kort introduksjon Database er en organisert samling av data. SQL(Structured Query Language)

Detaljer

INF3170 Logikk. Ukeoppgaver oppgavesett 7

INF3170 Logikk. Ukeoppgaver oppgavesett 7 INF3170 Logikk Ukeoppgaver oppgavesett 7 Unifisering I forelesning 10 så vi på en unifiseringsalgoritme som finner en mest generell unifikator for to termer. I automatisk bevissøk har vi imidlertid bruk

Detaljer

Moderne Funksjonell Programmering i Lisp

Moderne Funksjonell Programmering i Lisp Moderne Funksjonell Programmering i Lisp Lars Tveito 11. mai, 2017 Institutt for Informatikk, University of Oslo Introduksjon Abstract Vi skal utforske programmeringsspråket Clojure, en moderne Lisp-dialekt.

Detaljer

INF1020 Algoritmer og datastrukturer

INF1020 Algoritmer og datastrukturer Dagens plan Hashing Hashtabeller Hash-funksjoner Kollisjonshåndtering Åpen hashing (kap. 5.3) Lukket hashing (kap. 5.4) Rehashing (kap. 5.5) Sortering ut fra en hashing-ide (side 66-68) Bøttesortering

Detaljer

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus Kategorisering av programmeringsspråk? Deklarativ vs. imperativ Lav nivå vs. høy nivå Kompilert vs. tolket

Detaljer

Forelesning 4: Kommunikasjonssikkerhet

Forelesning 4: Kommunikasjonssikkerhet Universitetet i Oslo IN2120 Informasjonssikkerhet Høst 2018 Workshop-spørsmål med svarforslag Forelesning 4: Kommunikasjonssikkerhet Spørsmål 1: Sikkerhetsprotokoller a) Hva er en sikkerhetsprotokoll,

Detaljer

Oppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet.

Oppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet. TDT445 Øving 4 Oppgave a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet. Nøkkel: Supernøkkel: Funksjonell avhengighet: Data i en database som kan unikt identifisere (et sett

Detaljer

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning INF2820 Datalingvistikk V2016 13. gang, 20.4.2016 Jan Tore Lønning I dag Introduksjon til semantikk Formell semantikk grunnideene Logikk i NLTK 2 Semantikk Semantikk= studiet av mening Lingvistisk semantikk

Detaljer

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme, del 2

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme, del 2 INF2810: Funksjonell programmering INF2810: Funksjonell Programmering En Scheme-evaluator i Scheme, del 2 Erik Velldal Universitetet i Oslo 7. mai 2015 Tema Forrige uke SICP 4.1. Structure and interpretation

Detaljer

Hvordan modellere et marked med heterogene produkter?

Hvordan modellere et marked med heterogene produkter? Heterogene produkter eller Differensierte produkter Eksempler: - biler - frokostblandinger - reisetider mange produktvarianter på markedet konsumentene har ulike preferanser: noen liker best den ene varianten,

Detaljer

Notat 2, ST januar 2005

Notat 2, ST januar 2005 Notat 2, ST1301 25. januar 2005 1 Sammensatte uttrykk Vi har sett at funksjoner ikke trenger å bestå av annet enn ett enkeltuttrykk som angir hva funksjonen skal returnere uttrykkt ved de variable funksjonen

Detaljer

BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver uke 33

BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver uke 33 BYFE/EMFE 1000, 2012/2013 Numerikkoppgaver uke 33 Oppgave 2 Litt aritmetikk a) Her har vi skrevet ut det som kommer opp i Octave-vinduet når vi utfører operasjonene. octave-3.2.4.exe:9> 2+2 4 octave-3.2.4.exe:10>

Detaljer

Fra sekvensielt til parallelt

Fra sekvensielt til parallelt Fra sekvensielt til parallelt «Sanntidprogrammering etter 34 år» Øyvind Teig senior utviklingsingeniør Autronica Fire and Security, «a UTC company» Gjesteforelesning på Høgskolen i Sør-Trøndelag (HiST)

Detaljer

Syntax/semantics - I INF 3110/ /29/2005 1

Syntax/semantics - I INF 3110/ /29/2005 1 Syntax/semantics - I Program program execution Compiling/interpretation Syntax Classes of langauges Regular langauges Context-free langauges Scanning/Parsing Meta models INF 3/4-25 8/29/25 Program

Detaljer

SENTRALISERT OG SIKKER DRIFT AV WINDOWS KLIENTER OG TILKNYTTET MASKINVARE

SENTRALISERT OG SIKKER DRIFT AV WINDOWS KLIENTER OG TILKNYTTET MASKINVARE SENTRALISERT OG SIKKER DRIFT AV WINDOWS KLIENTER OG TILKNYTTET MASKINVARE John Bothner & Olav Ligaarden Nasjonal sikkerhetsmyndighet Sikkerhetskonferansen 2017 Oslo Kongressenter 28 29.03.2017 SLIDE 1

Detaljer

Hashing: Håndtering av kollisjoner

Hashing: Håndtering av kollisjoner Hashing: Håndtering av kollisjoner Innsetting av dataelement i hashtabell Algoritme: 1. Bruk en hashfunksjon til å beregne hashverdi basert på dataelementets nøkkelverdi 2. Sett inn dataelementet i hashtabellen

Detaljer

Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) IN 211 Programmeringsspråk

Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) IN 211 Programmeringsspråk Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) Funksjonelle språk (Ghezzi&Jazayeri kap.7 frem til 7.4) Neste uke: ML Ark 1 av 16 Forelesning 16.10.2000 Parameteroverføring

Detaljer

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme, del 2

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme, del 2 INF2810: Funksjonell Programmering En Scheme-evaluator i Scheme, del 2 Erik Velldal Universitetet i Oslo 4. mai 2017 Tema 2 Forrige uke SICP 4.1. Structure and interpretation of computer programs Metacircular

Detaljer

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme, del 2

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme, del 2 INF2810: Funksjonell Programmering En Scheme-evaluator i Scheme, del 2 Erik Velldal Universitetet i Oslo 4. mai 2017 Tema 2 Forrige uke SICP 4.1. Structure and interpretation of computer programs Metacircular

Detaljer

Fra sekvensielt til parallelt

Fra sekvensielt til parallelt Fra sekvensielt til parallelt «Sanntidprogrammering etter 33 år» Øyvind Teig senior utviklingsingeniør Autronica Fire and Security, «a UTC company» Gjesteforelesning på Høgskolen i Sør-Trøndelag (HiST)

Detaljer

INF2220: Forelesning 2. Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7)

INF2220: Forelesning 2. Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) INF2220: Forelesning 2 Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) REPETISJON: BINÆRE SØKETRÆR 2 Binære søketrær 8 4 12 2 7 9 15 6 11 13 16 For enhver node i et binært søketre

Detaljer

MAT 1110: Obligatorisk oppgave 1, V-07: Løsningsforslag

MAT 1110: Obligatorisk oppgave 1, V-07: Løsningsforslag 1 MAT 111: Obligatorisk oppgave 1, V-7: Løsningsforslag Oppgave 1. a) Vi deriverer på vanlig måte: ( e (sinh x) x e x ) = = ex + e x = cosh x, ( e (cosh x) x + e x ) = = ex e x = sinh x Enkel algebra gir

Detaljer

Typer. 1 Type: boolean. 2 Verdimengde: {true, false} 3 Operatorer: NOT, AND, OR... 1/19. Forelesning Forelesning

Typer. 1 Type: boolean. 2 Verdimengde: {true, false} 3 Operatorer: NOT, AND, OR... 1/19. Forelesning Forelesning Dagens tema Typer (Kapittel 3 frem til 331) Innføring i ML (Kapittel 743 & ML-kompendiet) Typer En (data-)type består av: en mengde verdier en mengde operasjoner man kan anvende på disse verdiene Eksempel:

Detaljer

INF3110 Programmeringsspråk. Dagens tema. Typer (Kapittel 3 frem til ) Innføring i ML (Kapittel & ML-kompendiet.) 1/19

INF3110 Programmeringsspråk. Dagens tema. Typer (Kapittel 3 frem til ) Innføring i ML (Kapittel & ML-kompendiet.) 1/19 Dagens tema Typer (Kapittel 3 frem til 3.3.1.) Innføring i ML (Kapittel 7.4.3 & ML-kompendiet.) 1/19 Forelesning 2 27.8.2003 Typer En (data-)type består av: en mengde verdier en mengde operasjoner man

Detaljer

INF2220: Forelesning 2

INF2220: Forelesning 2 INF2220: Forelesning 2 Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) REPETISJON: BINÆRE SØKETRÆR 2 Binære søketrær 8 4 12 2 7 9 15 6 11 13 16 For enhver node i et binært søketre

Detaljer

INF2220: Forelesning 2

INF2220: Forelesning 2 INF2220: Forelesning 2 Mer om analyse av algoritmer Analyse av binære søketrær Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) ANALYSE AV ALGORITMER 2 Analyse av tidsforbruk Hvor

Detaljer

høst en 2002 Forelesning nr 9, m andag 14. ok t ober Sik k erhet Datakom høsten 2002 1

høst en 2002 Forelesning nr 9, m andag 14. ok t ober Sik k erhet Datakom høsten 2002 1 Dat ak om m unik asjon høst en 2002 Forelesning nr 9, m andag 14. ok t ober Sik k erhet Datakom høsten 2002 1 Øvingsoppgaver Oppgave 1 To noder A og B benytter sliding window protokoll med 4 bits sekvensnr.

Detaljer

Forelesning 3: Nøkkelhåndtering og PKI

Forelesning 3: Nøkkelhåndtering og PKI Universitetet i Oslo IN2120 Informasjonssikkerhet Høst 2019 Workshop-oppgaver med løsningsforslag Forelesning 3: Nøkkelhåndtering og PKI Oppgave 1 a. Hvorfor er god håndtering av kryptografiske nøkler

Detaljer

Vår referanse: A03 - G:17/173 Revisjon: 01 NASJONAL SIKKERHETSMYNDIGHET. Sikker informasjon i tiden etter en kvantedatamaskin KVANTERESISTENT KRYPTO

Vår referanse: A03 - G:17/173 Revisjon: 01 NASJONAL SIKKERHETSMYNDIGHET. Sikker informasjon i tiden etter en kvantedatamaskin KVANTERESISTENT KRYPTO Vår referanse: A03 - G:17/173 Revisjon: 01 NASJONAL SIKKERHETSMYNDIGHET Sikker informasjon i tiden etter en kvantedatamaskin KVANTERESISTENT KRYPTO INNHOLD 1. Introduksjon................................................................4

Detaljer

ECC i akademia vs. industrien

ECC i akademia vs. industrien Conax AS 2007 RSA ECC Utbredelse Kampen mellom ECC og RSA har pågått lenge. I akademia går ECC av som vinner, mens i industrien er det fortsatt RSA som gjelder. RSA RSA ECC Utbredelse I 1977 publiserte

Detaljer

Mulige Master-oppgaver hos Peter C. Ölveczky

Mulige Master-oppgaver hos Peter C. Ölveczky 11.1.2006 Masteroppgaver 1 Mulige Master-oppgaver hos Peter C. Ölveczky http://heim.ifi.uio.no/ peterol 11.1.2006 Masteroppgaver 2 Peter C. Ölveczky 1. amanuensis ved PMA-gruppen Email: peterol@ifi.uio.no

Detaljer

Programmering i R. 6. mars 2004

Programmering i R. 6. mars 2004 Programmering i R 6. mars 2004 1 Funksjoner 1.1 Hensikt Vi har allerede sette på hvordan vi i et uttrykk kan inkludere kall til funksjoner som er innebygd i R slik som funksjonene sum, plot o.s.v. Generelt

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230/4230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 18. mars 2005 Tid for eksamen: 13.30 16.30

Detaljer

MA1301 Tallteori Høsten 2014 Oversikt over pensumet

MA1301 Tallteori Høsten 2014 Oversikt over pensumet MA1301 Tallteori Høsten 2014 Oversikt over pensumet Richard Williamson 3. desember 2014 Innhold Pensumet 2 Generelle råd 2 Hvordan bør jeg forberede meg?.......................... 2 Hva slags oppgaver

Detaljer

Hjemmeeksamen 2 i INF3110/4110

Hjemmeeksamen 2 i INF3110/4110 Hjemmeeksamen 2 i INF3110/4110 Innleveringsfrist: onsdag 19. november kl. 1400 Innlevering Besvarelsen av oppgave 2,3,4 og 5 skal leveres skriftlig på papir i IFI-ekspedisjonen. Merk denne med navn, kurskode,

Detaljer

Hvordan få tak i reell usikkerhet av kost-nytte i en skjev verden? Magne Jørgensen

Hvordan få tak i reell usikkerhet av kost-nytte i en skjev verden? Magne Jørgensen Hvordan få tak i reell usikkerhet av kost-nytte i en skjev verden? Magne Jørgensen Kostnader er høyreskjeve Minimum kostnad er null, mens maksimum er så å si uendelig Uflaks øker mulighetsrommet for mer

Detaljer

Skanning del I. Kapittel 2 INF 3110/ INF

Skanning del I. Kapittel 2 INF 3110/ INF Skanning del I Kapittel 2 18.01.2013 1 Skanning: innhold (begge forelesningene) Hva gjør en skanner? Input: programteksten. Output: Ett og ett token fra programteksten (sekvensielt). Regulære uttrykk/definisjoner.

Detaljer

Forelesning 3: Nøkkelhåndtering og PKI

Forelesning 3: Nøkkelhåndtering og PKI Universitetet i Oslo IN2120 Informasjonssikkerhet Høst 2018 Workshop-spørsmål med svarforslag Forelesning 3: Nøkkelhåndtering og PKI Spørsmål 1 a. Hvorfor er god håndtering av kryptografiske nøkler essensiell

Detaljer

Symmetrisk En hemmelig nøkkel ( passord ) som brukes både ved kryptering og dekryptering.

Symmetrisk En hemmelig nøkkel ( passord ) som brukes både ved kryptering og dekryptering. 1 Hva? Hva er informasjonssikkerhet? Information security encompasses the study of the concepts, techniques, technical measures, and administrative measures used to protect information assets from deliberate

Detaljer

Semantisk Analyse del I

Semantisk Analyse del I Semantisk Analyse del I Attributtgrammatikker Kapittel 6.1-6.2 26.02.2013 1 Statisk semantisk analyse kapittel 6: Innhold Generelt om statisk semantisk analyse Attributt-grammatikker (kapittel 6.1-6.2)

Detaljer

1 Utsagnslogikk (10 %)

1 Utsagnslogikk (10 %) 1 Utsagnslogikk (10 %) a1) A A, C A A C A B A B (A C) B, C B B C B B, C A, C B, C A C B C A C B C B (A C) A (B C) B (A C) Utledningen lukkes ikke og vi får følgende valuasjon v som falsifiserer formelen:

Detaljer

Introduksjon til programmering og programmeringsspråk

Introduksjon til programmering og programmeringsspråk Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus https://code.org/ Veldig høy-nivå programmering med Scratch End-user programming Overtone, Tidal, etc., bygger

Detaljer

var y :{x :T R}; S endvar y

var y :{x :T R}; S endvar y uttrykk av formen some x : T R selekterer ikke-deterministisk Et T -verdi som tilfredsstiller R, det vil si en verdi av subtypen en skal regnes med i den applikative delen av programmeringsspråket, some-uttrykk

Detaljer

Grunnleggende testteori

Grunnleggende testteori 1 Grunnleggende testteori Error-Fault-Failure 2 Error : når en programmerer koder feil eller utelater kode (evt. miljøpåvirkning) årsaken til en fault Fault (defect eller bug): feil i kode kan lede til

Detaljer

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk MAT1030 Diskret matematikk Plenumsregning 4: Ukeoppgaver fra kapittel 3 & 4 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 7. februar 2008 Oppgave 3.15 Forklar følgende påstand ved å vise til

Detaljer

Linux-programmer som bruker regulæruttrykk: grep, sed, awk

Linux-programmer som bruker regulæruttrykk: grep, sed, awk Linux-programmer som bruker regulæruttrykk: grep, sed, awk grep * søking i tekstlige data grep [OPTIONS] REGEX [FILE...] Verktøy som finnes i alle Unix-lignende OS Leser en eller flere tekstfiler, eller

Detaljer

INF2810: Funksjonell Programmering. En metasirkulær evaluator, del 2

INF2810: Funksjonell Programmering. En metasirkulær evaluator, del 2 INF2810: Funksjonell Programmering En metasirkulær evaluator, del 2 Stephan Oepen & Erik Velldal Universitetet i Oslo 03. mai 2013 Tema 2 Forrige uke SICP 4.1. Structure and interpretation of computer

Detaljer

Oppsummering av digitalteknikkdelen

Oppsummering av digitalteknikkdelen Oppsummering av digitalteknikkdelen! Følgende hovedtemaer er gjennomgått! Boolsk Algebra! von Neuman-arkitektur! Oppbygging av CPU! Pipelining! Cache! Virtuelt minne! Interne busser 09.05. INF 1070 1 Boolsk

Detaljer

Litt mer om Arduino. Roger Antonsen Sten Solli INF1510 31. januar 2011

Litt mer om Arduino. Roger Antonsen Sten Solli INF1510 31. januar 2011 Litt mer om Arduino Roger Antonsen Sten Solli INF1510 31. januar 2011 ARDUINO Input (Data) Prosessering Output Arduino Man kan bruke de 3 elementene i varierende grad, og også kutte noen helt ut. Det finnes

Detaljer

INF2810: Funksjonell Programmering. En metasirkulær evaluator, del 2

INF2810: Funksjonell Programmering. En metasirkulær evaluator, del 2 INF2810: Funksjonell Programmering En metasirkulær evaluator, del 2 Stephan Oepen & Erik Velldal Universitetet i Oslo 03. mai 2013 Tema 2 Forrige uke SICP 4.1. Structure and interpretation of computer

Detaljer

Forelesning 7: Førsteordens logikk sekventkalkyle og sunnhet Christian Mahesh Hansen - 3. mars 2007

Forelesning 7: Førsteordens logikk sekventkalkyle og sunnhet Christian Mahesh Hansen - 3. mars 2007 Forelesning 7: Førsteordens logikk sekventkalkyle og sunnhet Christian Mahesh Hansen - 3. mars 2007 1 Repetisjon: Førsteordens syntaks og semantikk Et førsteordens språk L består av: 1. Logiske symboler

Detaljer

... HASHING. Hashing. Hashtabeller. hash(x)

... HASHING. Hashing. Hashtabeller. hash(x) HASHING Hashing Hashtabeller (kapittel.) Hash-funksjoner (kapittel.) Kollisjonshåndtering Åpen hashing (kapittel.) Lukket hashing (kapittel.) Anta at en bilforhandler har ulike modeller han ønsker å lagre

Detaljer

Sondre Granlund Moen

Sondre Granlund Moen Kryptering i sjøforsvaret Sondre Granlund Moen 27.06.17 Innhold Hva er kryptering?... 3 Symmetrisk kryptering... 3 Asymmetrisk kryptering... 3 Historie:... 3 Egypterne... 3 Cæsar- siffer (alfabetet)...

Detaljer

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk ITPE/DATS 2400: Datamaskinarkitektur og Nettverk Forelesning 9: Instruksjonsettarkitektur 3 Knut H. Nygaard / T. M. Jonassen Institute of Computer Science Faculty of Technology, Art and Design Oslo and

Detaljer

Logisk Programmering. Relasjoner vz. funksjoner. Funksjon: inn og ut, en verdi. Relasjon: ingen retning, null eller flere verdier

Logisk Programmering. Relasjoner vz. funksjoner. Funksjon: inn og ut, en verdi. Relasjon: ingen retning, null eller flere verdier 1 Logisk Programmering Relasjoner vz. funksjoner Funksjon: inn og ut, en verdi Relasjon: ingen retning, null eller flere verdier LP slagord: algoritme = logikk + kontroll Logikk ( hva ): logisk program

Detaljer