Find Jobs
Hire Freelancers

Cryptography/Python: Derive the secret using Quadratic Residue knowledge !!!

$10-30 AUD

Inställt
Publicerad över sex år sedan

$10-30 AUD

Betalning vid leverans
This is straightforward assignment to derive secret using Quadratic Residue knowledge. Formula: c = (s ^ r) mod p - s is the secret (an integer) to be encrypted using above formula - r is a random 500-bit number - p is a random 500-bit prime number - c is the ciphertext computed using this formula Above design is vulnerable, because attacker can calculate the value of s if he/she got enough pairs of <c, p> values. There are 3 tasks: Part 1: Later, I will provide a text file of 30 groups of <c, p> values. We only know s is an integer in the interval of [2410, 2459], but do not know which value is it. The mission is to write a Python program to derive the value of s, using those 30 groups of <c, p> values as inputs. Remarks: 1. Hint: you MUST use the knowledge of Quadratic residue. I can provide some reference to explain Quadratic residue if you need. 2. I can provide a short and simple Python code that how c, r, and p are generated. 3. This is not a brute force mission. You cannot simply compute the values from 2410 to 2459 and compare the outputs. 4. After last, write a concise and clear summary of algorithm at comment or in a separate file. Part 2: In part 1, the 30 random r’s were chosen so that s can be identified. Actually, if the 30 r’s are chosen uniformly and randomly, then there is a chance that we cannot uniquely identify s using 30 tuples. The probability of successful identification increases with large number of <c, p> tuples. Based on part 1, the mission is to give the least number of tuples required in order to achieve 99% of success, and explain it. You can write down the answer analytically without writing a new code. Part 3: Same as part 2, but the interval size of s increases into 10^6. The mission is still to write down the answer analytically.
Project ID: 15545862

Om projektet

3 anbud
Distansprojekt
Senaste aktivitet sju år sedan

Ute efter att tjäna lite pengar?

Fördelar med att lägga anbud hos Freelancer

Ange budget och tidsram
Få betalt för ditt arbete
Beskriv ditt förslag
Det är gratis att registrera sig och att lägga anbud på uppdrag
3 frilansar lägger i genomsnitt anbud på $32 AUD för detta uppdrag
Använd avatar
Hi... I am a Python specialist, certified by Freelancer. I fully understand your project and I am sure I can help you. Award me :) Add My WhatsApp -> +584265960160 Or my telegram -> @ejdecena Relevant Skills and Experience Python and Mathematics. Proposed Milestones $35 AUD - All the work.
$35 AUD Om 2 dagar
5,0 (36 omdömen)
5,6
5,6
Använd avatar
A proposal has not yet been provided
$35 AUD Om 4 dagar
5,0 (1 omdöme)
1,4
1,4

Om kunden

Flagga för PAKISTAN
Sargodha, Pakistan
4,1
14
Verifierad betalningsmetod
Medlem sedan jan. 30, 2017

Kundverifikation

Tack! Vi har skickat en länk för aktivering av gratis kredit.
Något gick fel med ditt e-postmeddelande. Vänligen försök igen.
Registrerade Användare Totalt antal jobb publicerade
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Laddar förhandsgranskning
Tillstånd beviljat för geolokalisering.
Din inloggningssession har löpt ut och du har blivit utloggad. Logga in igen.