Meeskond: .njet

From ICO wiki

Liikmed

  • Edgar Tereping - projektijuht
  • Priit Järv
  • Jane Kaldma

Idee

Loome paroolihalduri, mille põhifunktsiooniks on eri kasutajakontodega seotud paroolide hoidmine ühes kohas. Programmis saab paroolikirjeid lisada, muuta, kustutada ning kui funktsionaalsusest puudu jääb, võimaldame paroole ka genereerida.

Tehnoloogia

  • C#
  • Windows Presentation Foundation

Blogi

10.10.2017 - Meeskonna loomine
17.10.2017 - Ajurünnak ja lõppidee välja valimine
22.10.2017 - Meeskonnale wiki lehekülje loomine
05.11.2017 - Projekti analüüs
12.11.2017 - Valmis retsensioon tiimile ITBaar
13.12.2017 - Algas programmiloome
18.12.2017 - Prototüübi esitus
27.12.2017 - Repositooriumite asendamine service-klassidega
31.12.2017 - Esmased binding-ud
08.01.2018 - Uuel aastal uue hooga. Vaadetega tegelemine
14.01.2018 - Põhifunktsionaalsus
17.01.2018 - Põhifunktsionaalsus, silmailu, koodi korrastamine

Analüüs

Mida rakendus endas sisaldab?

Tänapäeva keerulises internetimaailmas, kus pea iga leht vajab kasutajakontot koos sellele vastava parooliga, võib tekkida olukord, kus iga parooli meeldejätmine tekitab tõsiseid raskusi nii mälutõve käes vaevlevatele inimestele kui ka ülihea meeldejätmisvõimega viktoriiniässadest eremiitidele. Kuna ühe ja sama parooli kasutamine erinevatel veebilehtedel ei ole hea mõte, siis võib tõsiseid raskusi valmistada ka kõikide nende erinevate salasõnade väljamõtlemine. Läinud on ajad, mil kõikide erinevate paroolide väljamõtlemiseks oli vajalik shakespeare'ilik loovus. Läinud on ajad, mil kõikide erinevate paroolide meeldejätmiseks oli vajalik kas ülipaljude sünapsidega geniaalne aju või lihtlabane märkmik. Mälu võib hääbuda. Märkmik võib rikneda, põlema minna või mõni pahatahtlik varas võib selle ära krabada. Metsikud, barbaarsed ajad on möödas. Meie peagi valmimas rakendus sisaldab endas paroolihaldurit, mis võimaldab salvestada endas erinevate veebilehtede kasutajakontode paroole koos vastava kasutajakonto nimega. Paroolihalduri mitmekülgne lisafunktsionaalsus lisab aga veelgi enam põnevust kasutajakogemusele. Näiteks saab laisem kasutaja sätestada salasõna nõuded ning meie programm genereerib ise välkkiirelt ja hõlpsasti hea ja turvalise parooli ning vajadusel veel teisegi. Kokkuvõtvalt võib ehk öelda, et rakendus sisaldab endas aega - aega, mille kasutaja hoiab kokku, jättes aeganõudvad ja tülikad parooligenereerimisprotseduurid meie programmile. See aeg muundub edasi õnneks. Ning õnn on see, mida kõik me oma eludes taga ajame. Seega meie rakendus sisaldab endas elu mõtet.

Mis on rakenduse eesmärk?

Rakenduse eesmärk on lihtsustada kasutajal erinevate veebilehtede kasutajakontode paroolide haldamist ja meelespidamist. Kuna kaasajal on eriti tähtis, et erinevatel veebilehtedel oleksid erinevad ning raskestimurtavad paroolid, pakub meie paroolihaldur eelkõige ajavõitu ning muretust, mis kaasneb rakenduse poolt genereeritud paroolidega ning nende meelespidamisega. Rakenduse arvukas ning eriotstarbeline lisafunktsionaalsus aitab veelgi enam kasutajal unustada paroolihaldamise piinad ning suunata seega oma positiivsusest pakatav energia asjadele, mis tegelikult meie eludes tähtsad on.

Mida tavakasutaja sellega teha saaks?

