Compare commits
2 Commits
e24c8f8b7a
...
7830fe53bc
| Author | SHA1 | Date | |
|---|---|---|---|
| 7830fe53bc | |||
| b24981edcb |
12
DOCS.md
Normal file
12
DOCS.md
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# Документация на VIPRE-CRYPTOR
|
||||||
|
- [Установка](#установка)
|
||||||
|
## Установка
|
||||||
|
Зависимости для компиляции:
|
||||||
|
- GCC
|
||||||
|
- GNU Make
|
||||||
|
- Git
|
||||||
|
Установка:
|
||||||
|
```bash
|
||||||
|
cd ~
|
||||||
|
git clone https://gitlabor.ru/German/vipre-cryptor.git
|
||||||
|
cd vipre-cryptor
|
||||||
@ -1,4 +1,3 @@
|
|||||||
## VIPRE-CRYPTOR
|
## VIPRE-CRYPTOR
|
||||||
Программа шифрования данных.
|
Программа шифрования данных.
|
||||||
Документация пока не доступна.
|
Документация [здесь](https://gitlabor.ru/German/vipre-cryptor/src/branch/main/DOCS.md).
|
||||||
Вызовите ```vipre-cryptor --help``` для получения информации.
|
|
||||||
|
|||||||
@ -1,3 +1,3 @@
|
|||||||
./vipre-cryptor --sig database.sig
|
./vipre-cryptor --sig key_file.sig
|
||||||
./vipre-cryptor --create-user my_usr.bin database.sig -f example.txt
|
./vipre-cryptor --create-user user_name.bin key_file.sig -f example.txt
|
||||||
./vipre-cryptor --user my_usr.bin database.sig -f example_out.txt
|
./vipre-cryptor --user user_name.bin key_file.sig -f example_out.txt
|
||||||
|
|||||||
BIN
database.sig
BIN
database.sig
Binary file not shown.
@ -1,3 +0,0 @@
|
|||||||
admin
|
|
||||||
00000000
|
|
||||||
‹ο‹y‹‹“‹<E2809C>‹¬<E280B9>V‹J‹`<60>5<EFBFBD>λλλλ‹»λ‹ελ‹v‹<76>‹“<E280B9>Ο‹—‹—λ~λ<>Ο‹“‹<E2809C>‹—‹ε‹yT<79>λλλλ‹»λ‹‹y‹`‹yλ‹`‹y‹‹yT<79>λλλλ‹»λ‹‹“<E280B9>Ολ‹J‹<4A>λ<EFBFBD>'‹`‹—‹<E28094>λ~λ‹θ<E280B9>V<EFBFBD>5<EFBFBD>Ο‹yλ<79>Ο<EFBFBD>5<EFBFBD>Vλ‹θλ‹<CEBB>‹—‹`<60>'λ‹<CEBB>‹J<E280B9>Ο‹“‹‹yTλΕ‹4Tλ‹2‹y‹3‹“<E280B9>ά‹θ‹“‹<E2809C>ϊ<EFBFBD>
|
|
||||||
3
user.bin
Normal file
3
user.bin
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
admin
|
||||||
|
1234
|
||||||
|
ŹÍ–ZŹŽ5–ô*$–¤* –ń[iń–Ań–•ń–eŹß›ŁŢŹűť[dńŁŢŹŽ5–͖ń[iń–Ań–ZŹUš–Ůń–¤ŹU–Ůôiń[iŹ|iʏ›ŁŢ•[–ńŁşŹcť–ńiŹ/ů»Ło*ZÍ[ůŁo*$iŹ/iŹßť–¤*iŹßŁŢŹŽ–Ůô[ŹTń–ăŹU –*üž–ŹjA
|
||||||
BIN
vipre-cryptor
BIN
vipre-cryptor
Binary file not shown.
@ -78,7 +78,7 @@ unsigned int __generate_hash(char* str) {
|
|||||||
size_t max = strlen(str);
|
size_t max = strlen(str);
|
||||||
while (pos < max) {
|
while (pos < max) {
|
||||||
ret += (unsigned char)str[pos];
|
ret += (unsigned char)str[pos];
|
||||||
if (ret > 65000) ret = 0;
|
if (ret > 65000) ret = ret / 10;
|
||||||
pos ++;
|
pos ++;
|
||||||
}
|
}
|
||||||
if (ret == 0) ret ++;
|
if (ret == 0) ret ++;
|
||||||
@ -94,6 +94,25 @@ signed short int __find_arr_index(char val, char* arr, size_t len) {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void __refresh_dt(char* arr, size_t sz) {
|
||||||
|
sz --;
|
||||||
|
char save_dt = arr[sz];
|
||||||
|
unsigned int pos = sz - 1;
|
||||||
|
while (true) {
|
||||||
|
arr[pos + 1] = arr[pos];
|
||||||
|
if (pos) pos --;
|
||||||
|
else break;
|
||||||
|
}
|
||||||
|
arr[0] = save_dt;
|
||||||
|
}
|
||||||
|
|
||||||
|
void __refresh_data(char* arr, size_t sz, unsigned int to) {
|
||||||
|
while (to != 0) {
|
||||||
|
__refresh_dt(arr, sz);
|
||||||
|
to --;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int __create_sig(char* file) {
|
int __create_sig(char* file) {
|
||||||
size_t arr_len = abs(CHAR_MIN) + abs(CHAR_MAX) + 1;
|
size_t arr_len = abs(CHAR_MIN) + abs(CHAR_MAX) + 1;
|
||||||
char* arr = (char*)malloc(arr_len * sizeof(char));
|
char* arr = (char*)malloc(arr_len * sizeof(char));
|
||||||
@ -156,6 +175,7 @@ int __create_user(char* file, char* user_file, char* cry_file) {
|
|||||||
password[cnt] = c;
|
password[cnt] = c;
|
||||||
cnt ++;
|
cnt ++;
|
||||||
}
|
}
|
||||||
|
size_t cnt_save = cnt;
|
||||||
password[cnt] = '\0';
|
password[cnt] = '\0';
|
||||||
fputs("Repeat password: ", stdout);
|
fputs("Repeat password: ", stdout);
|
||||||
cnt = 0;
|
cnt = 0;
|
||||||
@ -167,6 +187,11 @@ int __create_user(char* file, char* user_file, char* cry_file) {
|
|||||||
}
|
}
|
||||||
cnt ++;
|
cnt ++;
|
||||||
}
|
}
|
||||||
|
if (cnt != cnt_save) {
|
||||||
|
puts("\033[1mvipre-cryptor: \033[91mThe password was repeated incorrectly!\033[0m");
|
||||||
|
free(arr);
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
||||||
fputs(user_login, wp); putc('\n', wp);
|
fputs(user_login, wp); putc('\n', wp);
|
||||||
fputs(password, wp); putc('\n', wp);
|
fputs(password, wp); putc('\n', wp);
|
||||||
fseek(fw, 0, SEEK_END);
|
fseek(fw, 0, SEEK_END);
|
||||||
@ -177,6 +202,7 @@ int __create_user(char* file, char* user_file, char* cry_file) {
|
|||||||
c = (char)getc(fw);
|
c = (char)getc(fw);
|
||||||
c = arr[(unsigned char)c];
|
c = arr[(unsigned char)c];
|
||||||
putc(c, wp);
|
putc(c, wp);
|
||||||
|
__refresh_data(arr, arr_len, abs(arr[0]));
|
||||||
count ++;
|
count ++;
|
||||||
}
|
}
|
||||||
free(arr);
|
free(arr);
|
||||||
@ -224,6 +250,7 @@ int __read_user(char* file, char* user_file, char* cry_file) {
|
|||||||
while (pos < data_size) {
|
while (pos < data_size) {
|
||||||
c = getc(up);
|
c = getc(up);
|
||||||
c = __find_arr_index(c, arr, arr_len);
|
c = __find_arr_index(c, arr, arr_len);
|
||||||
|
__refresh_data(arr, arr_len, abs(arr[0]));
|
||||||
putc(c, fw);
|
putc(c, fw);
|
||||||
pos ++;
|
pos ++;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user