#1
I've been working on a script to automate the creation of SafeUM accounts. I thought I'd share it here for anyone interested in experimenting with it. By the way, this is an improved version of the original author's code, and the credit goes to the original author (unknown).

Features:
- Automated SafeUM account creation using WebSocket.
- Multi-threaded for faster account generation.
- Logs success, failure, and retries.
- Saves generated accounts to a text file.
 

Requirements:
- Python 3.x
- `websocket-client` library

 

Installation:
You can install the required `websocket-client` library using pip if it's not already installed:
Code:
pip install websocket-client

How to use:
Save this script as `{file-name.py}` and run the script with the command
 
Code:
python file-name.py

Python Script: 
Code:
 
import os
import sys
import time
import webbrowser
from concurrent.futures import ThreadPoolExecutor
from gzip import decompress
from json import dumps
from os import system
from random import choice, choices
from ssl import CERT_NONE

try:
    from websocket import create_connection
except ModuleNotFoundError:
    system('pip install websocket-client')
    from websocket import create_connection

# Constants
WEBSOCKET_URL = "wss://195.13.182.213/Auth"
SafeUM_Friedx_FILE = "SafeUM_Friedx.txt"
THREAD_POOL_SIZE = 1000



# Function to create SafeUM accounts
def create_safeum_account():
    global failed, success, retry
    username = choice('qwertyuiooasdfghjklzxcvpbnm1234567890') + ''.join(choices(list('qwertyuioasdfghjklzxcvbnpm1234567890'), k=16))
    try:
        con = create_connection(WEBSOCKET_URL,
                                header={"app": "com.safeum.android", "host": None, "remoteIp": "195.13.182.213",
                                        "remotePort": str(8080), "sessionId": "b6cbb22d-06ca-41ff-8fda-c0ddeb148195",
                                        "time": "2024-04-11 11:00:00", "url": "wss://51.79.208.190/Auth"},
                                sslopt={"cert_reqs": CERT_NONE})
        con.send(dumps({
            "action": "Register",
            "subaction": "Desktop",
            "locale": "en_IN",
            "gmt": "+05",
            "password": {
                "m1x": "3a70ad7f213c85a07be3e286d8dfb36dc00a63d7e478f85e01bdf64c60faabe8",
                "m1y": "8650979d3fd51d90656fd29aed8e5783cebbcfef9a41d9c411ec7510b43c1c0c",
                "m2": "d032eecd05538e3b9b6b56cd99d3b224df69c1b1d2258f38d81495ec45c4049b",
                "iv": "ba6fdefaf5905df2f14d47e5a0a893c8",
                "message": "b1af2fef4cbafba221731c8c95525be5095289d3d3239903493bfdfd8c6a9803371eede7c16580cb5580c36331f07cf7c9f4bc2a0cd8661105c56c3fad9f984d32d7c02313dda6a2b344ca6abd5be08c"
            },
            "magicword": {
                "m1x": "c9c7329681f42a037e2d67a78fa3970e073e418495784b7eed368f03c910ecf8",
                "m1y": "bf56876f8ecfa5585cf35a17c2eeb014fbca2d2dce56ddf58a9727ed7de94c0c",
                "m2": "255ad39a6763a30bdd9b2516ae4502ef0d87849d768bb481ae917ac4f220b18b",
                "iv": "2533e41075731c8190b8203f2ab9c64e",
                "message": "dcaa803e5002e79988db370e8848d00e"
            },
            "magicwordhint": "0000",
            "login": str(username),
            "devicename": "Xiaomi 220733SPH",
            "softwareversion": "1.1.0.1640",
            "nickname": "hakdie828292jxnd",
            "os": "AND",
            "deviceuid": "b0c55c7c17fddd4b",
            "devicepushuid": "*cYwQmtN0GC4:APA91bGdy73ku9qhNJi8Inhe01e2pXa_dp-CiVULHhPMkcqgi4JFOTCMS-jHhJzxhoO5ZdmGhjFgy-qxGQFSB86l0A1iQGM9RSl3c6X33zPAqxkRQ6C1qm2Gfx94e72joG2twLFbh61E",
            "osversion": "and_12.0.0",
            "id": "157120470"
        }))
        gzip = decompress(con.recv()).decode('utf-8')
        if '"status":"Success"' in gzip:
            success += 1
            accounts.append(username + ':@Friedx')
            with open(SafeUM_Friedx_FILE, 'a') as f:
                f.write(username + ":@Friedx | Username : Password\n")
        else:
            failed += 1
    except:
        retry += 1

# Main function
def main():
    global failed, success, retry, accounts
    failed = success = retry = 0
    accounts = []
    start = ThreadPoolExecutor(max_workers=THREAD_POOL_SIZE)
    while True:
        start.submit(create_safeum_account)
        print(f'\rSuccess: {success} | Failed: {failed} | Retry: {retry}', end='', flush=True)
        if success >= 1000:
            print("\nCreated Accounts Successfully Sent To Owner Group")
            break
        time.sleep(0.5)

# Entry point of the script
if __name__ == "__main__":
    main()


Important Notes:

1. Ethical Use: Ensure you have permission to create accounts on SafeUM. Unauthorized use is likely against their terms of service and may be illegal.
2. Resource Limits: Running a large number of threads might consume significant resources and could be detected by the platform.
 

Feel free to tweak the script as per your needs. If you have any questions or face any issues, feel free to ask here.
 
Happy coding!