Registrace nového uživatele     Návod     Kluby     Archív  Lopuchu     Lopuch.cz  

Lopuch, server nejen
pro botaniky

Lopuch.cz

Jméno:
Heslo:
Podpora LCD:
 
Klub C, C++ [ŽP: neomezená] (kategorie Programování) moderuje Šéf Lopuchu.
Archiv

Články

Jak bezpečně ukončit vlákno z DllMain
FastAllocPool - urychlení častých alokací a dealokací
Akce a zpráva jako objekt
Tuply v C++
Efektivní alokátor malých objektů a tady druhý a třetí díl
Šablony: Být vládce kvalifikátorů
Vracíme z funkce objekty
Základy komunikace mezi procesy (ve Windows)
Multiple Interface a Instance Factory
Multithreading v C++ (ve Win32)
  Nastavení klubu     Nastavení práv     Homepage     Anketa     Přítomní     Oblíbené     Lopuch     Kategorie  
autor: 
text: 
vyplnit a 
Help
 Titulek, text příspěvku  
Opište pozpátku následující text bez prostředního znaku: nublwku
[ 380 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  
bredy 31.1.2012 21:31  860
GumyshNo nevím, celá knihovna má zabalená 6MB a obsahuje několik desítek sifrovacích technik a hashovacích funkcí. Pořád si myslím, že někdo musel nad tím napsat nějakou jednoduchou nadstavbu. Nemám bohužel čas to zkoumat a testovat a ladit. Chtěl jsem jen jednoduše podepsat textový soubor tak, aby si desktopová aplikace ověřila, že je pravý a nezměněný, přičemž veřejný klíč bude napsán uvnitř binárky té aplikace (protože se dá extrahovat, nemohu použít jen tak nějaký salt k hashovací funkci).

Celá aplikace má cca 2MB. Přijde mi hloupé kvůli tomu instalovat XMB sdílených knihoven proto, abych si něco elektronicky podepsal.
gumysh 31.1.2012 17:52  859
OpenSSL by nevyhovovalo?
bredy 30.1.2012 10:47  858
Digitální podpis jednodušeZdar, hledám nějakou C/C++ knihovny pro _JEDNODUCHOU_ realizaci digitálního podpisu. Nechci žádnou knihovnu s tisíci a jednou funkcionalitou, ani žádný moloch mající po instalaci několik desítek megabajtů.

Má představa je, že tam budou hlavně tyto funkce
String signMessage(String message, String privateKey);
bool verifySign(String message, String sign, String publicKey);

a případně
void createKeyPair(String &privateKey, String &publicKey, [void *randomData....]);

Jde o proprietální software, není třeba, aby private a public key byly v nějakém ISO nebo IEEE, nebo whatever formatu. Pokud by to tam bylo, je to bonus navíc, ušetřil bych si nutnost generovat klíče mým softem, ale není to podmínkou. Klidně si ten program, co zavolá výše uvedenou funkci napíšu a budu jí distribuovat spolu s aplikací.
bredy 26.1.2012 20:07  857
hpp
huh huh 26.12.2011 17:59  856
Sekory [854]: To se týká hlavičkových souborů, které C++ "zdědilo" po C. Ty jsou dostupné buď jako <cxxxx>, kde je použit jmenný prostor std a pak jako <xxxx.h>, které žádný jmenný prostor nepoužívají.
sekory Sekory The journey of thousand miles - starts with a single step. 26.12.2011 16:06  855
standardních
sekory Sekory The journey of thousand miles - starts with a single step. 26.12.2011 15:20  854
Ok, já jsem právně něco takového četl, že verze s .h je alespoň u standartních hlavičkových souborů vyhrazena pro takové, které jsou zpětně kompatibilní s C. Zatímco bez *.h nikoli.
huh huh 26.12.2011 13:39  853
Sekory [852]: Čistě IMHO: pokud je aplikace založena na nějakém frameworku nebo součástí nějakého projektu, je dobré dodržovat jeho konvence; jinak je to jedno jakou příponu. Verzi bez přípony bych nepoužíval nikdy, ta je mírně nepraktická (ne všechny editory umí přiřadit syntax highlighter k prázdné příponě ap.); ono to má své historické důvody, proč jsou standardní hl. soubory bez přípony.
sekory Sekory The journey of thousand miles - starts with a single step. 26.12.2011 01:58  852
Jaký je "správný styl" nazývání hlavičkových souborů v c++? Jen název bez přípony (name) nebo s příponou h (name.h)?

Umí MS visual studio číslovat řádky tak, že vynechává prázdné řádky?
Aby to bylo jasné klasicky to MSVS dělá takhle:

1 kód
2
3 kód

a já chci:

1 kód

2 kód
huh huh 23.6.2011 14:31  851
JackeLee [850]: wow, konečně se někdo ozval :-) já už ani nedoufal :-)
Jinak jsi našel opravdu ty dvě ze tří, které jsem měl na mysli (+ ještě by tam šlo přidat nekontrolování návratových hodnot g_hash_table_*), ale ta hlavní chyba zůstala přehlédnuta. Byť je zajímavé, že v tomto případě se projeví jen na výpisu, nikoli na funkčnosti.
jackelee 23.6.2011 13:49  850
Chybí tam zavřít soubor, otázka je do které z těch kategorií chyb cos popsal to spadá. Další asi je, že může načíst jen řetězce ze souboru do 100 znaků a co je ta poslední chyba?
huh huh 14.5.2011 10:39  849
Jednoducha MikroSoutez :-)Ted mi doslo, ze ten kod obsahuje jednu oblibenou chybu, tak schvalne kdo ji objevi prvni. Nic za to nedostane :-) Krome toho je tam jedno drobne opomenuti, ktere nevadi a jedna vec, ktera je dobra jen do prikladu a ne do produkcniho kodu.

Pokud by nekdo chtel napovedu: v Pascalu by to fungovalo
themajkl themajkl All those moments will be lost in time - like tears in rain. 2.5.2011 06:06  848
Wow :-) Dík, já už jsem to mezitím vypsal natvrdo, což stačí pro nás, ale štve mě, že to není univerzální, takže to možná použiju, až to budu zase ohýbat :-)
huh huh 1.5.2011 23:59  847
makefile - nutno uzit tabulatory ne mezery
pokus:    pokus.c
    gcc -std=c99 pokus.c -o pokus -Wall -Wextra `pkg-config --cflags --libs glib-2.0`
huh huh 1.5.2011 23:56  846
Jsem se nudil :-)
#include <stdio.h>
#include <glib.h>

int main() {

    FILE *f = fopen("in.txt""rt");
    if (!f) {
        fprintf(stderr, "Cannot open in.txt");
        return 1;
    }
    

        
    GHashTable *table;
    table = g_hash_table_new_full(g_direct_hash, g_direct_equal, NULL, g_free);

    while(!feof(f)) {
        int i;
        char s[100];
        fscanf(f, "%x %s", &i, s);
        printf("%x, %s\n", i, s);
        g_hash_table_insert(table, GINT_TO_POINTER(i), g_strdup(s));
    }
    
    
    printf("Zadej hexa klic: ");
    int i;
    scanf("%x", &i);
    char* p = g_hash_table_lookup(table,  GINT_TO_POINTER(i));
    if (p) {
        printf("\n\n%s\n", p);
    } else {
        printf("\n\n%s\n""Neni");
    }


    g_hash_table_destroy(table);
    return 0;
}


[ 380 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  

(c) 2001-2011 Lopuch.cz   
Kontakt