Skip to content

Instantly share code, notes, and snippets.

@ricardojba
Forked from fideloper/crypt.py
Created April 18, 2017 08:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ricardojba/be6d173711154a13f0013b9fb6152470 to your computer and use it in GitHub Desktop.
Save ricardojba/be6d173711154a13f0013b9fb6152470 to your computer and use it in GitHub Desktop.
Decrypt Laravel-encrypted value
import os
import base64
import json
from Crypto.Cipher import AES
from phpserialize import loads
def decrypt(payload):
data = json.loads(base64.b64decode(payload))
value = base64.b64decode(data['value'])
iv = base64.b64decode(data['iv'])
return unserialize(mcrypt_decrypt(value, iv))
def mcrypt_decrypt(value, iv):
AES.key_size=128
key=os.environ['APP_KEY']
crypt_object=AES.new(key=key,mode=AES.MODE_CBC,IV=iv)
return crypt_object.decrypt(value)
def unserialize(serialized):
return loads(serialized)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment