fixed pretty much most of it up
This commit is contained in:
parent
71a107b407
commit
71b3fd1697
107
crypttool.py
107
crypttool.py
@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
import sys, string, types, hashlib, base64, re, urllib, binascii
|
||||
import sys, string, types, hashlib, base64, re, binascii
|
||||
import operator
|
||||
from collections import Counter
|
||||
|
||||
@ -89,7 +89,7 @@ def rot(inputString, amount):
|
||||
resultChar = ''
|
||||
if char.isupper():
|
||||
index = UPPER_LETTERS.index(char)
|
||||
resultChar = UPPER_LETTERS[(index + amount)%len(UPPER_LETTERS)]
|
||||
resultChar = UPPER_LETTERS[(index + amount) % len(UPPER_LETTERS)]
|
||||
elif char.islower():
|
||||
index = LOWER_LETTERS.index(char)
|
||||
resultChar = LOWER_LETTERS[(index + amount) % len(LOWER_LETTERS)]
|
||||
@ -162,7 +162,7 @@ def resolveZeroWidthString(inputstring):
|
||||
charfound = False
|
||||
binarystring = ''
|
||||
resultstring = ''
|
||||
inputstring = inputstring.decode('utf-8')
|
||||
#inputstring = inputstring.decode('utf-8')
|
||||
for char in inputstring:
|
||||
if char == u'\u200b':
|
||||
binarystring += '1'
|
||||
@ -204,11 +204,12 @@ def hammingDistance(string1, string2):
|
||||
return diffs
|
||||
|
||||
def urlEncoder():
|
||||
input = input('Pleae input your String: ')
|
||||
print(urllib.quote_plus(input))
|
||||
import urllib.parse
|
||||
url = input('Pleae input your String: ')
|
||||
print(urllib.parse.quote(url))
|
||||
|
||||
def reverser():
|
||||
string = input('Please input your string to reverse:')
|
||||
string = input('Please input your string to reverse: ')
|
||||
print(string[::-1])
|
||||
|
||||
def base64prompt():
|
||||
@ -232,7 +233,7 @@ def base64prompt():
|
||||
if (re.match(b64regex, inputString)):
|
||||
print(base64.b64decode(inputString))
|
||||
else:
|
||||
print(base64.b64encode(inputString))
|
||||
print(base64.b64encode(inputString.encode()))
|
||||
|
||||
|
||||
def rotPrompt():
|
||||
@ -283,48 +284,52 @@ def hashPrompt():
|
||||
inputString = input('Please input a string: ')
|
||||
hasher.update(inputString.encode('utf-8'))
|
||||
print(hasher.hexdigest())
|
||||
def main():
|
||||
print('Welcome aboard PankiCrypt Airlines!')
|
||||
print('How may we serve you today?')
|
||||
print('1: ROT/Ceasar Encryption')
|
||||
print('2: Hashing functions')
|
||||
print('3: Translation')
|
||||
print('4: Base64 Encoder/Decoder')
|
||||
print('5: String Reverser')
|
||||
print('6: URL Encoder')
|
||||
print('7: Fixed XOR')
|
||||
print('8: XOR Bruteforce Single Byte ')
|
||||
print('9: XOR Repeating Key')
|
||||
print('10: Zero-Width String')
|
||||
print('11: Resolve Zero-Width Strings')
|
||||
choice = input('Please make a selection: ')
|
||||
if (choice == '1'):
|
||||
rotPrompt()
|
||||
elif (choice == '2'):
|
||||
hashPrompt()
|
||||
elif (choice == '3'):
|
||||
translatePrompt()
|
||||
elif(choice == '4'):
|
||||
base64prompt()
|
||||
elif(choice == '5'):
|
||||
reverser()
|
||||
elif(choice == '6'):
|
||||
urlEncoder()
|
||||
elif(choice[0] == '7'):
|
||||
if(len(choice) > 1):
|
||||
argList = choice.split(' ')
|
||||
fixedxor(argList[1], argList[2])
|
||||
else:
|
||||
fixedxor()
|
||||
elif(choice == '8'):
|
||||
#xorSingleBrute()
|
||||
xorBrutePrompt()
|
||||
elif(choice == '9'):
|
||||
xorRepeating()
|
||||
elif(choice == '10'):
|
||||
i = input('String:')
|
||||
zeroWidthString(i)
|
||||
elif(choice == '11'):
|
||||
i = input('String:')
|
||||
resolveZeroWidthString(i)
|
||||
print('Thank you for flying with PankiCrypt Airlines!')
|
||||
|
||||
print('Welcome aboard PankiCrypt Airlines!')
|
||||
print('How may we serve you today?')
|
||||
print('1: ROT/Ceasar Encryption')
|
||||
print('2: Hashing functions')
|
||||
print('3: Translation')
|
||||
print('4: Base64 Encoder/Decoder')
|
||||
print('5: String Reverser')
|
||||
print('6: URL Encoder')
|
||||
print('7: Fixed XOR')
|
||||
print('8: XOR Bruteforce Single Byte ')
|
||||
print('9: XOR Repeating Key')
|
||||
print('10: Zero-Width String')
|
||||
print('11: Resolve Zero-Width Strings')
|
||||
choice = input('Please make a selection: ')
|
||||
if (choice == '1'):
|
||||
rotPrompt()
|
||||
elif (choice == '2'):
|
||||
hashPrompt()
|
||||
elif (choice == '3'):
|
||||
translatePrompt()
|
||||
elif(choice == '4'):
|
||||
base64prompt()
|
||||
elif(choice == '5'):
|
||||
reverser()
|
||||
elif(choice == '6'):
|
||||
urlEncoder()
|
||||
elif(choice[0] == '7'):
|
||||
if(len(choice) > 1):
|
||||
argList = choice.split(' ')
|
||||
fixedxor(argList[1], argList[2])
|
||||
else:
|
||||
fixedxor()
|
||||
elif(choice == '8'):
|
||||
#xorSingleBrute()
|
||||
xorBrutePrompt()
|
||||
elif(choice == '9'):
|
||||
xorRepeating()
|
||||
elif(choice == '10'):
|
||||
i = input('String:')
|
||||
zeroWidthString(i)
|
||||
elif(choice == '11'):
|
||||
i = input('String:')
|
||||
resolveZeroWidthString(i)
|
||||
print('Thank you for flying with PankiCrypt Airlines!')
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
Loading…
Reference in New Issue
Block a user