kopia lustrzana https://github.com/meshtastic/firmware
				
				
				
			
		
			
				
	
	
		
			34 wiersze
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
			
		
		
	
	
			34 wiersze
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
import sys
 | 
						|
import base64
 | 
						|
 | 
						|
def base64_to_hex_string(b64_string):
 | 
						|
    try:
 | 
						|
        # Decode the Base64 string to raw bytes
 | 
						|
        decoded_bytes = base64.b64decode(b64_string)
 | 
						|
    except Exception as e:
 | 
						|
        raise ValueError(f"Invalid Base64 input: {e}")
 | 
						|
    
 | 
						|
    # Check if the decoded result is exactly 32 bytes
 | 
						|
    if len(decoded_bytes) != 32:
 | 
						|
        raise ValueError("Decoded Base64 input must be exactly 32 bytes.")
 | 
						|
    
 | 
						|
    # Convert each byte to its hex representation
 | 
						|
    hex_values = [f"0x{byte:02x}" for byte in decoded_bytes]
 | 
						|
    
 | 
						|
    # Join the formatted hex values with commas
 | 
						|
    formatted_output = "{ " + ", ".join(hex_values) + " };"
 | 
						|
    return formatted_output
 | 
						|
 | 
						|
if __name__ == "__main__":
 | 
						|
    # Check if a Base64 string was provided in command line arguments
 | 
						|
    if len(sys.argv) != 2:
 | 
						|
        print("Usage: python script.py <base64-string>")
 | 
						|
        sys.exit(1)
 | 
						|
    
 | 
						|
    b64_string = sys.argv[1]
 | 
						|
    try:
 | 
						|
        formatted_hex = base64_to_hex_string(b64_string)
 | 
						|
        print(formatted_hex)
 | 
						|
    except ValueError as e:
 | 
						|
        print(e)
 |