Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.8%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: COMP590-PET
  • Language: Python
  • Default Branch: main
  • Size: 39.1 KB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created almost 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Citation

README.md

README

Install

python -m pip install -r requirements.txt. This exact command may not work if your Python environment is wonky, and if so, install however you normally use pip. Also consider using a virtual environment.

You should also install tmux to see multiple terminal windows in the same terminal, though this isn't strictly necessary (you can just use multiple terminal windows instead).

Usage

Follow the usage instructions in censor.py and client.py.

You may also use curl, such as curl --proxy http://127.0.0.1:8080 "http://www.google.com".

Resources folder

There are some files in resources/ that you will have to generate yourself.

mitmproxy-ca-cert.pem

  1. Run mitmproxy
  2. Go to your computer's proxy settings (e.g., in chrome://settings/system) and enable HTTP and HTTPS proxy servers on 127.0.0.1:8080
  3. Go to mitm.it
  4. Generate a certificate for your OS
  5. Save the file to resources/ with the same name to enable our code to work
  6. To use in Google Chrome, you will have to double click the certificate and trust it (the steps depend on your OS)

Tag Generation and Reverse Engineering Ciphertext

Run crypto.py to demo tag generation. Note: you may have to rerun until a working key pair for Elligator2 is produced.

Testing

python -m pytest tests

Owner

  • Name: COMP590-PET
  • Login: COMP590-PET
  • Kind: organization

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: TapDanceImpl
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Jesse
    family-names: Wei
    email: jesse@cs.unc.edu
    affiliation: The University of North Carolina at Chapel Hill
  - given-names: Daniel
    family-names: Xie
    email: dxie@unc.edu
    affiliation: The University of North Carolina at Chapel Hill
  - given-names: Harin
    family-names: Lim
    email: hlim@unc.edu
    affiliation: The University of North Carolina at Chapel Hill
  - given-names: Dohhyun
    email: dkim3@unc.edu
    affiliation: The University of North Carolina at Chapel Hill
    family-names: Kim
  - given-names: Matseoi
    family-names: Zau
    email: matseoi@ad.unc.edu
    affiliation: The University of North Carolina at Chapel Hill
repository-code: 'https://github.com/COMP590-PET/TapDanceImpl'
repository-artifact: 'https://github.com/COMP590-PET/TapDanceImpl'
abstract: >-
  An implementation of the TapDance protocol for refraction
  networking
keywords:
  - TapDance
  - refraction networking
  - cryptography
license: MIT

GitHub Events

Total
Last Year

Dependencies

requirements.txt pypi
  • mitmproxy ==10.2.4
  • pymonocypher ==3.1.3.2
  • requests ==2.31.0