def createDustPacket(self, key, data, entropy):
    self.key=key
    if v3 and type(data)!=bytes:
      self.data=bytes(data, 'ascii')
    else:
      self.data=data

    self.padding=makePadding(entropy, PADDING_RANGE)
    payloadLength=TIMESTAMP_SIZE+DATA_LENGTH_SIZE+PADDING_LENGTH_SIZE+len(self.data)

    self.timestamp=getTime()
    timestamp=makeTimestamp(self.timestamp)
    self.dataLength=len(self.data)
    dataLength=makeLength(self.dataLength, DATA_LENGTH_SIZE)
    self.paddingLength=len(self.padding)
    paddingLength=makeLength(self.paddingLength, PADDING_LENGTH_SIZE)
    self.payload=timestamp+dataLength+paddingLength+self.data

    self.iv=makeIV(entropy)
    self.encrypted=encrypt(self.key, self.iv, self.payload)

    self.ciphertext=self.iv+self.encrypted

    self.mac=makeMac(self.key, self.ciphertext)

    self.packet=self.mac+self.ciphertext+self.padding
Example #2
0
  def createDustPacket(self, key, data, entropy):
    self.key=key
    if v3 and type(data)!=bytes:
      self.data=bytes(data, 'ascii')
    else:
      self.data=data

    self.padding=makePadding(entropy, PADDING_RANGE)
    payloadLength=TIMESTAMP_SIZE+DATA_LENGTH_SIZE+PADDING_LENGTH_SIZE+len(self.data)

    self.timestamp=getTime()
    timestamp=makeTimestamp(self.timestamp)
    self.dataLength=len(self.data)
    dataLength=makeLength(self.dataLength, DATA_LENGTH_SIZE)
    self.paddingLength=len(self.padding)
    paddingLength=makeLength(self.paddingLength, PADDING_LENGTH_SIZE)
    self.payload=timestamp+dataLength+paddingLength+self.data

    self.iv=makeIV(entropy)
    self.encrypted=encrypt(self.key, self.iv, self.payload)

    self.ciphertext=self.iv+self.encrypted

    self.mac=makeMac(self.key, self.ciphertext)

    self.packet=self.mac+self.ciphertext+self.padding
Example #3
0
  def createDustPacket(self, key, data, entropy):
    self.key=key
    if v3 and type(data)!=bytes:
      self.data=bytes(data, 'ascii')
    else:
      self.data=data

    payloadLength=len(self.data)

    self.dataLength=len(self.data)
    self.payload=self.data

    self.encrypted=encrypt(self.key, self.iv, self.payload)

    self.ciphertext=self.encrypted

    self.packet=self.ciphertext