Questo metodo valido / sicuro per la crittografia delle comunicazioni client-server?

3

Mi è venuto in mente qualcosa, e mi chiedo se questo sia il metodo corretto per la comunicazione client-server e se questo metodo è ampiamente utilizzato.

Durante la connessione, il client genera seed, lo crittografa utilizzando l'algoritmo asimmetrico (ad esempio RSA) e lo invia al server.

Utilizzando CSPRNG, sia client che server generano array di byte casuali (utilizzando lo stesso seed noto solo a client e server).

Quando il client / server comunica, aggiunge un byte casuale a ciascun byte del messaggio a seconda dell'offset.

Ad esempio, il primo byte del messaggio dall'approvazione della connessione viene aggiunto al primo byte dell'array di byte casuali. Di fronte al client / server si sottrae quindi il byte casuale dal byte del messaggio.

È un metodo sicuro? In che modo è diverso dall'invio della chiave di XTEA (ad esempio) utilizzando l'algoritmo asimmetrico e utilizzando l'algoritmo simmetrico (XTEA) per il resto della comunicazione?

    
posta John Lock 07.04.2016 - 14:56
fonte

1 risposta

2

Quello che stai descrivendo è noto come Stream Cipher .

Per quanto riguarda le differenze, l'articolo collegato può essere citato per iniziare:

Stream ciphers are often used for their speed and simplicity of implementation in hardware, and in applications where plaintext comes in quantities of unknowable length like a secure wireless connection. If a block cipher (not operating in a stream cipher mode) were to be used in this type of application, the designer would need to choose either transmission efficiency or implementation complexity, since block ciphers cannot directly work on blocks shorter than their block size. For example, if a 128-bit block cipher received separate 32-bit bursts of plaintext, three quarters of the data transmitted would be padding. Block ciphers must be used in ciphertext stealing or residual block termination mode to avoid padding, while stream ciphers eliminate this issue by naturally operating on the smallest unit that can be transmitted (usually bytes).

Another advantage of stream ciphers in military cryptography is that the cipher stream can be generated in a separate box that is subject to strict security measures and fed to other devices such as a radio set, which will perform the xor operation as part of their function. The latter device can then be designed and used in less stringent environments.

    
risposta data 07.04.2016 - 15:12
fonte

Leggi altre domande sui tag