DRMLab Project
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
import random
|
||||
from modules.utils import Utils
|
||||
from modules.model import DeviceType, DeviceSubType
|
||||
|
||||
class NetflixESNGenerator:
|
||||
def __init__(self):
|
||||
self.device_type = ""
|
||||
self.device_subtype = ""
|
||||
self.device_manufacturer = ""
|
||||
self.device_model = ""
|
||||
self.device_system_id = ""
|
||||
self.uhd = False
|
||||
self.esn_output = ""
|
||||
|
||||
def select_device_type(self):
|
||||
print("Select Device Type:\n1. Android\n2. Browser")
|
||||
choice = input("Enter your choice (1/2): ")
|
||||
if choice == '1':
|
||||
self.device_type = "Android"
|
||||
elif choice == '2':
|
||||
self.device_type = "Browser"
|
||||
else:
|
||||
print("Invalid choice. Please select again.")
|
||||
self.select_device_type()
|
||||
|
||||
def select_device_subtype(self):
|
||||
print("Select Device Sub Type:\n1. Phone\n2. Tablet\n3. TV")
|
||||
choice = input("Enter your choice (1/2/3): ")
|
||||
if choice == '1':
|
||||
self.device_subtype = "Phone"
|
||||
elif choice == '2':
|
||||
self.device_subtype = "Tablet"
|
||||
elif choice == '3':
|
||||
self.device_subtype = "TV"
|
||||
else:
|
||||
print("Invalid choice. Please select again.")
|
||||
self.select_device_subtype()
|
||||
|
||||
def input_device_info(self):
|
||||
self.device_manufacturer = input("Enter Device Manufacturer: ")
|
||||
self.device_model = input("Enter Device Model: ")
|
||||
self.device_system_id = input("Enter Device System ID (e.g., 123456): ")
|
||||
|
||||
uhd_choice = input("Is this device 4K? (y/n): ")
|
||||
self.uhd = uhd_choice.lower() == 'y'
|
||||
|
||||
def generate_esn(self):
|
||||
if self.device_type == "Browser":
|
||||
self.esn_output = DeviceType.Chrome + Utils.random_string(30)
|
||||
return
|
||||
|
||||
random_number = random.randint(1000000000, 9999999999)
|
||||
esn_parts = [
|
||||
DeviceType.AndroidUHD if self.uhd else DeviceType.AndroidFHD,
|
||||
DeviceSubType.AndroidPhone if self.device_subtype == "Phone" else
|
||||
DeviceSubType.AndroidTablet if self.device_subtype == "Tablet" else
|
||||
DeviceSubType.AndroidTV,
|
||||
self.device_manufacturer[:3].upper(),
|
||||
self.device_model[:3].upper(),
|
||||
str(random_number)
|
||||
]
|
||||
self.esn_output = '-'.join(esn_parts)
|
||||
|
||||
def copy_esn(self):
|
||||
print(f"ESN Output: {self.esn_output}")
|
||||
|
||||
def run(self):
|
||||
self.select_device_type()
|
||||
self.select_device_subtype()
|
||||
self.input_device_info()
|
||||
self.generate_esn()
|
||||
self.copy_esn()
|
||||
Reference in New Issue
Block a user