Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Offuscamento codice C

    Ciao a tutti,
    mi sono iscritto a questo forum perchè ho un problema e sono sicuro di trovare persone esperte di programmazionein questo forum.

    Devo scrivere un programma molto semplice che mi dia 3 numeri come output. devo usare anche le function e magari anche puntatori.
    Ho provato a fare un pezzo di codice:

    #include <stdio.h>
    #include <stdlib.h>

    int b,c;
    int a=5;

    int F1(int a)
    {
    int F2(int* b);
    a=4;
    b=3;
    return (a+2*b*F2(&b));
    }

    int F2(int* b)
    {
    int c=15;
    *b=*b+a+c;
    }

    int F3(int* c)
    {
    a=1;
    b=65;
    c=&a;
    *c= *c+b+a;
    return *c;
    }

    int main()
    {
    int c=5;

    F1(b);
    printf ("%d\n",a);

    printf("%d\n",F2(&c));

    F3(&a);
    printf ("%d\n",a);

    system("pause");
    }


    Ecco arrivato a questo punto devo rendere incomprensibile il codice scitto qua sopra,cioè offuscare il codice e sinceramente non ho la più pallida idea di come si possa fare una cosa del genere.
    Se qualcuno ha delle idee per farlo e se gentilmente mi spiega anche come si fa questa "conversione", lo ringrazio di cuore perchè veramente non so dove iniziare.
    Se avete qlc proposta per migliorare il codice qui sopra riportate, vi prego di postarlo.
    Cordiali saluti,
    alberto

  2. #2

    Re: Offuscamento codice C

    Originariamente inviato da albi1945

    Ecco arrivato a questo punto devo rendere incomprensibile il codice scitto qua sopra,cioè offuscare il codice e sinceramente non ho la più pallida idea di come si possa fare una cosa del genere.
    Se qualcuno ha delle idee per farlo e se gentilmente mi spiega anche come si fa questa "conversione", lo ringrazio di cuore perchè veramente non so dove iniziare.
    Se avete qlc proposta per migliorare il codice qui sopra riportate, vi prego di postarlo.
    Cordiali saluti,
    alberto
    E' già offuscato e pregno d'errori a sufficienza (ok formalmente sono dei warning). Non ti preoccupare, nessuno te lo copierà.
    Soprattutto se non usi i tag code o php.
    ;-)

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,468
    Perdonami albi, ma a parte gli errori, cosa vuoi dire con "offuscare" ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  4. #4
    con offuscare intendo renderlo meno comprensibile possibile al lettore.quindi complichiamo il codice usando puntatori. e magari altri metodi (che io non conosco, e non so neanche se esistano) per renderlo il meno comprensibile possibile...
    quali errori ho commesso? quando inserisco il codice in devC++ non mi da affatto errore.
    cmq più consigli mi date su come migliorare questo codice più mi aiutate, perchè io di programmazione capisco molto molto poco; devo solo dare un esame e poi non la vedrò più penso...
    grazie ciao

  5. #5
    normalmente non c'è nessuna ragione di offuscare un sorgente c o c++, perchè è sufficiente non distribuirlo. Alcune volte si offusca il codice per impedire che il decompilato sia in qualche maniera comprensibile ma sono tecniche che io non conosco, fai una rapida ricerca su google.
    ciao
    sergio

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,468
    Originariamente inviato da albi1945
    con offuscare intendo renderlo meno comprensibile possibile al lettore.quindi complichiamo il codice usando puntatori. e magari altri metodi (che io non conosco, e non so neanche se esistano) per renderlo il meno comprensibile possibile...
    Intanto non capisco il motivo di una cosa del genere e penso proprio che non abbia senso ...

    A chi dovresti rendere incomprensibile il codice sorgente?

    E poi, qualunque cosa tu faccia, un programmatore anche novizio, saprà sempre leggere il sorgente ...

    Proprio non capisco ...

    quali errori ho commesso? quando inserisco il codice in devC++ non mi da affatto errore.
    Aveva detto dei warning ... ad esempio, indicare

    int F2(int* b);

    all'interno della F1, non ha senso ... la dichiarazione della F2 dovrebbe stare fuori ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    è un esercizio per casa, dato dagli esercitatori all'uni.
    capisco che per un programmatore sarà una banalità leggere un codice del genere,
    ma per una persona che di informatica o meglio di programmazione non ci capisce molto risulta incomprensibile.
    non so perchè bisogna farlo, devo consegnarlo e basta, qualche scopo ce l'avrà se ce lo fanno fare....
    Cmq grazie per le risposte.

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,468
    Originariamente inviato da albi1945
    ... per una persona che di informatica o meglio di programmazione non ci capisce molto risulta incomprensibile ...
    Se uno non ne capisce nulla di programmazione, anche il codice "chiaro" non lo capisce ...

    non so perchè bisogna farlo, devo consegnarlo e basta, qualche scopo ce l'avrà se ce lo fanno fare....
    Ho dei forti dubbi in merito ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    beh allora non so più che dire...
    lo devo fare e basta, se fosse per me ne farei anche volentieri a meno, piuttosto vorrei imparare a creare siti;
    però che posso fare? all'uni me lo richiedono e io lo devo consegnare...consegnerò quello che ho scritto sopra; ho modficato la chiamata di F2 mettendelo al di fuori di F1.
    grazie
    ciao

  10. #10
    togli tutte le indentazioni o indenta in maniera sbagliata,
    dai alle variabili nomi non significative o forvianti,
    scrivi più istruzioni sulla stessa riga separandole da ;,

    ciao
    sergio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.