Avoin vs suljettu lähdekoodi – kumpi on turvallisempaa?

Mielenkiintoinen ikuisuuskysymys. Kokosin tähän muutamia näkökulmia ja lajittelin ne ohjelmiston lähdekoodin luottamuksellisuuden, eheyden ja saatavuuden perusteella.

Luottamuksellisuus – onko ohjelmakoodi turvallista?

Suljettujen ohjelmistojen tietoturva perustuu sille, että ohjelmiston koodivirheitä ei näe. Avoimissa ohjelmistoissa asia on täysin käänteinen. Kaikki voivat tarkistaa, onko koodissa virheitä vai ei.

Silmäpareja on enemmän, mutta kuinka moni oikeasti katsoo? Vakava Heartbleed-haavoittuvuuskin oli näkyvillä yli kaksi vuotta, mutta kukaan ei huomannut sitä.

Eheys – mitä ohjelmisto oikeasti sisältää?

Suljettujen ja avoimien ohjelmistojen asennuspaketeissa on sama ongelma: et voi tietää, onko paketissa mukana jotain ”ylimääräistä”. Avoimissa ohjelmistoissa on kuitenkin se etu, että voit ladata lähdekoodin ja rakentaa ohjelman itse.

Onko yrityksillä nykyaikana resursseja rakentaa itse lähdekoodista ohjelmistoja sekä ylläpitää niitä?

Saatavuus – onko ohjelmisto aina tarjolla?

Mitä jos ohjelmiston valmistaminen lopetetaan? Avoin lähdekoodi mahdollistaa sen, että kuka tahansa voi muokata ohjelmiston toimivaksi esim. eri käyttöjärjestelmissä. Suljetun koodin ohjelmistoissa sinun on odotettava, että ohjelmiston valmistaja tekee tämän.

Olisiko kuitenkin järkevämpää vaihtaa ohjelmistoa, jos nykyinen ei enää toimi uudemmissa järjestelmissä tai valmistus lopetetaan?

Extranäkökulma – vapaaehtoinen ammattilainen

Olen kuullut useasti väitteen, että vapaaehtoisesti toteutetut avoimen koodin sovellukset ovat harrastajien tekeleitä. Millä perusteella ammattilainen ei voisi olla vapaaehtoinen?

Avoin lähdekoodi mahdollistaa turvallisemman ohjelmiston kehittämisen

Ohjelmiston tietoturvan tasoa ei voi mitata pelkällä lähdekoodin avoimuudella. Avoin lähdekoodi kuitenkin mahdollistaa seuraavat asiat:

  • Voit tarkistaa, onko ohjelmassa virheitä
  • Voit rakentaa ohjelmasi itse koodista
  • Voit muokata ohjelmaa haluamallasi tavalla
  • Voit seurata muiden tekemiä muutoksia
  • Voit valita ohjelmiston toimittajan
  • Voit vaikuttaa ohjelmiston tietoturvaan

Voit tehdä kaiken ylläolevan itse tai tilata jonkun muun tekemään sen puolestasi.

Vastaa

Sähköpostiosoitettasi ei julkaista.