Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Distribuerede systemer, CBS, 28. september 2015

Kasper Tidemann
September 27, 2015

Distribuerede systemer, CBS, 28. september 2015

Slides til forelæsningen om sikkerhed i distribuerede systemer på CBS d. 28. september 2015 kl. 08:00.

Kasper Tidemann

September 27, 2015
Tweet

More Decks by Kasper Tidemann

Other Decks in Education

Transcript

  1. Hvad er de typiske spørgsmål til eksamen? Det kan fx

    være at forklare hvad DNS går ud på.
  2. En server kan både være et stykke metal og et

    program, der kører på en computer.
  3. A B

  4. Promises. Det at man giver et løfte i sin kode,

    der senere kan blive indfriet - eller ikke.
  5. Hvorfor så ikke altid udvikle asynkront? Fordi man i nogle

    tilfælde er tvunget til at vente på ressourcer.
  6. Beskeder. Bogen taler ofte om at det går ud på

    at sende beskeder til hinanden.
  7. 200 OK. Det er den besked, som en webserver sender

    til en klient når alt er okay.
  8. 404 Not Found. Den kender I når I går ind

    på en adresse, som ikke kan findes.
  9. RFC 2616 indeholder en liste over statuskoderne. Apropos vores snak

    om RFC’er og protokoller til sidste forelæsning.
  10. Beskeder i et distribueret system skal forstås generelt. At enheder

    sender beskeder til hinanden er generelt - og implementationsafhængigt.
  11. A web service has an interface described in a machine-processable

    format (WSDL). Other systems interact with the web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization.
  12. <?xml version="1.0"?> <definitions name="StockQuote" targetNamespace="http://example.com/stockquote.wsdl" [..]> <types> <schema targetNamespace="http://example.com/stockquote.xsd" [..]>

    <element name="TradePrice"> <complexType> <all> <element name="price" type="float"/> </all> </complexType> </element> </schema> </types> <message name="GetLastTradePriceInput"> <part name="body" element="xsd1:TradePriceRequest"/> </message> [..]
  13. Man taler om at “udstille en service”. På den måde

    kan andre forstå hvad servicen tilbyder.
  14. En web service vækkes til live og sender noget retur.

    En lidt mere jordnær definition.
  15. Det handler om at begrænse adgang til information. Det er

    den grundlæggende idé i sikkerhed.
  16. Et digest laver et hash ud af en stykke tekst.

    Det bruges til at bekræfte et stykke tekst, fx et password.
  17. SELECT 1 FROM users WHERE id = <bruger-id> AND EXISTS(

    SELECT 1 FROM group_members WHERE group_members.user_id = users.id AND group_members.group_id = <gruppe-id> ) AS has_access;
  18. Hvad betyder det at noget er krypteret? Jeg er en

    rigtig Spørge-Jørgen i den her forelæsning.
  19. Encryption is the process of encoding messages or information in

    such a way that only authorized parties can read it.
  20. Plaintext til ciphertext. Det er resultatet af at anvende et

    cipher, altså en algoritme, til at kryptere.
  21. Block ciphers. Man deler en besked op i dele à

    64 bit og krypterer dem enkeltvis.
  22. Offentlige og private nøgler. Takket være Diffie og Hellman har

    vi offentlige og private nøgler i kryptering.
  23. Maybe we haven't discovered intelligent life elsewhere in the Universe,

    says Snowden, because their communications encryption is indistinguishable from cosmic background radiation. http://kottke.org/15/09/edward-snowdens-fermi-paradox-solution
  24. Firewalls. Vi havde jo om porte sidst - og firewalls

    sørger for at åbne eller lukke dem.
  25. Mitigation og nulrouting af trafik. En måde at beskytte sig,

    når en firewall ellers ville blive væltet.