1. A method comprising: determining whether a user of an electronic device is (i) a human user, or (ii) a non-human user; by performing: (a) generating a spatial challenge that requires the user to cause a particular sequence of spatial changes to spatial properties of the electronic device; wherein generating the spatial challenge comprises: constructing, from a pool of discrete spatial operations, a particular sequence of two or more selected discrete spatial operations, wherein each discrete spatial operation is associated with a time-slot for completion of said discrete spatial operation; allocating a maximum time-slot for performance of the spatial challenge, based on the aggregate sum of time-slots for completion of the discrete spatial operations that are comprised in the constructed spatial challenge; (b) sensing and tracking actual spatial changes to the spatial properties of the electronic device; (c) if the actual spatial changes to the spatial properties of the electronic device that are sensed in step (b), match the particular sequence of spatial changes that were required in the spatial challenge of step (b), then determining that the user of the electronic device is a human user.