Typy danych dotyczące liczby i znaków

2015-02-05 22:58
0

Witam.Zamierzam w swoim programie zrobić coś w stylu klucza licencyjnego, który musiałby użytkownik podać przy każdym uruchomieniu programu, aby zyskać dostęp do innych funkcji.Moje pytanie brzmi:Jaki typ danych zastosować do liczb i znaków?Jeśli przykładowy klucz wyglądałby tak:
U76KG-H65JF-JC8CR

Nie używaj prefiksów/postfiksów w tytułach wątków - od podawania nazwy języka/technologii są tagi; - furious programming 2015-02-06 00:19

Pozostało 580 znaków

2015-02-05 23:02
1

Najwygodniej std::string.

edytowany 1x, ostatnio: abbq, 2015-02-05 23:04
Wystarczy że otworzysz exe w notepadzie i wtopa ( jak będzie hard-coded ). - Proxima 2015-02-05 23:04
@Proxima - o HexEdytorach słyszałeś? - furious programming 2015-02-06 00:20
słyszałem, ale nigdy w praktyce nie robiłem takich rzeczy. - Proxima 2015-02-06 00:33

Pozostało 580 znaków

2015-02-05 23:18
0

@Proxima Właśnie sprawdziłem bo nawet nie wiedziałem ze tak się da. Wiec może char* ? Z tego co sprawdziłem nie można podglądnąć. Ewentualnie tablica intów z kodami asci, dla początkującego powinno wystarczyć

edytowany 2x, ostatnio: abbq, 2015-02-05 23:34
Nie znam sie zbyt na takim ukrywaniu w plikach danych. IMO operacje bitowe na incie były by ok. - Proxima 2015-02-05 23:22
Może dodatkowo jeszcze jakieś proste szyfrowanie i git. - abbq 2015-02-05 23:24
No ja to się przeraziłem. W jaki cudowny sposób ma char* ukryć podany ciąg? Przecież to absurd. Ale może ja nie będę się wypowiadał bo się po prostu nie znam... - Tacet 2015-02-05 23:30
@Tacet Tak strzeliłem. Ale tablica ascii z szyfrowaniem powinna być ok dla amatora. - abbq 2015-02-05 23:32
Już poleciłbyś funkcje skrótu... Nie, że to zabezpieczy ten program, ale jakoś by to wyglądało... - Tacet 2015-02-05 23:44

Pozostało 580 znaków

2015-02-05 23:39
1

Ewentualnie tablica intów z kodami asci

Przecież to jest dokładnie to samo co wszystko powyżej.
Różni się najwyżej dodatkowym paddingiem, jeżeli sizeof(int) > sizeof(char)


Jak on i ja zdobędziemy doświadczenie wymyslimy bezpieczniejszy sposób. Na razie jestem za jakimś prostym szyfrowaniem ascii. Popsujesz mu tylko chęć do programowania skomplikowanymi rzeczami które i tak da się złamać - abbq 2015-02-05 23:43

Pozostało 580 znaków

2015-02-05 23:58
0

Czyli jak mniej więcej wyglądałby kod z metodą szyfrowania ASCII?Nie pisałem programów z 2 lata, większość rzeczy zapomniałem i dzisiaj postanowiłem wrócić do c++.Powiedzmy, że przy użyciu pierwszej metody (std::string) mam taki kod :

#include <iostream>
int main()
{
    std::string a;
    std::cin >> a;
    if ( a == "HR87" )
    std::cout <<"witam!";
    else
    std::cout <<"run";
    return 0;

}

Jak wprowadzić szyfrowanie?

edytowany 1x, ostatnio: blazej222, 2015-02-05 23:59
poczytaj o xor - Proxima 2015-02-06 00:09

Pozostało 580 znaków

2015-02-06 00:26
0

Znalazłem coś takiego:

void xorproc(char* array, char key, int size)
{
    int n=0;
    while(n<size)
    {
        array[n]=array[n]^key;
        n++;
    };
    return;
} 

Czyli w moim przypadku wyglądałoby tak:

void xorproc(char* array, char key, std::string size)
{
    std::string n=hr87;
    while(n<size)
    {
        array[n]=array[n]^key;
        n++;
    };
    return;
} 

?
Nie znam się na tym, nigdy czegoś takiego nie robiłem, więc proszę o pomoc

edytowany 3x, ostatnio: blazej222, 2015-02-06 00:28
Nie znasz podstaw języka, w którym piszesz, więc zacząłbym od nauki jego. Ale znalazłeś działającą funkcję xorującą. Nie wiem co z tego wynika, ale tak. Po zmianach jest bezsensowna. W ogóle sprawdziłeś czy ona się kompiluje? O ile warunek pętli jest poprawny (jeśli chodzi o składnie języka) to (char*)[std::string]? Nie wiem jak ma się kompilować... - Tacet 2015-02-06 00:41

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0