Files
deep-wine-runner/novnc-client/qvncwidget/rfbdes.py
2024-07-30 16:36:45 +08:00

20 lines
599 B
Python

import pyDes
class RFBDes(pyDes.des):
def setKey(self, key):
"""
RFB protocol for authentication requires client to encrypt
challenge sent by server with password using DES method. However,
bits in each byte of the password are put in reverse order before
using it as encryption key.
"""
newkey = list()
for bsrc in key:
btgt = 0
for i in range(8):
if bsrc & (1 << i):
btgt = btgt | (1 << 7-i)
newkey.append(btgt)
super(RFBDes, self).setKey(newkey)