fabvio / SecureDatagramSocket

Java DatagramSocket extension for AES based confidentiality and data integrity check

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

##SecureDatagramSocket

Extension of Java's DatagramSocket with confidentiality and data authentication/integrity support. These functionalities are completely transparent to the user and to the programmer.

###Confidentiality notes

Encryption and decryption are implemented using the AES algorithm, in OFB mode, with a fixed initialization vector.

###Data authentication/integrity notes

Data authentication and data integrity are implemented adding a HMAC to the current datagram. The HMAC is obtained from a SHA-1 hash and a password.

###Key exchange notes

In the proposed implementation (client/server sample) the key is obtained from a Diffie-Hellman key exchange scheme. This method allows a per-session key, but it is vulnerable to MITM attacks. A more secure scheme could be used having two RSA pair.

About

Java DatagramSocket extension for AES based confidentiality and data integrity check


Languages

Language:Java 100.0%