parameters: (aes_key, serial_number, data)
return_statement: return ret
docstring: Funcion de alto nivel para encriptar un voto.
  
      Argumentos:
          aes_key -- un stream de 16 bytes con la clave de encriptación.
          serial_number -- un stream de 8 bytes con el serial_number del tag.
          data --  el stream de bytes que queremos encriptar.
docstring_summary: Funcion de alto nivel para encriptar un voto.
docstring_tokens: Funcion de alto nivel para encriptar un voto .
function: def encriptar_voto(aes_key, serial_number, data):
      """Funcion de alto nivel para encriptar un voto.
  
      Argumentos:
          aes_key -- un stream de 16 bytes con la clave de encriptación.
          serial_number -- un stream de 8 bytes con el serial_number del tag.
          data --  el stream de bytes que queremos encriptar.
      """
      ret = data
      # si no queremos encriptar el voto devolvemos los datos que nos mandaron
      if ENCRIPTAR_VOTO:
          # El vector tiene que tener 12 bytes asi que le agregamos 4 bytes como
          # padding
          init_vector = serial_number + PADDING_SERIAL
          gcm_tag, data_encriptada = encriptar(aes_key, init_vector, data)
          # armamos un container de construct para armar el voto con el formato
          # correcto
          contenedor = Container(gcm_tag=gcm_tag, len_datos=len(data_encriptada),
                                 datos=data_encriptada)
          ret = struct_voto.build(contenedor)
  
      return ret
function_tokens: def encriptar_voto ( aes_key , serial_number , data ) : ret = data # si no queremos encriptar el voto devolvemos los datos que nos mandaron if ENCRIPTAR_VOTO : # El vector tiene que tener 12 bytes asi que le agregamos 4 bytes como # padding init_vector = serial_number + PADDING_SERIAL gcm_tag , data_encriptada = encriptar ( aes_key , init_vector , data ) # armamos un container de construct para armar el voto con el formato # correcto contenedor = Container ( gcm_tag = gcm_tag , len_datos = len ( data_encriptada ) , datos = data_encriptada ) ret = struct_voto . build ( contenedor ) return ret