Skip to content

Instantly share code, notes, and snippets.

@jchysk
jchysk / require at least one.py
Created August 26, 2015 22:40
Formencode validator that will require a minimum of one field
from formencode import Schema, validators, Invalid
from formencode.validators import FormValidator
class RequireAtLeastOne(FormValidator):
choices = []
__unpackargs__ = ('choices',)
def _convert_to_python(self, value_dict, state):
for each in self.choices:
if value_dict.get(each) is not None:
@jchysk
jchysk / totp to QR.py
Created August 26, 2015 23:20
Secret to QR Code
"""
Function that takes two values to generate a QR Code that can be scanned with LaunchKey or TOTP holder
@param identity: Name and place. E.g. username/Gmail
@param secret: The actual TOTP code
Saves the image locally as a png
Requires PIL (pillow) and qrcode
"""
def convert(self, identity, secret):
import re
@jchysk
jchysk / cryptography_helpers.py
Created May 10, 2016 05:03
A number of helper functions for common cryptography uses
"""
from helpers import generate_RSA, encrypt_RSA, generate_password, decrypt_RSA, generate_AES, decrypt_AES, pad
priv, pub = generate_RSA()
encrypted = encrypt_RSA(pub, generate_password())
key, iv, encryptor = generate_AES()
aes_encrypted = encryptor.encrypt(pad("this is a very long string " * 25))
decrypt_AES(key, iv, aes_encrypted)
"""
BS = 16