generate passphrases after burn
This commit is contained in:
parent
c16036b58d
commit
3f3b980b98
@ -26,14 +26,23 @@ except:
|
|||||||
script_links = {}
|
script_links = {}
|
||||||
mmdvm_logins = []
|
mmdvm_logins = []
|
||||||
|
|
||||||
def gen_passphrase(dmr_id):
|
##def gen_passphrase(dmr_id):
|
||||||
_new_peer_id = bytes_4(int(str(dmr_id)[:7]))
|
## _new_peer_id = bytes_4(int(str(dmr_id)[:7]))
|
||||||
calc_passphrase = base64.b64encode(bytes.fromhex(str(hex(libscrc.ccitt((_new_peer_id) + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))))[2:].zfill(4)) + (_new_peer_id) + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))
|
## b_list = create_app().get_burnlist()
|
||||||
## print(calc_passphrase)
|
## print(_new_peer_id)
|
||||||
if use_short_passphrase == True:
|
#### try:
|
||||||
return str(calc_passphrase)[-9:-1]
|
## #if get_burnlist()[_new_peer_id] != 0:
|
||||||
elif use_short_passphrase ==False:
|
## for ui in b_list:
|
||||||
return str(calc_passphrase)[2:-1]
|
## if b_list != 0:
|
||||||
|
## calc_passphrase = base64.b64encode(bytes.fromhex(str(hex(libscrc.ccitt((_new_peer_id) + get_burnlist()[_new_peer_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + get_burnlist()[_new_peer_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))))[2:].zfill(4)) + (_new_peer_id) + get_burnlist()[_new_peer_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + get_burnlist()[_new_peer_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))
|
||||||
|
#### except:
|
||||||
|
## else:
|
||||||
|
## calc_passphrase = base64.b64encode(bytes.fromhex(str(hex(libscrc.ccitt((_new_peer_id) + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))))[2:].zfill(4)) + (_new_peer_id) + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))
|
||||||
|
#### print(calc_passphrase)
|
||||||
|
## if use_short_passphrase == True:
|
||||||
|
## return str(calc_passphrase)[-9:-1]
|
||||||
|
## elif use_short_passphrase ==False:
|
||||||
|
## return str(calc_passphrase)[2:-1]
|
||||||
# Query radioid.net for list of IDs
|
# Query radioid.net for list of IDs
|
||||||
def get_ids(callsign):
|
def get_ids(callsign):
|
||||||
try:
|
try:
|
||||||
@ -253,6 +262,26 @@ def create_app():
|
|||||||
edit_user.initial_admin_approved = False
|
edit_user.initial_admin_approved = False
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
|
|
||||||
|
def gen_passphrase(dmr_id):
|
||||||
|
_new_peer_id = bytes_4(int(str(dmr_id)[:7]))
|
||||||
|
trimmed_id = int(str(dmr_id)[:7])
|
||||||
|
b_list = get_burnlist()
|
||||||
|
print(b_list)
|
||||||
|
burned = False
|
||||||
|
for ui in b_list.items():
|
||||||
|
print(ui)
|
||||||
|
#print(b_list)
|
||||||
|
if ui[0] == trimmed_id:
|
||||||
|
if ui[0] != 0:
|
||||||
|
calc_passphrase = base64.b64encode(bytes.fromhex(str(hex(libscrc.ccitt((_new_peer_id) + b_list[trimmed_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + b_list[trimmed_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))))[2:].zfill(4)) + (_new_peer_id) + b_list[trimmed_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + b_list[trimmed_id].to_bytes(2, 'big') + burn_int.to_bytes(2, 'big') + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))
|
||||||
|
burned = True
|
||||||
|
if burned == False:
|
||||||
|
calc_passphrase = base64.b64encode(bytes.fromhex(str(hex(libscrc.ccitt((_new_peer_id) + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))))[2:].zfill(4)) + (_new_peer_id) + append_int.to_bytes(2, 'big') + bytes.fromhex(str(hex(libscrc.posix((_new_peer_id) + append_int.to_bytes(2, 'big'))))[2:].zfill(8)))
|
||||||
|
if use_short_passphrase == True:
|
||||||
|
return str(calc_passphrase)[-9:-1]
|
||||||
|
elif use_short_passphrase ==False:
|
||||||
|
return str(calc_passphrase)[2:-1]
|
||||||
|
|
||||||
|
|
||||||
def update_from_radioid(callsign):
|
def update_from_radioid(callsign):
|
||||||
edit_user = User.query.filter(User.username == callsign).first()
|
edit_user = User.query.filter(User.username == callsign).first()
|
||||||
@ -330,6 +359,7 @@ def create_app():
|
|||||||
@app.route('/generate_passphrase', methods = ['GET'])
|
@app.route('/generate_passphrase', methods = ['GET'])
|
||||||
@login_required
|
@login_required
|
||||||
def gen():
|
def gen():
|
||||||
|
#print(str(gen_passphrase(3153591))) #(int(i[0])))
|
||||||
try:
|
try:
|
||||||
#content = Markup('<strong>The HTML String</strong>')
|
#content = Markup('<strong>The HTML String</strong>')
|
||||||
#user_id = request.args.get('user_id')
|
#user_id = request.args.get('user_id')
|
||||||
@ -343,7 +373,7 @@ def create_app():
|
|||||||
#print(id_dict)
|
#print(id_dict)
|
||||||
content = '\n'
|
content = '\n'
|
||||||
for i in id_dict.items():
|
for i in id_dict.items():
|
||||||
if i[1] == '':
|
if isinstance(i[1], int) == True and i[1] != 0:
|
||||||
link_num = str(random.randint(1,99999999)).zfill(8) + str(time.time()) + str(random.randint(1,99999999)).zfill(8)
|
link_num = str(random.randint(1,99999999)).zfill(8) + str(time.time()) + str(random.randint(1,99999999)).zfill(8)
|
||||||
script_links[i[0]] = link_num
|
script_links[i[0]] = link_num
|
||||||
#print(script_links)
|
#print(script_links)
|
||||||
@ -365,6 +395,27 @@ def create_app():
|
|||||||
<p> </p>
|
<p> </p>
|
||||||
'''
|
'''
|
||||||
elif i[1] == 0:
|
elif i[1] == 0:
|
||||||
|
link_num = str(random.randint(1,99999999)).zfill(8) + str(time.time()) + str(random.randint(1,99999999)).zfill(8)
|
||||||
|
script_links[i[0]] = link_num
|
||||||
|
#print(script_links)
|
||||||
|
content = content + '''\n
|
||||||
|
<table style="width: 300px;" border="1">
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align: center;">Your passphrase for <strong>''' + str(i[0]) + '''</strong>:</p>
|
||||||
|
<p style="text-align: center;">Copy and paste: <strong>''' + str(gen_passphrase(int(i[0]))) + '''</strong></p>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<p style="text-align: center;">Phonetically spelled: <span style="text-decoration: underline;"><em>''' + convert_nato(str(gen_passphrase(int(i[0])))) + '''</em></span></p>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<p> </p>
|
||||||
|
'''
|
||||||
|
elif i[1] == '':
|
||||||
content = content + '''
|
content = content + '''
|
||||||
<table style="width: 300px;" border="1">
|
<table style="width: 300px;" border="1">
|
||||||
<tbody>
|
<tbody>
|
||||||
@ -825,6 +876,8 @@ def create_app():
|
|||||||
|
|
||||||
if authorized_peer(dmr_id)[1] == 0:
|
if authorized_peer(dmr_id)[1] == 0:
|
||||||
passphrase = gen_passphrase(dmr_id)
|
passphrase = gen_passphrase(dmr_id)
|
||||||
|
elif authorized_peer(dmr_id)[1] != 0 and isinstance(authorized_peer(dmr_id)[1], int) == True:
|
||||||
|
passphrase = gen_passphrase(dmr_id)
|
||||||
elif authorized_peer(dmr_id)[1] == '':
|
elif authorized_peer(dmr_id)[1] == '':
|
||||||
passphrase = legacy_passphrase
|
passphrase = legacy_passphrase
|
||||||
elif authorized_peer(dmr_id)[1] != '' or authorized_peer(dmr_id)[1] != 0:
|
elif authorized_peer(dmr_id)[1] != '' or authorized_peer(dmr_id)[1] != 0:
|
||||||
@ -957,10 +1010,10 @@ def create_app():
|
|||||||
|
|
||||||
def get_burnlist():
|
def get_burnlist():
|
||||||
b = BurnList.query.all()
|
b = BurnList.query.all()
|
||||||
print(b)
|
#print(b)
|
||||||
burn_dict = {}
|
burn_dict = {}
|
||||||
for i in b:
|
for i in b:
|
||||||
print(i.dmr_id)
|
#print(i.dmr_id)
|
||||||
burn_dict[i.dmr_id] = i.version
|
burn_dict[i.dmr_id] = i.version
|
||||||
return burn_dict
|
return burn_dict
|
||||||
|
|
||||||
@ -1053,7 +1106,7 @@ def create_app():
|
|||||||
@app.route('/auth', methods=['POST'])
|
@app.route('/auth', methods=['POST'])
|
||||||
def auth():
|
def auth():
|
||||||
hblink_req = request.json
|
hblink_req = request.json
|
||||||
print((hblink_req))
|
## print((hblink_req))
|
||||||
if hblink_req['secret'] in shared_secrets:
|
if hblink_req['secret'] in shared_secrets:
|
||||||
if 'login_id' in hblink_req:
|
if 'login_id' in hblink_req:
|
||||||
if type(hblink_req['login_id']) == int:
|
if type(hblink_req['login_id']) == int:
|
||||||
@ -1105,8 +1158,6 @@ def create_app():
|
|||||||
reason='Incorrect password')
|
reason='Incorrect password')
|
||||||
response = make_response(msg, 401)
|
response = make_response(msg, 401)
|
||||||
elif hblink_req['burn_list']: # == 'burn_list':
|
elif hblink_req['burn_list']: # == 'burn_list':
|
||||||
print('get burn')
|
|
||||||
print(get_burnlist())
|
|
||||||
response = jsonify(
|
response = jsonify(
|
||||||
burn_list=get_burnlist()
|
burn_list=get_burnlist()
|
||||||
)
|
)
|
||||||
@ -1114,7 +1165,6 @@ def create_app():
|
|||||||
else:
|
else:
|
||||||
message = jsonify(message='Authentication error')
|
message = jsonify(message='Authentication error')
|
||||||
response = make_response(message, 401)
|
response = make_response(message, 401)
|
||||||
print(hblink_req)
|
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user