Giter Site home page Giter Site logo

cipher_tools's Introduction

Ciper_Tools

Cipher tools is a work area for deciphering monoalphabetical substitution ciphers

Tools built in

* Replace all characters in a blob with a given character 
* A regular expresion dictionary with uses ? for unknowns and @@ for duplicate bigram unknowns
* Single step undo and redo
* Save feature to write all changes back to the file

Example of Workbench.py

$ ./workbench.py message

1: Replace | 2: Undo | 3: Redo | 4: Dictionary | 8: Save | 9: Quit

  IKVMY IMVtMBD UKK AeAKVB SKtT TYoJE XoKVKVA MUMYMVTTe KV M BeWKeB oI WMKEB MAMKVBt
  tTe GMZo WeMTtoWB BJWWoJVEKVA tTe TKtD oI GKEAMW. MYtToJAT tTe IKWBt GKBBKoV KB BJTTeBBIJY,
  MUMYMVTTe KB tWMNNeE Mt MVotTeW WeMTtoW EJWKVA M BJABeFJeVt WMKE. tTe WeMTtoW eHNYoEeB,
  YMJVTTKVA TYoJE IWoG tTe JNNeW YeUeYB oI GKEAMW KVto tTe BYJGB AeYoS. Te YMVEB oV M IYoSeW AeE,
  STeWe Te KB IoWGMYYD KVtWoEJTeE to MeWKB. NWoGNteE AD tTe MWWKUMY oI BTKVWM'B tJWZB oNeWMtKUeB
  BeVt to TMNtJWe MeWKB, TYoJE MAWeeB to Ae MeWKB' AoEDAJMWE MVE EeIeVEB TeW IWoG tTe tJWZB.
  MIteW tTe BTKVWM EKBToUeW tTe YoTMtKoV oI MUMYMVTTe'B TKEeoJt, tTeD EeBtWoD Kt AD EeGoYKBTKVA
  tTe eVtKWetD oI BeTtoW 7, ZKYYKVA KtB NoNJYMtKoV MVE tTWee GeGAeWB oI MUMYMVTTe. tTe tJWZB MYBo
  TMNtJWe MeWKB, STo KB WeUeMYeE to Ae tTe YMBt BJWUKUKVA TetWM, M WMTe TYoBeYD MttJVeE SKtT tTe
  NYMVet MVE NWeUKoJBYD tToJATt eHtKVTt. NWeBKEeVt BTKVWM AeYKeUeB MeWKB TMV YeME TKG to tTe
  NWoGKBeE YMVE, M GDtTKTMY YMVE oI IeWtKYKtD, STeWe Te eHNeTtB to IKVE GMZo eVeWAD.

Example of using the Dictionary

$ ./workbench.py message

 1: Replace | 2: Undo | 3: Redo | 4: Dictionary | 8: Save | 9: Quit

 Expression: fu@@y

  IKVMY IMVtMBD UKK AeAKVB SKth TYoJE XoKVKVA MUMYMVThe KV M BeWKeB oI WMKEB MAMKVBt
  the GMZo WeMTtoWB BJWWoJVEKVA the TKtD oI GKEAMW. MYthoJAh the IKWBt GKBBKoV KB BJTTeBBIJY,
  MUMYMVThe KB tWMNNeE Mt MVotheW WeMTtoW EJWKVA M BJABeFJeVt WMKE. the WeMTtoW eHNYoEeB,
  YMJVThKVA TYoJE IWoG the JNNeW YeUeYB oI GKEAMW KVto the BYJGB AeYoS. he YMVEB oV M IYoSeW AeE,
  SheWe he KB IoWGMYYD KVtWoEJTeE to MeWKB. NWoGNteE AD the MWWKUMY oI BhKVWM'B tJWZB oNeWMtKUeB
  BeVt to TMNtJWe MeWKB, TYoJE MAWeeB to Ae MeWKB' AoEDAJMWE MVE EeIeVEB heW IWoG the tJWZB.
  MIteW the BhKVWM EKBToUeW the YoTMtKoV oI MUMYMVThe'B hKEeoJt, theD EeBtWoD Kt AD EeGoYKBhKVA
  the eVtKWetD oI BeTtoW 7, ZKYYKVA KtB NoNJYMtKoV MVE thWee GeGAeWB oI MUMYMVThe. the tJWZB MYBo
  TMNtJWe MeWKB, Sho KB WeUeMYeE to Ae the YMBt BJWUKUKVA TetWM, M WMTe TYoBeYD MttJVeE SKth the
  NYMVet MVE NWeUKoJBYD thoJAht eHtKVTt. NWeBKEeVt BhKVWM AeYKeUeB MeWKB TMV YeME hKG to the
  NWoGKBeE YMVE, M GDthKTMY YMVE oI IeWtKYKtD, SheWe he eHNeTtB to IKVE GMZo eVeWAD.

Results of above Dictionary search

1: Replace | 2: Undo | 3: Redo | 4: Dictionary | 8: Save | 9: Quit

 fubby fuffy fuggy fully funny furry fussy fuzzy

 IKVMY IMVtMBD UKK AeAKVB SKth TYoJE XoKVKVA MUMYMVThe KV M BeWKeB oI WMKEB MAMKVBt
 the GMZo WeMTtoWB BJWWoJVEKVA the TKtD oI GKEAMW. MYthoJAh the IKWBt GKBBKoV KB BJTTeBBIJY,
 MUMYMVThe KB tWMNNeE Mt MVotheW WeMTtoW EJWKVA M BJABeFJeVt WMKE. the WeMTtoW eHNYoEeB,
 YMJVThKVA TYoJE IWoG the JNNeW YeUeYB oI GKEAMW KVto the BYJGB AeYoS. he YMVEB oV M IYoSeW AeE,
 SheWe he KB IoWGMYYD KVtWoEJTeE to MeWKB. NWoGNteE AD the MWWKUMY oI BhKVWM'B tJWZB oNeWMtKUeB
 BeVt to TMNtJWe MeWKB, TYoJE MAWeeB to Ae MeWKB' AoEDAJMWE MVE EeIeVEB heW IWoG the tJWZB.
 MIteW the BhKVWM EKBToUeW the YoTMtKoV oI MUMYMVThe'B hKEeoJt, theD EeBtWoD Kt AD EeGoYKBhKVA
 the eVtKWetD oI BeTtoW 7, ZKYYKVA KtB NoNJYMtKoV MVE thWee GeGAeWB oI MUMYMVThe. the tJWZB MYBo
 TMNtJWe MeWKB, Sho KB WeUeMYeE to Ae the YMBt BJWUKUKVA TetWM, M WMTe TYoBeYD MttJVeE SKth the
 NYMVet MVE NWeUKoJBYD thoJAht eHtKVTt. NWeBKEeVt BhKVWM AeYKeUeB MeWKB TMV YeME hKG to the
 NWoGKBeE YMVE, M GDthKTMY YMVE oI IeWtKYKtD, SheWe he eHNeTtB to IKVE GMZo eVeWAD.

cipher_tools's People

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.