Tuesday 10 October 2017

Haskell Trading System


Første inntrykk teller. Vær forsiktig når du fullfører søknaden. Opptakskomiteen møtes en gang i uken for å vurdere søkere. De fleste vellykkede søkere har en kombinasjon av sterke akademikere, ekstrakurselle interesser og en lidenskap for å skryte ut i deres fremtidige karriere. Steder på våre programmer er allokert på først til mølle. Vel, gi deg beskjed innen ti virkedager hvis du lykkes. Lev, jobb, studere ambulanse i utlandet. Ikke kompromiss. Intern, lære, lede, vokse amp utforske i en global by. Ta tak i dagens amp sikker i morgen. Ikke kompromiss. Opplevelsen av livet øker ferdighetene til å vare deg i livet. Utforsk forsterker akselerere karrieren din. Ikke kompromiss. Oppdag potensialet ditt på veien til å realisere det. Vi er stolte medlemmer av følgende foreninger: CI er en akselerert læringsleverandør. Vi tilbyr omfattende opplæringsprogrammer for studenter, nyutdannede og tidlige karrierevekslere. Publikasjoner Oklahoma Historical Society opprettholder et aktivt publikasjonsprogram. Det inkluderer OHSs vitenskapelig journal, The Chronicles of Oklahoma. sitt nyhetsbrev, Mistelteblade. og en rekke bøker og forskningsguider. Denne uvurderlige ressursen inneholder mer enn 2500 oppføringer. En to-volum utskriftsversjon er også tilgjengelig. Se The Encyclopedia online The Chronicles of Oklahoma er den vitenskapelige tidsskriftet for OHS og sendes til medlemmer og abonnenter kvartalsvis. Finn ut om bøker i trykt utgitt av Oklahoma Historical Society. Flere titler er tilgjengelig online. Crossroads er en ny nettpublikasjon fra OHS. Hver måned undersøker vi et nytt kapittel i Oklahoma historie. Mistelteblade er det tosidige medlemskaps nyhetsbrevet til Oklahoma Historical Society. OHS EXTRA er et ukentlig elektronisk nyhetsbrev utgitt av Oklahoma Historical Society. Jeg er en assisterende professor i UCSD CSE-avdelingen. Jeg er også Chief Scientist at Intrinsic (tidligere GitStar), en websikkerhetsoppstart jeg medgrunnlegger. Mine forskningsinteresser er i å bygge prinsipper og praktiske sikre systemer. Mer bredt er jeg interessert i forskning som spenner over systemer, sikkerhet og programmeringsspråk. Jeg jobber på flere systemer, inkludert COWL. et nettleserinnholdssystem designet for moderne webapplikasjoner, Hails. et sikkerhets-sentrert rammeverk for å bygge webplattformer, LIO. et dynamisk informasjonsflytkontrollsystem og ESpectro. en sikkerhetsarkitektur for Node. js. På Intrinsic legger jeg mye av denne forskningen i praksis ved å bygge systemer, verktøy og språk som i siste instans gjør det enklere for utviklere å bygge og distribuere webapplikasjoner med minimal tillit. Du finner flere detaljer om min visjon, tilnærming og retning i min forskningserklæring. Jeg er også medlem av W3C WebAppSec Working Group. hvor jeg prøver å gjøre nettet til et tryggere sted, hovedsakelig ved å fungere som redaktør av COWL-spesifikasjonen. Jeg fullførte Ph. D. i datavitenskap ved Stanford under prof. david Maziegraveres og prof. john c mitchell og (uformelt) prof. alejandro russo. Før Stanford fikk jeg en B. E. og M. E. i elektroteknikk ved Cooper Union. På Cooper jobbet jeg med GPU og FPGA krypto implementeringer. Jeg er fortsatt generelt interessert i maskinvarearkitekturer, spesielt i sammenheng med sikkerhet. Kunngjøringer Nedenfor er flere prosjekter jeg har jobbet med. Du kan lese om mitt bredere forskningsvisjon i min forskningsoppgave. Hvis du er studentinteresse i hackingsystemer eller semantikk: kontakt meg ESpectro - sikkerhetsarkitektur for Node. js Espectro er en sikkerhetsarkitektur for JavaScript-applikasjoner på serversiden. Dagens nettverksprogrammer kjører ikke med minst privilegium. noe som gjør dem sannsynlig til å forårsake stor skade når de blir skadet. Dessverre, selv om utviklere prøvde å avgrense og sikre sine applikasjoner, eksisterende teknikker, som syscall interposition og containere. er ikke tilstrekkelig: de krever at utviklere skal angi komplekse, lavnivåpolitikk, og enda verre, operere på prosessnivå. Selv om det er nyttig for forsvarsdyktig, gjør dette dem uegnet til å håndheve mange programspesifikke retningslinjer. ESpectro adresserer disse begrensningene for server-side JavaScript apps, ved å utføre kode i lette kontekster som eksponerer virtuelle versjoner av kjernen Node. js biblioteker. Funksjoner i disse bibliotekene implementeres som meldinger til en klarert (foreldre) kontekst som kan utføre sikkerhetskontroller før og etter å utføre den virkelige Node. js-funksjonen (resultatet blir sendt tilbake som en melding). Faktisk kan den klarerte koden gi en helt annen implementering for det virtualiserte grensesnittet for å implementere caching, gjennomsiktig kryptering, SQLHTML-escape eller en lett omvendt proxy. Generell arkitektur gjør det mulig å implementere en sikkerhetsmekanismer for biblioteket (inkludert obligatorisk tilgangskontroll), web-serverarkitekturer (f. eks. Hails, Passe. OKWS), policyspesifikasjonsmotorer, etc. Vi bruker for eksempel systemet til å bygge en produksjonsnettplattform (ligner den som er beskrevet i OSDI12-papiret) og modulsystemet for brudd-nettleseren. Et forskningspapir som beskriver systemet og brukstilfeller vil snart være tilgjengelig. COWL - inneslutningssystem for nettet COWL (Confinement with Origin Web Labels) er inneslutningssystem for moderne nettlesere. Webapplikasjoner som kjører i nettleseren, er konglomerasjoner av JavaScript skrevet av flere forfattere. Utviklere inneholder rutinemessig kode fra tredjepartsbiblioteker, og mashups syntetiserer data og kode som er vert på forskjellige nettsteder. I eksisterende nettlesere må både utviklere og brukere stole på tredjepartskode for ikke å lekke brukerens sensitive informasjon fra applikasjoner. Enda verre, i status quo er den eneste måten å implementere noen mashups på, for brukeren å gi henne påloggingsinformasjon for ett nettsted til operatøren av et annet nettsted. COWL adresserer denne begrensningen ved å introdusere etikettbasert obligatorisk tilgangskontroll (MAC) for å bla gjennom sammenhenger (sider, iframes, etc.) på en måte som er fullt bakoverkompatibel med eldre webinnhold. Med COWL kan utviklere ikke bare begrense med hvem de deler data, men kan også legge begrensninger på hvordan dataene blir spredt når de deles. COWL oppnår fleksibilitet ved å tillate kode for å hente og dele data etter behov, og det oppnår også personvern ved å sikre at når kode har lest følsomme data, kan den ikke kommunisere med uautoriserte partier som vil kompromittere personvernet. COWL-siden har flere eksempler (kode og skjermbilder) som viser dette i detalj. Det er mange MAC-systemer der ute (noen av dem jeg bygget), men nøkkelen bak COWL var å finne ut et designpunkt som passer for nettleseren. Spesielt ønsket vi et system som begrenser JavaScript uten å måtte begrunne språkets quirky semantikk uten å endre JavaScript-motoren uten å bryte eller bremse den eksisterende weben, og uten å pålegge for mange nye konsepter på utviklere. OSDI14-papiret forklarer hvordan vi gjorde dette, mens HotOS XIV gir en smak av hva vi kan gjøre hvis vi modifiserer nettlesere for å legge til MAC som den underliggende mekanismen. IFCs internteknologiske rapport beskriver den formelle semantikken for en noe forenklet modell av COWL. Hails - Secure Web Platform Framework Hails er et Haskell web-rammeverk designet for å bygge uttrekkbare web-plattformer. Dagens webplattformer (for eksempel Facebook og Yammer) viser vanligvis REST-lignende APIer for tilgang til brukerdata til eksterne applikasjoner som, når de får tilgang, kan gi ny rik funksjonalitet. Dessverre, når du har gitt tilgang, kan disse appene gjøre som de vil med de (ofte sensitive) dataene: En skadelig eller buggy app kan enkelt lekke og ødelegge brukerdata. Dette tvinger dessverre sluttbrukeren til å velge mellom å bruke tredjepartsapps eller gi opp den funksjonaliteten for å bevare deres personvern. For å løse dette problemet, knytter Hails sikkerhetspolitikk til data ved bruk av obligatorisk tilgangskontroll (MAC) eller IFC-informasjon (IFC). Hailene klarerte kjøretiden sørger da for at alle appene (som nå kjører på Hails-plattformen) overholder disse etikettene. Dette gjør at plattformen kan behandle alle apper som usikre Hails sikrer at disse appene ikke kan lekke eller ødelegge merkede brukerdata. Faktisk kan kjernedeler av et nettsted implementeres som usikre apper, noe som gjør det enkelt å bygge utvidbare plattformer uten å handle bort privatliv. Mens MAC og IFC-systemer har eksistert en stund, ser Hails ut som et system som kan brukes av gjennomsnittlige utviklere, i dag. Til dette formål implementerte vi Hails som et bibliotek, i motsetning til et nytt språk runtime eller OS. Videre gir vi utviklere en måte å strukturere applikasjoner på en enkel måte: Hails utvider bare Model-View-Controller architecturewith Policy. Platform utviklere har nå bare den ekstra oppgaven med å spesifisere policy. Og Hails gjør dette til en tilnærmet oppgave ved å binde seg i politikken med modelldefinisjonen og gi et deklarativt, enkeltpolitisk språk for å uttrykke datapolicyer. Å uttrykke høytstående bekymringer på en deklarativ, enkel måte har vært en åpen utfordring for MAC-systemer. Vi løste denne utfordringen og beskriver systemet i OSDI12-papiret. med høy motivasjon i POST14 inviterte snakk. Den enkle, men uttrykksfulle etikettmodellen som brukes av Hails, er beskrevet i NordSec11-papiret. LIO - Praktisk og uttrykksfulle språkbaserte DIFC-system LIO er et dynamisk, DIVC-system (DIFC-system) på språknivå. Systemet undersøker et nytt designpunkt i DIFC-rommet: et blandet kornet DIFC-system. Dette betyr at LIO vanligvis sporer og kontrollerer informasjonsflyten på grovkornet nivå (lette tråder), samtidig som programmene tillater å knytte retningslinjer (etiketter) med individuelle data, når det er nødvendig. Dette har en rekke fordeler: det muliggjør ettermontering av et språk med sikkerhetsmekanismen uten mange endringer i sin runtime (i Haskell: ingen) mekanismen kan bli utsatt som en enkel API uten å endre språksemantikken, og den har en minimal innvirkning på ytelsen. Interessant nok har denne blandede kornet tilnærmingen uttrykk for fine kornsystemer, slik at programmerere kan knytte etiketter med individuelle verdier, og fordelene med grovkornede DIFC-operatører i å tvinge programmører til å forstå og begrense mange deler av systemet: de trenger bare å begrunne om dataene de knytter sammen en etikett med. Den sekvensielle LIO-kalkulatoren, Coq-bevisene og Haskell-implementeringen er beskrevet i JFP-papiret (under revisjon) og Haskell11-papiret. I ICFP12-papiret behandlet vi den åpne utfordringen om å ha et ekspressivt samtidig DIFC-system som ikke lekker informasjon gjennom timing skjulte kanaler, og viste hvordan man kan kode strømningsfølsomme referanser (felles for finkornede systemer) i disse beregningene i CSF14-papiret . Demosene på PLAS14 og Haskell14 viser hvordan man bygger virkelige systemer, som Hails, med LIO. P, S - bruk av typer for å beregne solidt på krypterte data P, S er et kjerne, men funksjonsrikt språk for programmering på krypterte data. Secure Multiparty Computing (SMC) og full homomorphic encryption (FHE) er lovende byggeklosser for å beskytte data fra usikre servere. De tillater servere å utføre beregninger på krypterte data uten tilgang til dekrypteringsnøkler. Dessverre begrenser eksisterende tilnærminger til programmering på krypterte data: de krever kompilering til boolske ødelagte kretser eller bruk av APIer i generelle språk. Den førstnevnte begrenser hvilke programmer som kan skrives, mens sistnevnte gjør det mulig å skrive programmer som ikke kan utføres på en sikker måte. P, S er et nytt programmeringsspråk og runtime som adresserer disse cncernene. Språket støtter mange funksjoner som er felles for funksjonelle språk som ML, inkludert conditionals, mutable state, og en form for generell rekursjon. Interessant, programmer er utviklet og testet ved hjelp av konvensjonelle metoder, uten kryptering eller ekspertkunnskap om krypto. Ved hjelp av et system for informasjonsflyt, sikrer vår kompilator at kode som kan kompilere, også kan kjøre på en sikker plattform som bruker SMC og FHE for å gi sterke garantier. CSF12-papiret og FSTTCS11-inviterte snakk beskriver dette språket, Haskell-implementeringen og flere brukstilfeller. Profesjonelle aktiviteter Jeg er den nåværende redaktøren for W3C COWL-spesifikasjonen, og jeg har servert, eller tjener, på programkomiteene for:

No comments:

Post a Comment