mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
placeholder for security measures
This commit is contained in:
parent
e830e55606
commit
37a291180c
1 changed files with 26 additions and 0 deletions
26
Demo/pdist/security.py
Executable file
26
Demo/pdist/security.py
Executable file
|
@ -0,0 +1,26 @@
|
|||
class Security:
|
||||
|
||||
def __init__(self):
|
||||
import os
|
||||
env = os.environ
|
||||
if env.has_key('PYTHON_KEYFILE'):
|
||||
keyfile = env['PYTHON_KEYFILE']
|
||||
elif env.has_key('HOME'):
|
||||
keyfile = env['HOME'] + '.python_keyfile'
|
||||
else:
|
||||
keyfile = '.python_keyfile'
|
||||
try:
|
||||
self._key = eval(open(keyfile).readline())
|
||||
except IOError:
|
||||
raise IOError, "python keyfile %s not found" % keyfile
|
||||
|
||||
def _generate_challenge(self):
|
||||
import whrandom
|
||||
return whrandom.randint(100, 100000)
|
||||
|
||||
def _compare_challenge_response(self, challenge, response):
|
||||
return self._encode_challenge(challenge) == response
|
||||
|
||||
def _encode_challenge(self, challenge):
|
||||
p, m = self._key
|
||||
return pow(challenge, p, m)
|
Loading…
Add table
Add a link
Reference in a new issue