Replace signature function with generic catchall

This commit is contained in:
Omar Roth
2018-02-22 13:01:37 -06:00
parent 225625a0fb
commit 13ef4440d0
2 changed files with 19 additions and 70 deletions

View File

@@ -175,54 +175,24 @@ def search(query, client)
end
end
def swap(a, b)
def splice(a, b)
c = a[0]
a[0] = a[b % a.size]
a[b % a.size] = c
return a
end
def decrypt_signature(a, base)
def decrypt_signature(a)
a = a.split("")
case base
when "vflG9lb96"
a = swap(a, 26)
a.reverse!
a = swap(a, 8)
a = swap(a, 61)
when "vflxuxnEY"
a.delete_at(0..2)
a.reverse!
c = a[0]
a[0] = a[49 % a.size]
a[49] = c
when "vflAXQwEj"
a = swap(a, 26)
a.reverse!
a = swap(a, 8)
a = swap(a, 61)
when "vflNpPGQq"
a = swap(a, 26)
a.reverse!
a = swap(a, 8)
a = swap(a, 61)
when "vflCCoUi2"
a = swap(a, 26)
a.reverse!
a = swap(a, 8)
a = swap(a, 61)
when "vflg4IfMn"
a = swap(a, 6)
a = swap(a, 64)
a = swap(a, 25)
a = swap(a, 53)
a.delete_at(0..1)
a.reverse!
a.delete_at(0..2)
else
raise "Could not decrypt signature for player #{base}"
end
a.delete_at(0..1)
a = splice(a, 2)
a = splice(a, 51)
a = splice(a, 9)
a.delete_at(0..1)
a.reverse!
a = splice(a, 15)
a.delete_at(0..2)
return a.join("")
end