openc2lib.types.base.binary_x
1import base64 2 3from openc2lib.types.base.binary import Binary 4 5class Binaryx(Binary): 6 """ OpenC2 Binary HEX data 7 8 Binary data that are expected to be encoded with hex 9 as defined in [RFC4648], Section 8 (Sec. 3.1.5). 10 """ 11 12 def __str__(self): 13 """ Returns base64 encoding """ 14 if self._data is not None: 15 return base64.b16encode(self._data).decode('ascii') 16 else: 17 return "" 18 19 def todict(self, e): 20 """ Encodes with base64 """ 21 return base64.b16encode(self._data).decode('ascii') 22 23 @classmethod 24 def fromdict(cls, dic, e): 25 """ Builds from base64encoding """ 26 print("binary16 decoder") 27 print("cls: ", cls) 28 print("dic: ", dic) 29 print("e: ", e) 30 try: 31 print("value: ", dic) 32 print("ascii: ", dic.encode('ascii')) 33 return cls( base64.b16decode(dic.encode('ascii')) ) 34 except: 35 raise TypeError("Unexpected b16 value: ", dic)
6class Binaryx(Binary): 7 """ OpenC2 Binary HEX data 8 9 Binary data that are expected to be encoded with hex 10 as defined in [RFC4648], Section 8 (Sec. 3.1.5). 11 """ 12 13 def __str__(self): 14 """ Returns base64 encoding """ 15 if self._data is not None: 16 return base64.b16encode(self._data).decode('ascii') 17 else: 18 return "" 19 20 def todict(self, e): 21 """ Encodes with base64 """ 22 return base64.b16encode(self._data).decode('ascii') 23 24 @classmethod 25 def fromdict(cls, dic, e): 26 """ Builds from base64encoding """ 27 print("binary16 decoder") 28 print("cls: ", cls) 29 print("dic: ", dic) 30 print("e: ", e) 31 try: 32 print("value: ", dic) 33 print("ascii: ", dic.encode('ascii')) 34 return cls( base64.b16decode(dic.encode('ascii')) ) 35 except: 36 raise TypeError("Unexpected b16 value: ", dic)
OpenC2 Binary HEX data
Binary data that are expected to be encoded with hex as defined in [RFC4648], Section 8 (Sec. 3.1.5).
def
todict(self, e):
20 def todict(self, e): 21 """ Encodes with base64 """ 22 return base64.b16encode(self._data).decode('ascii')
Encodes with base64
@classmethod
def
fromdict(cls, dic, e):
24 @classmethod 25 def fromdict(cls, dic, e): 26 """ Builds from base64encoding """ 27 print("binary16 decoder") 28 print("cls: ", cls) 29 print("dic: ", dic) 30 print("e: ", e) 31 try: 32 print("value: ", dic) 33 print("ascii: ", dic.encode('ascii')) 34 return cls( base64.b16decode(dic.encode('ascii')) ) 35 except: 36 raise TypeError("Unexpected b16 value: ", dic)
Builds from base64encoding