/OnlyTwo-MessageApp

Project created for Software Testing course using socket programming and encryption algorithms together with C# language.

Primary LanguageC#MIT LicenseMIT

OnlyTwo-MessageApp

Project created for Software Testing course using socket programming and encryption algorithms together with C# language.

Project Requirements

  1. The text written by Single User will be encrypted with SHA 256 or SPN and the user will see the encrypted text.
  2. With the Socket Program, your own encrypted message will be made from the user of the same user message and the user will be able to see the user password with the key (password) containing the password of the other user's message.
  3. The program will also be able to send other files (such as TXT, DAT or GIF) to the other party, but while sending (the file will be reduced in size after it is encrypted with a compression algorithm you will write or use ready-made).

In addition; Software Specifications will be prepared.
Test Documents will be prepared with Test Cases.
Black Box and White Box tests will be done.
Souce Monitor and Github Control
Additional tool will be used for Design and Visuality.
! All of these contents are available in files in the repo.


What Is SHA256 Encryption?

SHA -256 (Secure Hash Algorithm) is an algorithm designed to be used in the Digital Signature Standard (DSA) developed by the National Security Agency. It is the encryption system with the highest security in the SHA-2 hash algorithm set. The SHA-256 feature is to convert data to standard size 32 byte -64 hexadecimal hash values.

For more information and steps, you can refer to the "03- BlockChain Encrypiton Info" link in the resources section (below).

What Is SPN-16 Encryption?

Spn encryption starts with a key and text as seen in the picture above. First, the key and text that we have imported are converted to ASCII numbers. Then all the text is "XOR" with the key as 0's and 1's. The resulting 0 1 ASCII string is forwarded. If the other person has the key, he/she performs the decrypte operation.


Utilized Resources

01- ASCII Table
02- Binary Convert- Check
03- BlockChain Encrypiton Info
04-SPN Encryption Info
05-SHA Youtube Videon
06-Convert Binary/String
07-Chracter Operation
08-MultiChat Socket Programming
09-System Compression
10-File Encrypt Decrypte
11-Text Box Limitation
12-File Operation
13-Zip File Operation
14-Socket Info
15-TSocket Info - 2
15-TSocket Info - 3