Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve
Dopo quasi un mese di utilizzo quotidiano e un viaggio medio-lungo in autostrada, raccontiamo pregi e limiti della Geely EX5: comfort premium, batteria LFP da 60,22 kWh, autonomia fino a 430 km e un prezzo che parte da 38.900 €
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare
Mova Z70 Ultra Complete è un robot aspirapolvere che coniuga un'aspirazione potente e un lavaggio con rullo a logica di intelligenza artificiale che guida al meglio nella pulizia di casa: rulli e spazzole estensibili a pulire gli angoli e una base di ricarica che lava e ripristina il robot al emglio delle sue funzionalità dopo ogni azione di pulizia
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Abbiamo provato Google Pixel 11, il più accessibile della nuova gamma: chip Tensor G6 condiviso con i modelli Pro, fotocamera 48 MP con Magic Capture e Stili Fotografici, display Actua da 3000 nit e batteria da 4985 mAh. Ecco come si comporta nell'uso quotidiano, e cosa cambia davvero rispetto a Pixel 11 Pro e Pro XL
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 02-03-2003, 17:03   #1
Krakz
Senior Member
 
Iscritto dal: Nov 2002
Messaggi: 173
[C] Cryptare e decriptare

questo codice è stato modificato da P8257 WebMaster
risolve il problema del gets , ma adesso non funziona piu la funzione Decrypt (cioè da valori sballati)

Codice:
# include <stdio.h> 
# include <string.h> 
# include <stdlib.h> 
# include <conio.h>

/*
Name: CRYDEC TOKI
Author: KRAKZ 
Date: 25/02/03 23.08 
Description: CRYPTA E DECRYPTA
LICENZA : GNU|GPL 
VERSIONE : 1.0
RINGRAZIAMENTI :  P8257 WebMaster ,
 */ 

void  crypt (void)   ;
void  decrypt (void) ;

# define MAX 255 

int main (void)
{   
     printf ("                *** BENVENUTO SU CRYDEC VERSIONE 1.0 ***\n\n\n") ;
     printf ("SELEZIONA UNA DELLE OPZIONI\n\n")          ;
     printf ("1 - Crypta\n")      ;
     printf ("2 - Decrypta\n")    ;
     printf ("3 - Info autori\n") ;
     printf ("Digita 1, 2 o 3 ");
     while (1)
     {
         switch(getch()) {
                             case 0+'1': crypt () ;
                             break         ;

                             case 0+'2': decrypt () ;
                             break           ;
    
                             case 0+'3': printf ("Krakz") ;
                             break         ;

                             default: exit(0);
                    }
       }
  return 0;
}


void  crypt (void)
{ 
  int    i, I = 0 , countchiave , countfrase , crypt[MAX]  ; 
  
  char frase[MAX]="\0" , chiave[MAX]="\0" , nomefile[10]="\0" ; 
  
  FILE *cfPtr , *apri ;

  printf ("Benvenuto su crypt 0.5\n") ;
       
  printf ("Inserisci frase\n") ; 
  gets(frase) ; 
  printf ("Inserisci chiave\n") ; 
  gets(chiave) ;
  printf ("Salva con nome\n")  ;
  gets(nomefile) ;
  

  countfrase = strlen(frase) ;       /* VERIFICA LA LUNGHEZZA DELLE STRINGHE */
  countchiave = strlen(chiave) ; 

  for ( i = 0 ; countfrase > i ; i++) /* CONTROLLA CHE TUTTA LA STRINGA SIA CRIPTATA */
   
   
       { 

         if ( countchiave < I)  I = 0 ;;   /* CONTROLLA SE SONO STATE UTILIZZATE TUTTE LE LETTERE DELLA CHIAVE 
                                    SE VEDE CHE SONO STATE USATE TUTTE , RESETTA IL TUTTO PARTENDO 
                                    DALLA PRIMA LETTERA */

                     crypt[i] = chiave[I] + frase[i] ; /* CRIPTA LA STRINGA */

        if ((cfPtr = fopen( nomefile , "a")) == NULL)
                    
                    printf("File gia aperto\n");



        if ( crypt[i] < 100 )    fprintf(cfPtr, "0" ) ;;   /* VERIFICA CHE IL VALORE DATO SIA MAGGIORE DI 100
                                                     E SE RISCONTRA UN VALORE MINORE DI 100 AGGIUNGE
                                                     IL VALORE 0 */
        fprintf(cfPtr, "%d",  crypt[i] );                /* STAMPA LA FRASE CRIPTATA */
                                      
                 
        I = 1 + I ;                                      /* REALIZZA UNO SHIFT A DESTRA */
 
        } 
        
  fprintf(cfPtr, "\n\n\nUsa decrypt per vedere il testo\n\n" ) ;
  fprintf(cfPtr, "\n\n\nVersione programma 1.0\n\n" ) ;
  fprintf(cfPtr, "\n\n\nwww.toki.it\n\n" ) ;
  printf ("Il file testo è stato cryptato , per decryptarlo") ; 
  
  getch();
  
}

