Rating: 5.0

```python
from string import digits

import paramiko

CHARSET = "CFT_cdhjlnstuw{}" + digits

current_password = ""
measurements = []

def handler(title, instructions, prompt_list):
global current_password
global measurements

if instructions.startswith("["):
title_time = float(
title[13:27].replace("-", "").replace(" ", "").replace(":", "")
)
instructions_time = float(
instructions[13:27].replace("-", "").replace(" ", "").replace(":", "")
)
current_time = instructions_time - title_time

if current_time < 10:
measurements.append((current_time, CHARSET[len(measurements)]))

if len(measurements) == len(CHARSET):
measurements.sort()
print(measurements)
current_password += measurements[-1][1]
print(current_password)

measurements = []

return (current_password + CHARSET[len(measurements)],)

while True:
transport = paramiko.Transport(("hasshing.nc.jctf.pro", 1337))
transport.connect(username="ctf")
try:
transport.auth_interactive("ctf", handler)

print(current_password + CHARSET[len(measurements)])
break
except paramiko.ssh_exception.AuthenticationException:
pass
finally:
transport.close()
```