Пример #1
0
        /// <summary>
        /// Metoda koja služi za enkripciju datoteke.
        /// Prvo se izgenerira ključ i inicijalizacijski vekor pomoću kojih se aes algoritmom enkriptira sadm sadržaj datoteke.
        /// Zatim se izgenerirani ključ enkriptira pomoću rsa algoritma i to zahvaljujući javnome ključu koji se prosljeđuje
        /// samoj metodi.
        /// </summary>
        /// <param name="file"></param>
        /// <param name="javniKljuc"></param>
        /// <returns></returns>
        public static EnkripcijskiPaket EncryptFile(byte[] file, string javniKljuc)
        {
            EnkripcijskiPaket novi = new EnkripcijskiPaket();
            AesEnkripcija     aes  = new AesEnkripcija();
            Enkripcija        rsa  = new RsaEnkripcija();

            rsa.PridruziJavniKljuc(javniKljuc);
            aes.GenerirajKljucIV();

            novi.Iv = aes.DohvatiIV();
            novi.PridruziDatoteku(aes.EncryptFile(file));
            novi.EnkriptiraniKljuc = rsa.EncryptData(Convert.ToBase64String(aes.DohvatiAESKljuc()));

            return(novi);
        }
Пример #2
0
        /// <summary>
        /// Metoda koja služi za enkripciju poruke s obzirom na sam sadržaj poruke.
        /// Prvo se izgenerira ključ i inicijalizacijski vekor pomoću kojih se aes algoritmom enkriptira sadm sadržaj poruke.
        /// Zatim se izgenerirani ključ enkriptira pomoću rsa algoritma i to zahvaljujući javnome ključu koji se prosljeđuje
        /// samoj metodi.
        /// </summary>
        /// <param name="poruka"></param>
        /// <param name="javniKljuc"></param>
        /// <returns></returns>
        public static EnkripcijskiPaket EncryptData(string poruka, string javniKljuc)
        {
            EnkripcijskiPaket novi = new EnkripcijskiPaket();
            Enkripcija        aes  = new AesEnkripcija();
            Enkripcija        rsa  = new RsaEnkripcija();

            rsa.PridruziJavniKljuc(javniKljuc);
            aes.GenerirajKljucIV();

            novi.Iv = aes.DohvatiIV();
            novi.EnkriptiraniPodaci = aes.EncryptData(poruka);
            novi.EnkriptiraniKljuc  = rsa.EncryptData(Convert.ToBase64String(aes.DohvatiAESKljuc()));

            return(novi);
        }