import cv2 import hashlib import secrets def fetch_frame_opencv(url): cap = cv2.VideoCapture(url) ret, frame = cap.read() cap.release() if not ret: raise ValueError("Failed to fetch frame.") return frame def generate_random_numbers(frame, bit_lengths=[16, 32, 64, 128, 256]): _, img_encoded = cv2.imencode('.jpg', frame) img_bytes = img_encoded.tobytes() entropy = hashlib.sha256(img_bytes).digest() # Use secrets.randbits directly return {length: secrets.randbits(length) for length in bit_lengths} url = "http://192.168.0.200/mjpg/video.mjpg" try: frame = fetch_frame_opencv(url) random_numbers = generate_random_numbers(frame) for length, number in random_numbers.items(): print(f"{length}-bit random number: {hex(number)}") except Exception as e: print(f"Error: {e}")