Module refinery.units.crypto.keyderive.kblob
Expand source code Browse git
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from refinery.lib.mscrypto import CRYPTOKEY
from refinery.units import Unit
class kblob(Unit):
"""
Extracts a key from a Microsoft Crypto API BLOB structure.
"""
def process(self, data):
blob = CRYPTOKEY(data)
try:
return self.labelled(
bytes(blob.key),
type=blob.header.type.name,
algorithm=blob.header.algorithm.name
)
except AttributeError as A:
raise ValueError(F'unable to derive key from {blob.header.type!s}') from A
Classes
class kblob
-
Extracts a key from a Microsoft Crypto API BLOB structure.
Expand source code Browse git
class kblob(Unit): """ Extracts a key from a Microsoft Crypto API BLOB structure. """ def process(self, data): blob = CRYPTOKEY(data) try: return self.labelled( bytes(blob.key), type=blob.header.type.name, algorithm=blob.header.algorithm.name ) except AttributeError as A: raise ValueError(F'unable to derive key from {blob.header.type!s}') from A
Ancestors
Class variables
var required_dependencies
var optional_dependencies
Inherited members