fork download
  1. from Crypto.PublicKey import RSA
  2. from Crypto.Cipher import PKCS1_v1_5
  3. from base64 import b64encode
  4.  
  5. # 讀取私鑰
  6. private_key_data = '''-----BEGIN PRIVATE KEY-----
  7. MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAIL2MCqXNL2tmaFk1N5+60bfvMzxOF8cKXtQPz2bSOktt7e1oWp1imOzOSX+Zdo9DpYLql7w0f2Mk/7QQpDEC1j5vRI1xgap27BUZo8naQxJ55aDM/758nByUVbhBB03BhI1mm66OLv3fYfCncdaJUzqUtBtKHGyCtvn0YuU0RQZAgMBAAECgYANBE9RTGovmDu28QC/hLn5928ap7dErNXqrdU7WF3s32BtYB5FKJ2yvzOk9R5GjN8QRuSOPz2ACCMFpsmW/gVqk3XKA23MufQ5X8lrPKGZnIuwwn/W5drMpuo74DFITJZI964NCBGc9NgKfUtUIjLuXUSB8nmdnH8NCntoNi3qiQJBAN/Hv3I5IT3Eo00X7p9/SG6lMtoQS9SVRKKWFKTaNO8Smtu+D1X7n5FJNiYDJXEoXvJZnm8a+Z+rgOw0C7bK9YMCQQCV0URA7LQSNoRr4kawcBUzohKd4EjkDy4aIXx1973DfLgeZjV+Ot6uKafIjG2o4yBsCADADe/uqX5K56up6DkzAkAwr1JVVVyIBanJcfV2OcjWWZZwnq8AtuDRxnkDTH3LrW6HdBf+CtoyT406Q+D3d2MAssKnRWUdecB4ovIReKJlAkBFn1KQuW+VZzBy0lz3cZ7ot9De/XPiSAusqRMl31OYnUUTG3yQhNsnJMSMNnZfne1bRvzSQ6fUyX+fX7ou43RxAkBRmPUuHVDrO/GKMcZAhI3aX35Qvc/dv/67VBHr4kw2DVgUXsvSQ5L40T/pLwftD8/v63igmryz6nsXXs6SuV4j
  8. -----END PRIVATE KEY-----'''
  9.  
  10. private_key = RSA.importKey(private_key_data)
  11.  
  12. # 創建加密器,這裡用私鑰加密
  13. cipher = PKCS1_v1_5.new(private_key)
  14.  
  15. # 要加密的訊息
  16. message = '20240925165230S820240925142258000001http://c...content-available-to-author-only...1.com:8800/test/54be1965565a4e4a954669154147de86F1727254350424DA050.009558820200001323777'
  17.  
  18. crypto = b''
  19. for chunk in [message[i:i + 117] for i in range(0, len(message), 117)]:
  20. encrypted_message = cipher.encrypt(chunk.encode('utf-8'))
  21. crypto += encrypted_message
  22.  
  23. encrypted_base64 = b64encode(crypto)
  24. print(encrypted_base64.decode('utf-8'))
  25.  
  26.  
Success #stdin #stdout 0.02s 11888KB
stdin
Standard input is empty
stdout
abUNnV79IcsWJD8uho6Q13WSly9OKbp9Fo85s0BAn6PV6ELObITfDkU7d+llXDfRCgdkVSUpBpmH7nDa4F2CL6wG3TL1aMOEZEzO07vwjeJK/xn/0aNWRjqkENr0Xd7BMhlhgDhHl6pV1/0UKcaDasYYfGpNi01lvHhuQnxjSGFnnopHwyFqybgi1OdHyy0TWSuktD82wGaEGaMuyT443uXPLRTi+YL1fI9iH0XuCn9/8J0ZSfb/KTQzdHbMcBJPijmw0z/m2ENKez/vDHIRbO8ucHr0ldyPcNqF0qoVlubDH+Bl5l2QHQxFmI+1nsSl7uhhOr+Ekc/cMtOSUv+v+w==