示例代码(Python)
fromCrypto.CipherimportAESimportbase64defencrypt(plain_text,key):cipher=AES.new(key.encode('utf-8'),AES.MODE_ECB)plain_text+=''*(len(cipher.block_size)-len(plain_text)%cipher.block_size)encrypted_data=cipher.encrypt(plain_text.encode('utf-8'))returnbase64.b64encode(encrypted_data).decode('utf-8')defdecrypt(encrypted_text,key):encrypted_data=base64.b64decode(encrypted_text)cipher=AES.new(key.encode('utf-8'),AES.MODE_ECB)decrypted_data=cipher.decrypt(encrypted_data).decode('utf-8')returndecrypted_data.rstrip()#示例用法key="thisisakey123"plain_text="Hello,World!"encrypted=encrypt(plain_text,key)decrypted=decrypt(encrypted,key)print(f"Encrypted:{encrypted}")print(f"Decrypted:{decrypted}")
日志和监控
在实际开发中,有效的日志和监控系统可以帮助我们及时发现和响应安全事件:
安全日志记录:记录敏感操作和访问日志,以便在发生安全事件时可以追溯。importlogginglogger=logging.getLogger('security')logger.setLevel(logging.INFO)handler=logging.FileHandler('security.log')formatter=logging.Formatter('%(asctime)s-%(levelname)s-%(message)s')handler.setFormatter(formatter)logger.addHandler(handler)logger.info('Useraccessedsensitivedata')实时监控和告警:使用监控工具如Prometheus、Grafana进行实时监控,并?配置告警策略。
示例代码(Python)
fromCrypto.CipherimportAESimportbase64defencrypt(plain_text,key):cipher=AES.new(key.encode('utf-8'),AES.MODE_ECB)plain_text+=''*(len(cipher.block_size)-len(plain_text)%cipher.block_size)encrypted_data=cipher.encrypt(plain_text.encode('utf-8'))returnbase64.b64encode(encrypted_data).decode('utf-8')defdecrypt(encrypted_text,key):encrypted_data=base64.b64decode(encrypted_text)cipher=AES.new(key.encode('utf-8'),AES.MODE_ECB)decrypted_data=cipher.decrypt(encrypted_data).decode('utf-8')returndecrypted_data.rstrip()#示例用法key="thisisakey123"plain_text="Hello,World!"encrypted=encrypt(plain_text,key)decrypted=decrypt(encrypted,key)print(f"Encrypted:{encrypted}")print(f"Decrypted:{decrypted}")
示例代码(Python)
defredact_data(data,sensitive_info):fromfunctoolsimportpartialfromredactimportredactredact_sensitive_info=partial(redact,info=sensitive_info,replacement='')returnredact_sensitive_info(data)#示例用发data="UserID:12345,Email:user@example.com"redacted_data=redact_data(data,"12345,user@example.com")print(f"RedactedData:{redacted_data}")
示例代码(Python)
importhashlibdefhash_data(data):sha256=hashlib.sha256()sha256.update(data.encode('utf-8'))returnsha256.hexdigest()#示例用法data="SensitiveData"hashed_data=hash_data(data)print(f"HashedData:{hashed_data}")
校对:黄耀明(1C0m4pJyqZtPma0S7t9ZFfz4hTykKag)


