Find Jobs
Hire Freelancers

Work Project for Network Security/Encryption

$10-40 CAD

Folyamatban
Kiadva ekkor: több mint 5 évvel ezelőtt

$10-40 CAD

Teljesítéskor fizetve
An RC4 state based secure unicast protocol is described in the following: Suppose A (sender) and B (receiver) posses the same secure key (128 bits) to initialize RC4 state (S, i, j)A for A and (S, i, j)B for B and initially (S, i, j)A = (S, i, j)B = (S, i, j)o. Initially A and B also set their sequence counters to zero. Each data packet has 272 bytes (4 bytes for sequence counter value, 252 bytes for data segment and 16 bytes for hash value): SC (4 bytes) Data Segment (252 bytes) HV (16 bytes) For Sender: 1. The sender divides the input plaintext message into contiguous 252-byte data segments and assigns SC to each of them. The sequence counter (SC) value is increased by 1 in increased order (initially SCA = 0). If there are not enough data in the data segment of the last data packet, pad a 1 followed by as many 0 as necessary. 2. The sender calculates the hash value for that data packet by inputting SC and the unencrypted data segment, and then places the 128-bit hash value into the data packet. 3. The sender produces the encrypted data packets by only encrypting data segment and hash value (do not encrypt SC value). The sender updates its SCA and (S, i, j)A after the encryption. For Receiver: Initially (S, i, j)B = (S, i, j)0 and SCB = 0. When receiving a new packet, B compares its own SC value (SCB) with the SC value of the packet. If the difference of the SC value of the packet and its own SC value (SCpacket - SCB) is 0, then (S, i, j)B is used as the RC4 state to decrypt the data segment and hash value of that incoming packet and then increase the sequence counter by 1. Otherwise, calculate the right RC4 state from current (S, i, j)B by applying certain rounds of PRGA or IPRGA, and then use the right RC4 state to decrypt the data segment and hash value of that incoming packet and set the sequence counter value of receiver by the SC value of the packet plus 1. B also needs to calculate the hash value according to the decrypted data (SC and data segment) and then compare it with the one directly get from decrypted packet (comparison is required, but assume it always match). I need a program written in C++ Programming with two interfaces (one for sender, and the another for receiver) to implement the above secure unicast protocol. Test the program by a 1000 bytes message (4 packets). Suppose: Case 1: the sequence of the packets received is 0, 1, 2 and 3 Case 2: the sequence of the packet received is 1, 0, 3 and 2 Case 3: the sequence of the packet received is 3, 2, 1 and 0 Notes: 1. Include internal comments 2. The plaintext and 128-bit key are input to the program. You should not hard code them or put them into a file, and they should be inputted through the interfaces. Before run your program, the same key should be inputted through interfaces for both sender and receiver, but plaintext should only be inputted through the interface for the sender. 3. You should use ABCDEF0123456789ABC2018|| 9 hexadecimal digits, || is a connection symbol, not a part of the key) as the secure key. There is no requirement for 1000-byte input message, but the input message should be readable. 4. You can choose any hash function to calculate the hash value. Please remember the required hash value is 16 bytes so if the hash value generated by the hash function you choose is not 16 bytes, a transformation designed and implemented by you is necessary.
Projektazonosító: 17294728

A projektről

4 ajánlat
Távolról teljesíthető projekt
Aktiválva: 6 évvel ezelőtt

Szeretne pénzt keresni?

A Freelancer oldalán történő árajánlatadás előnyei

Határozzon meg költségvetést és időkeretet
Kapja meg fizetését a munkáért
Vázolja ajánlatát
Ingyen regisztrálhat és adhat árajánlatot munkákra
4 szabadúszó adott átlagosan $68 CAD összegű árajánlatot erre a munkára
Felhasználó avatár
Hi, I am experienced C++ programmer and I can help you to implement this project. I can implement this in 2-3 days and this will cost equivalent of 100 USD in your currency. I make warranty for clean, well tested, well commented, professionally written source code. We can discuss details in the private chat.
$133 CAD 3 napon belül
5,0 (73 értékelés)
6,3
6,3
Felhasználó avatár
Required more details .. can develop in vc++ . Dll or exe
$30 CAD 30 napon belül
0,0 (0 értékelés)
0,0
0,0

Az ügyfélről

CANADA zászlója
Regina, Canada
5,0
1
Fizetési mód hitelesítve
Tagság kezdete: júl. 4, 2018

Ügyfél-hitelesítés

Köszönjük! E-mailben elküldtük a linket, melyen átveheti ajándék egyenlegét.
E-mailje elküldése során valami hiba történt. Kérjük, próbálja újra.
Regisztrált Felhasználók Összes Közzétett Munka
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Előnézet betöltése
Hozzáférést adott a helymeghatározáshoz.
Belépési munkamenete lejárt, és kijelentkeztettük. Kérjük, lépjen be újra.