Skip to content

Instantly share code, notes, and snippets.

@chadtsigler
chadtsigler / virtru-app.py
Created June 30, 2020 17:59
Parameterized Virtru Python Application.
# Requires the Virtru Python SDK
# https://pypi.org/project/virtru-sdk/
# https://developer.virtru.com/docs/python-encryption
import argparse
from virtru_sdk import Client, Policy, EncryptFileParams
def main():
parser = argparse.ArgumentParser()
@chadtsigler
chadtsigler / virtru-app.py
Created June 30, 2020 17:54
Parameterized Virtru Python Application.
import argparse
from virtru_sdk import Client, Policy, EncryptFileParams
def main():
parser = argparse.ArgumentParser()
parser.add_argument("-o", "--owner", help="AppId Owner (user@domain.com)", required=True)
parser.add_argument("-p", "--appid", help="AppId (1522710c-833f-4a69-8a26-0bbb00b1345c)", required=True)
parser.add_argument("-a", "--action", help="Action", choices=["encrypt", "decrypt"], required=True)
parser.add_argument("-s", "--source", help="Source File (Full path or reference path)", required=True)
import paho.mqtt.client as paho
import time
import os
from virtru_sdk import Client, LogLevel, Policy, EncryptStringParams
virtru_owner="<VIRTRU PROVIDED>"
virtru_appid="<VIRTRU PROVIDED>"
virtru_share=["user1@example.com","user2@demo.com"]
mqtt_broker="<IP/HOST of MQTT Broker>"
@chadtsigler
chadtsigler / subscribe.py
Created May 26, 2020 20:46
MQTT Python Subscriber using the Virtru SDK
import paho.mqtt.client as paho
from virtru_sdk import LogLevel, Client
virtru_owner="<VIRTRU PROVIDED>"
virtru_appid="<VIRTRU PROVIDED>"
mqtt_broker="<IP/HOST of MQTT Broker>"
def on_subscribe(client, userdata, mid, granted_qos):
print("Subscribed: "+str(mid)+" "+str(granted_qos))
@chadtsigler
chadtsigler / simple-analytic.py
Last active May 22, 2020 18:24
Simple Secure Analytic
import boto3
import os
source = os.environ.get("source")
target = os.environ.get("target")
bucket = os.environ.get("bucket")
print(source)
print(target)
print(bucket)
import argparse
import multiprocessing
import os
import time
from virtru_tdf3_python import Client, Policy, EncryptFileParam, Protocol
class VirtruParams:
def __init__(self, source_file, target_file, owner, token_key, token_secret, add_user):
@chadtsigler
chadtsigler / app_thread.py
Last active January 10, 2020 20:32
Multithreaded version of: virtru-sdk-bulk
import argparse
import os
import threading
from concurrent.futures import ThreadPoolExecutor
from virtru_tdf3_python import Client, Policy, EncryptFileParam, Protocol
import time
class VirtruParams:
def __init__(self, source_file, target_file, owner, token_key, token_secret, add_user):
@chadtsigler
chadtsigler / app.py
Created November 15, 2019 21:48
Virtru Decrypt Files in a directory
def decrypt_folder(source_dir, target_dir, owner, token_key, token_secret):
for file in os.listdir(source_dir):
if os.path.isfile(os.path.join(source_dir, file)):
decrypt_file(os.path.join(source_dir, file), os.path.join(target_dir, remove_extension(file)), owner,
token_key,
token_secret)
def decrypt_file(source_file, target_file, owner, token_key, token_secret):
print("Source - {} Target - {}".format(source_file,target_file))
@chadtsigler
chadtsigler / app.py
Created November 15, 2019 21:45
Virtru Encrypt File in a folder
def encrypt_folder(source_dir, target_dir, owner, token_key, token_secret, add_user):
for file in os.listdir(source_dir):
if os.path.isfile(os.path.join(source_dir, file)):
encrypt_file(os.path.join(source_dir, file), os.path.join(target_dir, file) + ".tdf3", owner, token_key,
token_secret, add_user)
def encrypt_file(source_file, target_file, owner, token_key, token_secret, add_user):
print("Source - {} Target - {}".format(source_file,target_file))
client = Client(owner=owner,