first commit
This commit is contained in:
parent
e24c8f8b7a
commit
b24981edcb
@ -1,3 +1,3 @@
|
||||
./vipre-cryptor --sig database.sig
|
||||
./vipre-cryptor --create-user my_usr.bin database.sig -f example.txt
|
||||
./vipre-cryptor --user my_usr.bin database.sig -f example_out.txt
|
||||
./vipre-cryptor --sig key_file.sig
|
||||
./vipre-cryptor --create-user user_name.bin key_file.sig -f example.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);
|
||||
while (pos < max) {
|
||||
ret += (unsigned char)str[pos];
|
||||
if (ret > 65000) ret = 0;
|
||||
if (ret > 65000) ret = ret / 10;
|
||||
pos ++;
|
||||
}
|
||||
if (ret == 0) ret ++;
|
||||
@ -94,6 +94,25 @@ signed short int __find_arr_index(char val, char* arr, size_t len) {
|
||||
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) {
|
||||
size_t arr_len = abs(CHAR_MIN) + abs(CHAR_MAX) + 1;
|
||||
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;
|
||||
cnt ++;
|
||||
}
|
||||
size_t cnt_save = cnt;
|
||||
password[cnt] = '\0';
|
||||
fputs("Repeat password: ", stdout);
|
||||
cnt = 0;
|
||||
@ -167,6 +187,11 @@ int __create_user(char* file, char* user_file, char* cry_file) {
|
||||
}
|
||||
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(password, wp); putc('\n', wp);
|
||||
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 = arr[(unsigned char)c];
|
||||
putc(c, wp);
|
||||
__refresh_data(arr, arr_len, abs(arr[0]));
|
||||
count ++;
|
||||
}
|
||||
free(arr);
|
||||
@ -224,6 +250,7 @@ int __read_user(char* file, char* user_file, char* cry_file) {
|
||||
while (pos < data_size) {
|
||||
c = getc(up);
|
||||
c = __find_arr_index(c, arr, arr_len);
|
||||
__refresh_data(arr, arr_len, abs(arr[0]));
|
||||
putc(c, fw);
|
||||
pos ++;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user