defreg(i=0): if i == 100: return global lastname time.sleep(1.5) lastname = get_usename(lastname) print(lastname) r = requests.get(reg_url.format(username=lastname)) cookies = r.cookies.get_dict() print('reg') buy(cookies, i)
temp = "}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#\"!" t = input() for text in t: print(temp[ord(text) - 33], end='') print()
''' The following Python implementation of Shamir's Secret Sharing is released into the Public Domain under the terms of CC0 and OWFa: https://creativecommons.org/publicdomain/zero/1.0/ http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0 See the bottom few lines for usage. Tested on Python 2 and 3. '''
from __future__ import division from __future__ import print_function
import random import functools
# 12th Mersenne Prime # (for this application we want a known prime number as close as # possible to our security level; e.g. desired security level of 128 # bits -- too large and all the ciphertext is large; too small and # security is compromised) _PRIME = 2**127 - 1 # 13th Mersenne Prime is 2**521 - 1
def_eval_at(poly, x, prime): '''evaluates polynomial (coefficient tuple) at x, used to generate a shamir pool in make_random_shares below. ''' accum = 0 for coeff inreversed(poly): accum *= x accum += coeff accum %= prime return accum
defmake_random_shares(minimum, shares, prime=_PRIME): ''' Generates a random shamir pool, returns the secret and the share points. ''' if minimum > shares: raise ValueError("pool secret would be irrecoverable") poly = [_RINT(prime) for i inrange(minimum)] points = [(i, _eval_at(poly, i, prime)) for i inrange(1, shares + 1)] return poly[0], points
def_extended_gcd(a, b): ''' division in integers modulus p means finding the inverse of the denominator modulo p and then multiplying the numerator by this inverse (Note: inverse of A is B such that A*B % p == 1) this can be computed via extended Euclidean algorithm http://en.wikipedia.org/wiki/Modular_multiplicative_inverse#Computation ''' x = 0 last_x = 1 y = 1 last_y = 0 while b != 0: quot = a // b a, b = b, a%b x, last_x = last_x - quot * x, x y, last_y = last_y - quot * y, y return last_x, last_y
def_divmod(num, den, p): '''compute num / den modulo prime p To explain what this means, the return value will be such that the following is true: den * _divmod(num, den, p) % p == num ''' inv, _ = _extended_gcd(den, p) return num * inv
def_lagrange_interpolate(x, x_s, y_s, p): ''' Find the y-value for the given x, given n (x, y) points; k points will define a polynomial of up to kth order ''' k = len(x_s) assert k == len(set(x_s)), "points must be distinct" defPI(vals): # upper-case PI -- product of inputs accum = 1 for v in vals: accum *= v return accum nums = [] # avoid inexact division dens = [] for i inrange(k): others = list(x_s) cur = others.pop(i) nums.append(PI(x - o for o in others)) dens.append(PI(cur - o for o in others)) den = PI(dens) num = sum([_divmod(nums[i] * den * y_s[i] % p, dens[i], p) for i inrange(k)]) return (_divmod(num, den, p) + p) % p
defrecover_secret(shares, prime=_PRIME): ''' Recover the secret from share points (x,y points on the polynomial) ''' iflen(shares) < 2: raise ValueError("need at least two shares") x_s, y_s = zip(*shares) return _lagrange_interpolate(0, x_s, y_s, prime)