Skip to content
This repository has been archived by the owner on Oct 31, 2019. It is now read-only.

Implement One Time Pad #217

Open
2 of 4 tasks
aditigupta17 opened this issue Oct 16, 2018 · 5 comments
Open
2 of 4 tasks

Implement One Time Pad #217

aditigupta17 opened this issue Oct 16, 2018 · 5 comments
Labels
hacktoberfest Open issues for hacktoberfest systems Systems related Issues

Comments

@aditigupta17
Copy link
Collaborator

aditigupta17 commented Oct 16, 2018

Description

The one-time pad (OTP) is an encryption technique that cannot be cracked, but requires the use of a one-time pre-shared key the same size as, or longer than, the message being sent. In this technique, a plaintext is paired with a random secret key (also referred to as a one-time pad). Then, each bit or character of the plaintext is encrypted by combining it with the corresponding bit or character from the pad using modular addition.

Input:

  • A String of lower case letters, called Plain Text.
  • Another String of lower case letters, called OTP.

You are expected to write a program that receives a Plain Text (string) and OTP (string) and returns the encrypted ciphertext.

Example:
Plain Text: quizzingisfun
OTP: tequilamockingbird
Cipher Text: jyythtnswupca

Details

Technical Specifications:

  • Type of issue: No more than one implementation will be accepted for each language. Once the implementation for a language has been taken up (i.e if it is checked in the 'Issue Progress' section), you must choose from the remaining.
  • Time Limit: Issues will be given on a first-come, first-serve basis. Once you take this issue up, you must complete it within 2 days, failing which the issue will be allocated to the next person who requested for this issue.
  • Additional instructions: While making the Pull Request, attach screenshots of 5 sample inputs and their corresponding output.

Issue requirements / progress

  • C
  • C++
  • Python
  • Java

Resources

https://en.wikibooks.org/wiki/Cryptography/One_time_pads

Directory Structure

For this issue, use the following directory of the Hacktoberfest-2k18 repository:
/systems/cryptography/one-time-pad/<language_name>
(where language_name is one of the languages mentioned above.)

Note

Please claim the issue first by commenting here before starting to work on it.

@aditigupta17 aditigupta17 added hacktoberfest Open issues for hacktoberfest systems Systems related Issues cryptography labels Oct 16, 2018
@yogeshjoshi
Copy link
Contributor

Im willing to contribute on this issue. (Lang: Python)

@aditigupta17
Copy link
Collaborator Author

@yogeshjoshi Go ahead.

@yogeshjoshi yogeshjoshi mentioned this issue Oct 16, 2018
3 tasks
@andymac-2
Copy link
Contributor

Can I claim C?

@aditigupta17
Copy link
Collaborator Author

@andymac-2 Sure. Go ahead.

@KshitijMhatre
Copy link
Contributor

I want to solve this for lang: Java

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
hacktoberfest Open issues for hacktoberfest systems Systems related Issues
Projects
None yet
Development

No branches or pull requests

5 participants