Пример #1
0
# Simple Substitution Cipher Hacker
# http://inventwithpython.com/hacking (BSD Licensed)

import os
import re
import copy
import pprint
import pyperclip
import simpleSubCipher
import makeWordPatterns

if not os.path.exists('wordPatterns.py'):
    makeWordPatterns.main()  # create the wordPatterns.py file
import wordPatterns

LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
nonLettersOrSpacePattern = re.compile('[^A-Z\s]')


def main():
    message = 'Sy l nlx sr pyyacao l ylwj eiswi upar lulsxrj  \
    isr sxrjsxwjr, ia esmm rwctjsxsza sj wmpramh, lxo txmarr jia \
    aqsoaxwa sr pqaceiamnsxu, ia esmm caytra jp famsaqa sj. Sy, px \
    jia pjiac ilxo, ia sr pyyacao rpnajisxu eiswi lyypcor l calrpx \
    ypc lwjsxu sx lwwpcolxwa jp isr sxrjsxwjr, ia esmm lwwabj sj \
    aqax px jia rmsuijarj aqsoaxwa. Jia pcsusx py nhjir sr agbmlsxao \
    sx jisr elh. -Facjclxo Ctrramm'

    # Determine the possible valid ciphertext translations.
    print('Hacking...')
    letterMapping = hackSimpleSub(message)
Пример #2
0
# Makes the makeWordPatterns.py File
# http://inventwithpython.com/hacking (BSD Licensed)

import os, re, copy, pprint, pyperclip, simpleSubCipher, makeWordPatterns

if not os.path.exists('wordPatterns.py'):
    makeWordPatterns.main()

import wordPatterns

LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
nonLettersOrSpacePattern = re.compile('[^A-Z\s]')


def main():
    message = 'Sy l nlx sr pyyacao l ylwj eiswi upar lulsxrj isr sxrjsxwjr, ia esmm rwctjsxsza sj wmpramh, lxo txmarr jia aqsoaxwa sr pqaceiamnsxu, ia esmm caytra jp famsaqa sj. Sy, px jia pjiac ilxo, ia sr pyyacao rpnajisxu eiswi lyypcor l calrpx ypc lwjsxu sx lwwpcolxwa jp isr sxrjsxwjr, ia esmm lwwabj sj aqax px jia rmsuijarj aqsoaxwa. Jia pcsusx py nhjir sr agbmlsxao sx jisr elh. -Facjclxo Ctrramm'
    print('Hacking...')
    letterMapping = hackSimpleSub(message)
    print('Mapping:')
    pprint.pprint(letterMapping)
    print()
    print('Original ciphertext:')
    print(message)
    print()
    print('Copying hacked message to clipboard:')
    hackedMessage = decryptWithCipherletterMapping(message, letterMapping)
    pyperclip.copy(hackedMessage)
    print(hackedMessage)


def getBlankCipherletterMapping():
Пример #3
0
# Simple Substitution Cipher Hacker
# http://inventwithpython.com/hacking (BSD Licensed)
# * Forked by Jared Wiese

import os, re, copy, pprint, makeWordPatterns
from functools import partial
from multiprocessing import Pool, Lock, Value, Process

import simpleSubCipher

if not os.path.exists('wordPatterns.py'):
    makeWordPatterns.main()  # create the wordPatterns.py file
import wordPatterns

from string import ascii_uppercase as LETTERS

THREADS_TO_USE = 5

nonLettersOrSpacePattern = re.compile('[^A-Z\s]')


def getBlankcipherLetterMapping():
    # Returns a dictionary value that is a blank cipherLetter mapping.
    return {
        'A': [],
        'B': [],
        'C': [],
        'D': [],
        'E': [],
        'F': [],
        'G': [],
import os
import sys
import copy
import re
import pprint
import simpleSubCipher
import makeWordPatterns

if not os.path.exists('wordPatterns.py'):
    makeWordPatterns.main()

import wordPatterns    # now we have allPatterns dictionary value

LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
PATTERN_NOT_LETTER_OR_SPACE = re.compile('[^A-Z\s]')


def main():
    message = """Sy l nlx sr pyyacao l ylwj eiswi upar lulsxrj isr
sxrjsxwjr, ia esmm rwctjsxsza sj wmpramh, lxo txmarr jia aqsoaxwa sr
pqaceiamnsxu, ia esmm caytra jp famsaqa sj. Sy, px jia pjiac ilxo, ia sr
pyyacao rpnajisxu eiswi lyypcor l calrpx ypc lwjsxu sx lwwpcolxwa jp isr
sxrjsxwjr, ia esmm lwwabj sj aqax px jia rmsuijarj aqsoaxwa. Jia pcsusx py
nhjir sr agbmlsxao sx jisr elh. -Facjclxo Ctrramm"""
    # message = "OLQIHXIRCKGNZ PLQRZKBZB MPBKSSIPLC"
#     message = """S ln lmcaloh ylc xpcji py Mpxopx, lxo lr S elmk sx jia rjcaajr py
# Bajacrftcui, S yaam l wpmo xpcjiacx fcaaza bmlh tbpx nh wiaakr, eiswi
# fclwar nh xacqar lxo ysmmr na esji oamsuij.  Op hpt txoacrjlxo jisr
# yaamsxu?  Jisr fcaaza, eiswi ilr jclqammao ycpn jia causpxr jpelcor
# eiswi S ln loqlxwsxu, usqar na l ypcajlrja py jipra swh wmsnar.
# Sxrbscsjao fh jisr esxo py bcpnsra, nh olhocalnr fawpna npca yacqaxj