# [Python], <sup><s>262</s> \$\cdots\$ <s>226</s></sup> 225 bytes
<!-- language-all: lang-python -->
import math
def f(l):
if(n:=len(l))<2:return 1
R=range
p=sorted([sum((l[i][k]-l[j][k])**2for k in R(len(l[0])))for i in R(n)for j in R(n)])
d=len(bin(n))-3
return p==[i*p[n]for i in R(d+2)for _ in R(2**d*math.comb(d,i))]
[Try it online!][TIO-ka4bvkld]
[Python]: https://docs.python.org/3.8/
[TIO-ka4bvkld]: https://tio.run/##pZPBbuMgEIbvfoqRL2FcEhlnq2yiJcd9gKo3ilZpjVtahyDAK1VRnj2LsaP40EPb5TL8M/DNDBrse3g5mOVP685nvbcHF2C/Cy9ZrRpoSIubDHRDzIa3ykSJv6qNU6FzBlgGd9ztzLPKwHIfb6qaCN/tCWmFluJNzlvx2lssiqo5OHgDbeCOJJIoJSL2Xj14TRKvFyExgzolfdQmapwvMxgzW86FLqwwcnK/vqkS4c8gq6Koi76TxdNh/0hqqhHlOSgfPHDI8zwThNE1XdEVSvje4lu4d51KJKSkot8mTVklLeltxJWUJctGzZKWX6oqskbSYONuJLHPkX7vWn8paoq4ItmIHOJskqKcpLoWtY6edYpU0cr/evSP2pNfIQ3t9dPgOOlmD121@vE0ozBs2XKGWT9Tgap@qoRaeNvqQHK@zRH6SPKnqVr44LQleDnyYHKU8ffEFbj6u2tJwKTUoNSgPG8uAeu0CaTJj@EE8y0c/QmOTnjOlTzleP4H "Python 3.8 (pre-release) – Try It Online"
*Very* verbose, and may have some bugs, but here's something to kick us off.
**How**
Calculates the square of the distances between all possible pairs of points (including self-pairs) and normalise them by the first non-zero length. For a cube we should then see a pattern of integers \$i = 0\dots d\$ occurring \$2^{d}{d \choose i}\$ times where \$d\$ is the dimension of the cube.