Skip to content

durajetz/Data_Security

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Siguria e të Dhënave

Projekti në lëndën Siguria e të Dhënave (Data Security), Grupi27.

Ky projekt u zhvillua në gjuhën programuese: Java SE Development Kit 8

Qëllimi

Një console program me emrin ds i cili pranon komanda përmes argumenteve. Programi do t’i analizojë argumentet, dhe varësisht nga përmbajtja e tyre do ta ekzekutojë ndonjërën prej komandave:

  • Count - Numëron paraqitjen e njësisë në tekst.
  • Case - E konverton tekstin në madhësinë e dhënë.
  • Tap-code - Enkodon tekstin në Tap Kodin dhe Dekodon vargun nga Tap Kodi në alfabet latin.
  • Create-user - Krijon një çift të publik/privat të RSA me emrat .xml dhe .pub.xml brenda direktoriumit të çelësave keys si dhe një user që ruhet automatikisht në fajllin: Desktop/databasa.txt.
  • Delete-user - I largon të gjithë çelësat ekzistues të shfrytëzuesit dhe largon userin nga databasa.
  • Login - Mundson kyçjen e userit me anë të passwordit që është ruajtur si salt në databas dhe krijimin e një JWT tokeni ku si Subject të body-t pranon userin.
  • Status - Tregon gjendjen e validimit të JWT tokenit.
  • Export-key - Eksporton çelësin publik ose privat të shfrytëzuesit nga direktoriumi i çelësave.
  • Import-key - Importon çelësin publik ose privat të shfrytëzuesit nga shtegu i dhënë dhe e vendos në direktoriumin e çelësave.
  • Write-message - E shkruan një mesazh të enkriptuar të dedikuar për një shfrytëzues.
  • Read-message - E dekripton dhe e shfaq në console mesazhin e enkriptuar.

Parakushtet

  • Install the JDK Software and Set JAVA_HOME on a Windows System
  • Choosing your Java IDE(Për shkruarjen e programeve me anë të gjuhës programuese Java)
  • Choosing your Command line (Për thirrjen e argumenteve - args passing)
Për këtë projekt u përdorën:
 * IntelliJ IDEA 2019.1.2 
 * Git Bash

Instruksionet

$ git clone https://github.com/durajetz/Data_Security
$ cd Data_Security/Projekti_Siguri
$ ./ds.sh <komanda> <argumentet>
test@user MINGW64 ~/.../Data_Security/Projekti_Siguri
$ ./ds.sh create-user test

Skripta ./ds.sh përmban kodin për ekzekutimin e ds.jar (jar file qe e ka një main class me anë të së cilës mundet me u exec programi).

Ekzekutimi i komandave

Komanda count

count unit text
komanda lines,words, letters, symbols,vowels, consonants,sentences Përshëndetje nga FIEK!

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh count lines "Pershendetje nga FIEK!"

$ ./ds.sh count words "Pershendetje nga FIEK!"

$ ./ds.sh count letters "Pershendetje nga FIEK!"

$ ./ds.sh count symbols "Pershendetje nga FIEK!"

$ ./ds.sh count vowels "Pershendetje nga FIEK!"

$ ./ds.sh count consonants "Pershendetje nga FIEK!"

$ ./ds.sh count sentences "Pershendetje. nga FIEK!"

Komanda case

case case(funksioni) text
komanda upper,lower,capitalize,inverse,alternating,sentence Përshëndetje nga FIEK!

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh case upper "Pershendetje nga FIEK!"```

$ ./ds.sh case lower "Pershendetje nga FIEK!"

$ ./ds.sh case capitalize "Pershendetje nga FIEK!"

$ ./ds.sh count inverse "Pershendetje nga FIEK!"

$ ./ds.sh count alternating "Pershendetje nga FIEK!"

$ ./ds.sh count sentence "pershendetje, Fjalia E pare. FJALIA E DYTE! fjAlia E trEte."

Komanda tap-code

plaintext ciphertext
neser ... ... . ..... .... ... . ..... .... ..

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh tap-code encode "i can fly"

$ ./ds.sh tap-code decode ".. .... / . ... . . ... ... / .. . ... . ..... ...."

Komanda create-user

create-user çelësat formati ruan userin
komanda publik(.pub) dhe privat .xml database.txt

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh create-user test

$ ./ds.sh create-user test

$ ./ds.sh create-user test

Komanda delete-user

delete-user çelësat formati fshin userin
komanda publik(.pub) dhe privat .xml database.txt

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh delete-user test

$ ./ds.sh delete-user test

$ ./ds.sh delete-user test(në rast se ekziston vetëm çelësi publik)

$ ./ds.sh delete-user test(në rast se ekziston vetëm çelësi privat)

Komanda login

login user lëshohet tokeni
komanda logon userin nga baza e të dhënave JWT format

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh login test

$ ./ds.sh login test

$ ./ds.sh login test

Komanda status

status token
komanda Nëse tokeni ka skaduar, nuk ka nënshkrim valid, ose nuk ekziston shfrytëzuesi, atëherë tokeni nuk konsiderohet valid.

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh status <tokeni>

Komanda export-key

export-key çelësi export to
komanda publik(.pub) ose privat cmd ose file(opsionale)

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh export-key public test

$ ./ds.sh export-key privat test Path//celesi.xml

$ ./ds.sh export-key privat test(në rast se nuk ekziston çelësi paraprak ne dir. keys)

Komanda import-key

import-key import from çelësi
komanda path//filename.ext dir. keys/name

Sintaksa :

sintaksa

Shembull:

$ ./ds.sh import-key Path//publickey.ext edon

$ ./ds.sh import-key Path//privatekey.ext blerim

$ ./ds.sh import-key Path//somekey.ext edon

$ ./ds.sh import-key Path//somekey.ext blerim(ne rast se wrong ext)

$ ./ds.sh import-key https://url publicfromrequest

Komanda write-message

write-message enkriptimi save encrypt tokeni
komanda me çelësin publik ne cmd ose file(opsionale) deshton komanda
nese tokeni nuk eshte valid

Sintaksa :

sintaksa

$ ./ds.sh write-message test "This is a plaintext"

$ ./ds.sh write-message edon "Takohemi ne route66 ora 6:00" Path/file.ext

$ ./ds.sh write-message blerim "Pershendetje"

$ ./ds.sh write-message edon "Takohemi ne route66 ora 6:00" Path/file.ext

$ ./ds.sh write-message fiek "tekst" Path/file.ext --sender <tokeni>

Komanda read-message

read-message dekriptimi load encrypt
komanda me çelësin privat nga cmd ose file(opsionale)

Sintaksa :

sintaksa

$ ./ds.sh read-message "mesazhi i enkpritum"

$ ./ds.sh read-message Path//file.ext(File në të cilin është ruajtur mesazhi enkriptuar)

$ ./ds.sh read-message blerim

$ ./ds.sh read-message <mesazhin e nenshkruar>

$ ./ds.sh read-message <mesazhin e nenshkruar>

References

Authors


Përshkrimi i projektit (Faza1,Faza2,Faza3) 
Regards Grupi27 (Sferat e Dragoit).
University of Prishtina "Hasan Prishtina",
Department: Computer Engineering.

About

Uni project in DataSecurity

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.7%
  • Other 0.3%