【Python】加密/解密

 

复制代码
"""
-*- coding:utf-8 -*-
@Time   :2020/11/4 19:02
@Author :
@File   :jar_encryption_util.py
@Version:1.0
"""


class JarEncryptionUtil:
    @staticmethod
    def str_encryption_ascii(str_1: str, salt=0):
        """
        字符串转ASCII码
        :param str_1: 字符串
        :param salt: 盐
        :return: ASCII码列表
        """
        ascii_list = []
        for i in range(len(str_1)):
            # 字符串 —> ASCII
            ascii_list.append(ord(str_1[i]) + salt)
        return ascii_list

    @staticmethod
    def ascii_encryption_str(ascii_1: list, salt=0):
        """
        ASCII码转字符串
        :param ascii_1: ASCII列表
        :param salt: 盐
        :return: 字符串
        """
        result = ''
        for i in range(len(ascii_1)):
            # ASCII —> 字符串
            result += chr(ascii_1[i] - salt)
        return result


if __name__ == '__main__':
    # 加密字符串
    str1 = '测,,@aA试测试测试'
    #
    salt = 12345

    # 加密
    print('加密后:{}'.format(JarEncryptionUtil.str_encryption_ascii(str1, salt)))

    # 解密
    ascii_1 = [40324, 12389, 77637, 12409, 12442, 12410, 48142, 40324, 48142, 40324, 48142]
    print('解密后:{}'.format(JarEncryptionUtil.ascii_encryption_str(ascii_1, salt)))
复制代码

 

posted @   淡怀  阅读(176)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示