Tavakasutaja saab paroolihalduri rakendusega salvestada erinevate veebilehtede paroole. Tänu sellele väheneb oht, et mõni parool lihtsalt puhtlabasel kombel meelest läheb. Rakendus võimaldab ka genereerida kasutaja poolt sisestatud nõudmistele toetudes paroole, mistõttu väheneb oht, et mõni parool on ebapiisava turvalisusastmega, ebapiisaba pikkusega või ei vasta kuidagi muul moel adekvaaatse salasõna nõudmistele. Rikkalikust lisafunktsionaalsusest olgu mainitud näiteks paroolide vanuse meelespidamine, mis tuletab kasutajale meelde, et turvalisuse huvides võiks mõnda parooli uuendada, kui tema vanus on ületanud mingi läve. See kahandaks näiteks oluliselt brute force rünnaku efektiivsust, kui selline pahatahtlik tegu peaks aset leidma. Paroolihaldurisse paigaldatud krüpteerimisvõtted kindlustavad selle, et tavakasutaja paroolid on kindlalt kaitstud nuhkijate pahatahtlike silmade eest.

Milliste osade realiseerimine võib osutuda problemaatiliseks?

Kõige tõenäolisemalt osutub raskeimaks elemendiks meie projektis sobiliku kasutajaliidese disainimine. Samuti võib kujuneda keeruliseks andmete sidumine kasutajaliidesega. Kui otsustame panna oma programmi suhtlema veebilehtedega*, võttes sealt andmeid, tuleb kindlasti raskusi. Kuna krüpteerimine on võrdlemisi uus teema kõikidele meeskonnaliikmetele, võib selle rakendamine peavalu tekitada. Õnneks on käimas andmeturbe ja krüptoloogia kursus ning ehk võib abi leida mõnelt inimeselt, kes sellel kursusel osaleb. Mõningaid problemaatilisi aspekte võib tõenäoliselt leiduda ka teiste komponentide realiseerimise juures, kuid eks see selgub täpsemalt töö käigus. Loodame, et hea meeskonna tööjaotus leidub meil võimalikult kiirelt, sest me peame seda väga vajalikuks.

Kui on tööjaotus paigas, siis tuua ka see välja.

Hetkel veel tööjaotusele konkreetsemalt mõelnud ei ole ning ülesandeid hakkame jagama töö käigus. Proovime siia lisada konkreetsema ja kvaliteetsema tööjaotuse nii pea kui võimalik.

Must have

  • Paroolihalduse krüpteering - Paroolihalduse väljundfail on krüpteeritud. Sisu nägemiseks ja muudatuste tegemiseks on tarvis esmalt sisestada salasõna.
  • Paroolide ja kasutajanimede salvestamine - Paroolihaldur võimaldab salvestada erinevaid paroole ning kasutajanimesid. Lisaks on võimalik juurde lisada ka veebilehe aadress, kuhu vastav konto on loodud. Sissekande loomisel ja muutmisel salvestatakse viimase muudatuse kuupäev, mis kuvatakse ka kasutajale.
  • Paroolide genereerimine - Antud funktsioon võimaldab juhusliku parooli genereerimist. Parool genereeritakse etteantud pikkuses ning sisaldab valitud komponente (suured/väikesed tähed, numbrid, sümbolid).
  • Nupp või checkbox paroolide kuvamiseks - Vaikimisi kuvatakse paroolid tärnidena. Antud nupu või checkboxi vajutamisel näidatakse parooli kasutajale.
  • Lihtsustatud parooli kopeerimine - Nupp, mille abil on võimalik salvestada valitud parool clipboard-i.

Nice to have

  • Paroolivahetuse meeldetuletus - Kui parooli salvestamisest on möödas määratud aeg, soovitab programm parooli uuendada.
  • Värviskeem paroolide eristamiseks - Avanud paroolifaili, kuvatakse paroolikirjeid eri värvi taustadel, nt nõrgemad ja aegunud paroolid punasel, tugevad ja värsked rohelisel.
  • * Veebiankeetide automaatne täitmine - Programmis koostatakse kasutaja andmeid sisaldav mallankeet, mille abil veebivorme (just uute kontode loomisel) täidetakse. Programm otsib lehelt vastavad väljad ning täidab need mallankeedis märgitud andmetega.

Versioonihaldus

Versioonihalduse leiab siit

Lõpptoode

Lõpptoote leiab siit