void   decrypt (void)
{ 
  
  int I=0 , i , countfrase , countchiave , dEcrypt[MAX] , de = 0 ; 
  char frase[MAX]="\0" , chiave[MAX]="\0" ; 



  printf ("Inserisci File Cryptato\n") ; 
  gets(frase) ; 
  printf ("Inserisci chiave\n") ; 
  gets(chiave) ; 


  countfrase = strlen(frase) ; 
  countchiave = strlen(chiave) ; 

  for ( i = 0 ; countfrase > i ; i = 3 + i) 
            
      { 
          if ( countchiave < I) 
                       I = 0 ;; 

          dEcrypt[de] = (frase[i]* 100 + frase [i+1] * 10 + frase [i+2] +48 ) - chiave [I] ; 
          
          printf ("%c" , dEcrypt[I]) ; 
          I = 1 + I ; 


       }
        getch();
}
qualcuno sa come risolvere il problema ?????????
__________________
powered by Mandrake - You are registered as user #335131 with the Linux Counter
Krakz è offline   Rispondi citando il messaggio o parte di esso
Old 02-03-2003, 17:10   #2
Krakz
Senior Member
 
Iscritto dal: Nov 2002
Messaggi: 173
problema risolto
potete chiudere il 3d
__________________
powered by Mandrake - You are registered as user #335131 with the Linux Counter
Krakz è offline   Rispondi citando il messaggio o parte di esso
Old 02-03-2003, 17:51   #3
ultio
Bannato
 
L'Avatar di ultio
 
Iscritto dal: Feb 2003
Città: genova
Messaggi: 130
ricordati che un cifrario in one time pad per essere inviolabile deve avere la chiave della stessa lunghezza del testo in chiaro.
nel momento in cui riazzeri il conto e riparti dall'inizio della chiave crei un buco nella sicurezza del codice.
ciauz
ultio è offline   Rispondi citando il messaggio o parte di esso
Old 02-03-2003, 19:31   #4
Krakz
Senior Member
 
Iscritto dal: Nov 2002
Messaggi: 173
ho capito gia ho trovato un paio di bugs
__________________
powered by Mandrake - You are registered as user #335131 with the Linux Counter
Krakz è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre Recensione Google Pixel 11: non ha l'HiLight dei...
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship Google Pixel 11 Pro XL: fotocamera al top, batte...
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti Non sai programmare? Ecco cosa si può far...
GTA 6 è in sviluppo dal 2015, ma ...
BYD vola all'estero: l'export a +68%, e ...
Corretta falla grave sulla distribuzione...
The Elder Scrolls 6: Asha Sharma
Windows 11, l'aggiornamento KB5120998 po...
PC spariti e almeno tre studio derubati ...
SK hynix guarda al Giappone: allo studio...
Lucid e "rischio incendio": il...
WhatsApp, allarme dalla Polizia: non ser...
Base-Die per HBM4E, SK hynix guarda a In...
L'algoritmo prevede le fratture del femo...
Anche Xiaomi avrà il suo Privacy Display...
100 TB di RAM 'nascosti' nella cache DNS...
Scontato di 250€ diventa un anti MacBook...
Tamagotchi diventa un anello: Bandai pre...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:15.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v