Ale spravi mi to aj cez prikazovy pri tomto pare. Tak asi tam pridam aj hash na porovnavanie s oroginalom.
Dakujem ti :D a sorry ze som otravoval s takou somarinou
Ahoj,
mam generator slov. Chcem si vyskusat, ako dlho by mi trval brute force na moj zasifrovany subor. Pouzivam Linux (Ubuntu 10.11). Subor som zasifroval pomocou openssl:
echo 4563 | openssl des -in cisty_text -out mesage -pass stdin
-in subor ktory posielam na sifrovanie
-out je zasifrovany subor
-pass stdin - nastavi heslo 4563 (v tomto pripade)
Ked chcem desifrovat pred -in sa da prepinac -d
Program mi vzdy skonci hned na prvom pokuse s chybou Floating point exception a neviem najst chybu.
Pravdepodobne mi to vzdy spadne na return_code = system(command);
Vopred Dakujem za vsetky rady.
#include <iostream>
#include <fstream>
#include <sstream>
#include <math.h>
#include <time.h>
#include <pthread.h>
#include <stdlib.h>
#define time_interval 10
using namespace std;
unsigned long word_counter = 0; //pocitadlo vygenerovanych hesiel
char allowed_characters[] = {'1', '2', '3', '4', '5', '6', '7', '8', '9', '0'}; //znaky pre generovanie hesla
int max_password_lenght = 5;
int size_of_allowed_characters = sizeof(allowed_characters) / sizeof(char);
time_t start_time;
pthread_t vlakno1, vlakno2;
int v1, v2;
int return_code;
unsigned long all_possible_passwords_count(){
unsigned long total_passwords = 0;
int password_size = max_password_lenght;
for (int i = password_size; i > 0; i--){
total_passwords += pow(size_of_allowed_characters, password_size);
password_size--;
}
return total_passwords;
}
void * trace_to_file(void *txt){
while ((int *)txt){
ofstream trace;
trace.open("trace.txt", ios::app);
unsigned long total = all_possible_passwords_count();
trace << "Total: " << total << " words" << endl;
trace << "Used (generated): " << word_counter << " words" << endl;
trace << "To end: " << total - word_counter << " words" << endl;
//ziskat cas
time_t current_time;
current_time = time(NULL);
//cas od zaciatku
trace << "Time from start: " << current_time - start_time << " seconds" << endl;
unsigned long finish = (total * (current_time - start_time)) / (word_counter);
trace << "Total time to finish (presumption): " << finish << " seconds" << endl;
trace << "--------------------------------------------" << endl;
trace.close();
sleep(time_interval);
}
}
void generate_next_word (string word){
if (word.length() <= max_password_lenght){
cout << "Test for password: " << word << endl;
string pass = "echo " + word + " | openssl des -d -in message -out de_mesage -pass stdin";
const char *command = pass.c_str();
cout << command << endl;
return_code = system(command);
if (return_code == 0){
cout << "OK password is: " << endl;
exit(0);
}
else if (return_code != 0) {
word_counter++;
string new_word;
for (int i = 0; i < size_of_allowed_characters; i++){
string add_character;
add_character = allowed_characters[i];
new_word = word + add_character;
generate_next_word(new_word);
}
}
}
}
void * call_start(void *txt){
for (int i = 0; i < size_of_allowed_characters ; i++){ //-lpthread
string word;
word = allowed_characters[i];
generate_next_word(word);
}
exit(0);
}
int main(){
start_time = time(NULL);
char pokus1[] = "text";
v1 = pthread_create( &vlakno1, NULL, &call_start, (void*)&pokus1);
int param = v1;
v2 = pthread_create( &vlakno2, NULL, &trace_to_file, (void*)¶m);
pthread_join(vlakno2, NULL);
//exit(0);
}
mozno najdes nejake clanky v CZ (resp. v SR ale to vidim skor na tu CZ v tom nas predbiehate :)) ale najviac ich bude stale v EN a kym sa najde niekto kto bud prelozi knihu alebo clanok a potom to este hladat da viac roboty ako ostat pri angline.
Mozno pomoze, ale necital som to :) :
http://www.minmax.cz/blog/google-android-tutorial/android-projekt-v-eclipse
Vsetky potrebne veci a aj tutorial mas na tejto stranke:
http://developer.android.com/
jeden lahsi tutor
http://www.anddev.org/hello_android_-_your_first_application-t31.html
a potom google ;)
mam ten isty problem no momentalne nemam cas sa na to viac sustredit , a identifikovat o co vlastne ide, preco tie binarky nefunguju na inom pc ako na tom ktorom bol skomilovany , alebo len na tom na ktorom je nahodene VS.
Snad by to mohol niekto vysvetlit preco vlastne tie binarky nefunguju, je to tym ze to je kompilovane pod VS2kX Express ?
Nasiel som par clankov, ak mas cas tak to skus checknut.
http://social.msdn.microsoft.com/forums/en-US/vcgeneral/thread/66bc8cab-c134-49a8-85e5-37ca9efbdeb4/
http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/36971526-95f3-4a9f-a601-1843c86332c1/
http://msdn.microsoft.com/en-us/library/ms235265(VS.80).aspx
sry nevedel som to ako pomenovat ..ale jj mas pravdu je to binarny zapis.
dik za comment :}
Ale potreboval by som s tym binarnym zapisom trosku help.
Vedel by si mi sem hodit nejaky priklad popripade nejaku funkciu z Cpp
ktora umoznuje takto prelozit z normalneho formatu do binarneho?
Zdravim aktualne sa zaujimam o programovanie hier v SDL,
no popri tom ma trapi jedna vec, kedze hru som nikdy pred tym nekodil
takze teoreticky aj viem co treba spravit ale neviem pomocou coho.
Ide o to ze do hry sa nacitavaju pozicie objektov a informacie o objektoch
zo suboru, no momentalne tento subor je obycajne txt-cko :].
Chcel by som tento subor sconvertovat do nejakeho tvaru ktory by bol pre uzivatela neprecitatelny.
Skusal som to tymto sposobom pomocou binarneho modu v fstreame.
void write_to_binary_file()
{
Data nData;
fstream binary_file("test.dat",ios::out|ios::binary|ios::app);
binary_file.write(reinterpret_cast<char *>(&nData),sizeof(Data));
binary_file.close();
}
podle mne by si mal zacat od najjednoduchsieho prog. jazyka.
ja som zacinal PHP / Linux Bash ,viem ze bash je scriptovaci jazyk
ale myslim ze je to dobry zaciatok pre ludi ktory potrebuju pochopit
syntax a preskusat si niektore cykly,podmienky ...atd ..
podla mna zaklad je pochopit chovanie cykov ..poznat premenne a ine zavyslosti.
Potom mozes na nieco vyssie. Podla mna ak je sikovny tak to stihne v pomerne kratkej dobe.
Myslim ze nemoze nikto povedat presny cas kolko mu to zaberie , take nieco ako niekto
kecal hore ze po roku nech prejde na Cpp .. to je somarina podla mna to by si mal stanovit sam clovek a odvodit to podla toho ci pochopil o vsetko co je potrebne. Niekomu to trva 2 mesiace , niekomu 2 roky..atd ..
Ale ak uz budes prechadzat z nejakeho jednoduchsieho prog. jaz. tak id na C++ podla mna je ovela pochopitelnejsie, a mas k nemu vela pochopitelneho manualu aj vo svojom jazyku.
Na tuto temu ma kazdy iny nazor, lebo nie vsetci sme zacinali rovnako.
Takze nepytaj sa druhych na nazor ale rob to podla toho co chces v buducnosti dosiahnut alebo sa skor pytaj ktory jazyk sa oplati ucit ak s nim chces uspiet aj v buducnosti.
Have FUN!
All the best Alexey :]
mno nekdy se treba pohrat s nahozenim a nastavenim spravnych ovladacu ..
ja mam na svem NB ati xpress 1150 a na to jak je stara tak se mi podarilo spoojazdnit 3d akceleraci..
I kdiz jsem prestudoval dost webu a zjistil si o tom vic..ale tobe bych radil totez :] .. mno ale tak az dojdu domu tak ti postnu sem nejake stranky kde by jsi moh najit nejake dobre info ..
To Zelenáč :
myslim ze vsechno co v tom souboru potrebujes je ..
auto lo
iface lo inet loopback
iface eth1 inet static
address 192.168.172.198
netmask 255.255.255.0
gateway 192.168.172.1
auto eth1
auto lo
iface lo inet loopback
auto eth1
iface eth1 inet dhcp
Mandriva je total nepouzitelna ..podle mne kdiz chces pak pokracovat v duchu IT ..tak skus nejaky debianlike distro nebo redhad napr Fedora.. tie sa u nas v IT najviac pouzivaju .. Suse je bordel..a to uz nevravim ked to niekto spoji s KDE .. tak omg..spravujem podobny server kde bezi oracle..ale tak nechcem vam napisat ten 10 metrovi zoznam nadavok ked sa tam napajam.. je to proste user-friendly ale pre administraci vubec ne.. rek bych ze jen na takove desktopove lamky..
na moj nb byla odporucena jaka kolvek distribuce Suse od 9.x verze .. ale kdiz sem tam hodil Suse tak muj nb zacal chorobne blbnout..a nic nebylo stabilne.. a ovladace nainstalovat a sehnat..fuuu to by byla dalsi kniha jak sem se k nim dostal... Novell at si nadalej podpisuje smlouvi s MS ...
tiez by som povedal takto ako vravi mates..
a uplne mozes vynechat escubovu teoriu postupnosti distribucii..akoze neviem ako ty kamarad ale uz ked sa naucis pracovat v terminaly tka naco ti striedat distra?? ..chaps ty vobec co je linux? .. zase vsetci vidite linux ako graficke prostredie.. ale to nieje ono ..
vsechno se da v Linuxu jen je treba vedet ako .. naco kupovat nejaky zatrhly system .. teda sry tak se zeptam kolik z vas co tu chvalilo linux ma oficialny win.. a budeme doma.. tak ani sami nevite ze velke procento i kdiz ma zakoupeny win tak uz urcite poorusilo nejednu podminku v Licencni smlouve ... jen si ji skuste procist celu mam dojem ze ji 90% z vas ani necetlo ..
Linux je univerzalni operacny system.. I kdiz ten vysla Vista ale ja se na to divam jako ze serverovske strany..kdiz uz vyhodil novy MS Win. Server naco je tam proboha Aero?? .. lol... coz na linuxu nemate s tim problem ... Univerzalni OS rikam proto Linuxu protoze se da vyuzit jak na provozovani serveru , tak na spracovani grafiky, tak i na kazdodenne pouzivani, jednoznacne na programovani..A kdiz uz ne kvuli tomu tak uz jen kvuli bezpecnosti.. jen si prosimvas nepredstavujte Linux jako si ho predstavuji tvurci KDE .. tohle je jen pro pitomce co se nevedi zorientovat po prechodu z Win->Lin.. Opravdovi Linux je Terminal a Bash/Shell scripty ..zaadne okinka..zadne klikanky...
Vidim ze kazdy by ocenil mit programy z Win na Linuxu ..ale to je bez pouziti nejakeho emulovaneho win prostredi nemozne..
Ale na internetu existuje spousta alternativ. Taky pouzivam win ale jen pro jedinou vec. Visual Studio.. v Linuxu nejsou takove IDE prostredi ktere by mohli konkurovat tomuhle nastroji.. ale to beru z hledicka editoru a features ktere ma.. protoze scompilovat si to radeji skompiluji v Linuxu .. to ze nema takovou podporu v hracha programech neznamena ze lidi na tom nepracuji aby se i pod linuxem zrodili veci jako jsou ve windowse ..
Sry za ostre kritizovani Winu ale ja nepodporuji komerci ..
int checkkv(int c);
void tvojefun(int y, int x, const char* filename){
std::fstream nazevtoku(filename);
int cnt = 0;
if (y>0 && x>0) cnt = 1;
else if (y>0 && x<0) cnt = 2;
else if (y<0 && x<0) cnt = 3;
else if (y<0 && x>0) cnt = 4;
nazevtoku <<"\n"<<cnt<<".kv = "<<checkkv(cnt);
}
int checkkv(int c){
switch(c){
case 1: prvykv; break;
case 2: druhykv; break;
case 3: tretikv; break;
case 4: stvrtykv; break;
default : 0;
}
}
mensi uprava
btw ty prvy,druhy..tretikv ..co to je? ..to se jeste urcite da zjednodusit.
ale to snad srandujes :]
http://programujte.com/index.php?akce=clanek&cl=2005111902-sdl-7-lekce
SDL_SetAlpha(surface_name, SDL_SRCALPHA, 100);
miesto hodnoty 100 nahradis inu v rozsahu 0-255 kde 255 je maximalna priehladnost ;]
all the best Alexey
strasny offtopic..klikatka hledat v sekci pro C#/C++ ..
Odporucal by som postupne ist od klasickej konzoly k SDL a az potom k OpenGL,,
konzola -> 2D(SDL) -> (2D/3D) OpenGL ----> DirectX
ale ked uz ides podla nejakeho manualu tak je dobre si vyskusat
nieco sam z vedomosti ktore si doposial zyskal, Aby si neostal len u tych uloh z manualov.
Takto sa to lepsie naucis a ciastocne pochopis to dianie.
Hlavne zabudni na GM a tie drop'n'drag bludy.