Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- IxPack Encryption algorithm
- Algorithm copyright by Narzew.
- All rights reserved.
- Potrzebne liby: Zlib
- $klucz_archiwum = losowa liczba od 0 do 0xFFFFFF
- $klucz_tajny = podany przez usera, jeśli nie podał to msv739fc1
- Funkcja: transformuj_klucz(x -> klucz){
- r = 0
- c = 1
- y = x zaszyfrowany jednostronnie funkcją crypt z parametrem ("#{$klucz_tajny}-#{$klucz_archiwum}")
- co każdy bajt y (kod ascii bajtu y) {
- r += c*256
- c += 1
- }
- r = r % 0xFFFFFF
- zwróć r
- }
- Funkcja: zaszyfruj_sciezke(x -> scieżka, k-> klucz){
- k = transformuj_klucz(k)
- wygeneruj ziarno dla generatora pseudolosowości transformuj_klucz(k)
- s = ""
- co każdy bajt x (jako kod ASCII){
- dopisz do zmiennej s wynik ((b+losowa_liczba_z(999999)+7+k-transformuj_klucz("#{$klucz_archiwum}+#{$klucz_tajny}"))%256).chr
- .chr na końcu oznacza zamianę kodu ASCII na literę.
- k = (k*6+4)%0xFFFFFF
- wygeneruj ziarno dla generatora pseudolosowości k
- }
- zwróć s
- }
- Funkcja: stworz_archiwum(x -> tablica z listą plików, y-> nazwa archiwum){
- $result = ["IXP1",$klucz_archiwum,[]]
- co każdy plik z listy plików { x co jako nazwa elementu tablicy
- nazwa = szyfruj x jednostronnie crypt ("#{$klucz_archiwum}.#{$klucz_tajny}")
- nazwa2 = szyfruj x jednostronnie crypt ("sfn9as8fh#{$klucz_tajny},#{$klucz_archiwum}$")
- data = odczytaj zawartości pliku o nazwie x
- data = skompresuj Zlibem zawartość data
- data = zaszyfruj_sciezke(data,nazwa)
- Dopisz do tablicy result tablicę [nazwa2, data]
- }
- $result = konwertuj $result z tablicy na ciąg (zdumpuj)
- zapisz w pliku y zawartość $result
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement