mirror of
https://github.com/noDRM/DeDRM_tools
synced 2024-12-27 21:59:11 +01:00
update obok.py with new hashes and code from minmax
This commit is contained in:
parent
a13d08c3bc
commit
a863a4856a
1 changed files with 11 additions and 10 deletions
|
@ -1,6 +1,9 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Version 3.1.9 December 2015
|
||||||
|
# Update for latest version of Windows Desktop app.
|
||||||
|
#
|
||||||
# Version 3.1.8 November 2015
|
# Version 3.1.8 November 2015
|
||||||
# Handle the case of Kobo Arc or Vox device (i.e. don't crash).
|
# Handle the case of Kobo Arc or Vox device (i.e. don't crash).
|
||||||
#
|
#
|
||||||
|
@ -144,6 +147,9 @@ import xml.etree.ElementTree as ET
|
||||||
import string
|
import string
|
||||||
import shutil
|
import shutil
|
||||||
|
|
||||||
|
# List of all known hash keys
|
||||||
|
KOBO_HASH_KEYS = ['88b3a2e13', 'XzUhGYdFp', 'NoCanLook']
|
||||||
|
|
||||||
class ENCRYPTIONError(Exception):
|
class ENCRYPTIONError(Exception):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -384,16 +390,11 @@ class KoboLibrary(object):
|
||||||
def __getuserkeys (self, macaddr):
|
def __getuserkeys (self, macaddr):
|
||||||
userids = self.__getuserids()
|
userids = self.__getuserids()
|
||||||
userkeys = []
|
userkeys = []
|
||||||
# This version is used for versions before 3.17.0.
|
for hash in KOBO_HASH_KEYS:
|
||||||
deviceid = hashlib.sha256('NoCanLook' + macaddr).hexdigest()
|
deviceid = hashlib.sha256(hash + macaddr).hexdigest()
|
||||||
for userid in userids:
|
for userid in userids:
|
||||||
userkey = hashlib.sha256(deviceid + userid).hexdigest()
|
userkey = hashlib.sha256(deviceid + userid).hexdigest()
|
||||||
userkeys.append(binascii.a2b_hex(userkey[32:]))
|
userkeys.append(binascii.a2b_hex(userkey[32:]))
|
||||||
# This version is used for 3.17.0 and later.
|
|
||||||
deviceid = hashlib.sha256('XzUhGYdFp' + macaddr).hexdigest()
|
|
||||||
for userid in userids:
|
|
||||||
userkey = hashlib.sha256(deviceid + userid).hexdigest()
|
|
||||||
userkeys.append(binascii.a2b_hex(userkey[32:]))
|
|
||||||
return userkeys
|
return userkeys
|
||||||
|
|
||||||
class KoboBook(object):
|
class KoboBook(object):
|
||||||
|
|
Loading…
Reference in a new issue