首页
学习
活动
专区
圈层
工具
发布

凯撒加密算法(最简单的对称加密)

凯撒算法 概述 凯撒密码是罗马扩张时期朱利斯• 凯撒(Julius Caesar)创造的,用于加密通过信使传递的作战命令。它将字母表中的字母移动一定位置而实现加密。...凯撒加密,右移2位对应结果图 因此,假如有个明文字符串“Hello”用这种方法加密的话,将变为密文: “Jgnnq” 。而如果要解密,则只要将字母向相反方向移动同样位数即可。...这里,移动的位数“2”是加密和解密所用的密钥。...输出的结果: 原文:Hello 加密后:Jgnnq 解密后:Hello 安全性 凯撒密码由于加解密比较简单,密钥总共只有 26 个,攻击者得到密文后即使不知道密钥,也可一个一个地试过去,最多试...:" + cipher + "\r\n解密后:" + text); } } 这里不光根据 offset 偏移进行加密,还加上了字符所在的下标进行混合加密。

10.9K100
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    用简单的后端代码进行页面的简单加密

    最近发现我有很多页面都是直接对接数据库的,但是没有加密,虽然我在robots.txt中设置了不被搜索引擎爬取的逻辑,但是还是难免会被扫到,这里的安全问题值得考虑。...没有经过数据库的验证,我暂时使用本地验证的方式对页面进行验证,可以满足一些普通页面的加密工作。加密或哈希处理。这意味着如果有人能够看到这个密码,他们就可以直接使用。理想情况下,应该对密码进行哈希处理,并在验证时比对哈希值。...为了提高安全性,可以考虑以下几个改进措施:使用HTTPS:确保所有的数据传输都是加密的,防止中间人攻击。...>其中密码是哈希加密的,所以我们需要对想要设置的密码进行hash加密,简单代码就能生成这个哈希值:<?

    86120

    Python的RSA加密和PBE加密

    最近在写接口的时候,遇到了需要使用RSA加密和PBE加密的情况,对方公司提供的DEMO都是JAVA的,我需要用python来实现。...在网上搜了一下,python的RSA加密这块写的还是比较多的,但是PBE较少。所以我就讲讲我在RSA加密上面遇到的坑,大家权当一乐。PBE加密里面的盐、密钥。 RSA 什么是RSA加密呢?...我们注意到,他的加密方法是:SIGNATURE_ALGORITHM = "MD5withRSA",所以我们的python签名也是需要进行MD5的。...有一个盐:对应的python盐为:"\xA9\x9B\xC8\x32\x56\x35\xE3\x03" 对应的python2.7代码: from Crypto.Hash import MD5 from...在python3的代码中,str是不能直接进行hash的,所以要抓换成utf-8进行加密,而且最后的encrypted没有encode方法,只能手动进行Base64编码。

    2.4K20

    《对称加密简单概念与代码实现》

    对称加密: 将要保护的数据用某种算法进行处理,处理后的数据成为密文。 加密算法公开,但是密钥不公开,密钥可以理解为开锁的数字密码,不知道密码就无法进行解密数据。目前常用的对称加密算法有AES。...简单来讲就是密钥长度的不一样,AES-128采用16字节的密钥。AES-256采用32字节的密钥更安全。...让我们来看下加密代码实例 // 偏移量(可自定义) public static final String VIPARA = "0123456789123456"; // AES 为16bytes...,返回加密后的字节数组,然后需要编码。...:123456 加密内容字节数: 6 加密后:W9291IebiZmw394ohe0Qiw== 解密完成后:123456 关于AES常见的使用场景: 如Http Living Streaming 简称HLS

    90021

    爱加密so保护简单脱壳测试

    so和一个保护前的so与一个说明文档,如下图: image.png 今天我们主要是分析它这个加密后的so,看它是用什么方式保护的,是否具有安全性。...根据它.doc中的说明"加密前so文件大小为14KB,加密后so文件大小为9KB。加密后so库体积可以减小40%左右。"如下图 ?...猜测可能是upx保护的,要是的样的话,我们是不是可以用"upx.exe -d 加密后的.so"来脱壳呢?当然不行,测试效果如下图(我用的是3.92)。 ? 无法脱壳!!...我们用十六进制工具打开加密后的.so发现它把UPX加壳后的标志"UPX!"改成了AJM!所以只要我们将其改回去应该就可以脱壳了。是不是很骚! 如下图所示: ? 成功了!!...我们来比较下脱壳后与原始的没有加密的so是那些不同! 只有两个字节不一样,那就是入口了,我们改回去后就能正常使用了!!

    1.9K01

    用Python加密文件

    生活中,有时候我们需要对一些重要的文件进行加密,Python 提供了诸如 hashlib,base64 等便于使用的加密库。...但对于日常学习而言,我们可以借助异或操作,实现一个简单的文件加密程序,从而强化自身的编程能力。记得给公众号加个星标,不会错过精彩内容。...基础知识 在 Python 中异或操作符为:^,也可以记作 XOR。按位异或的意思是:相同值异或为 0,不同值异或为 1。...原理 通过了解异或操作的性质,加密原理就非常清晰了。 加密操作: 首先将文件转换成二进制数,再生成与该二进制数等长的随机密钥,将二进制数与密钥进行异或操作,得到加密后的二进制数。...生成随机密钥: secrets 库是 Python 3.6 引入的伪随机数模块,适合生成随机密钥。token_bytes 函数接受一个 int 参数,用于指定随机字节串的长度。

    2.6K10

    Python加密服务(一)

    hashlib — 加密哈希算法 目标:加密哈希与信息摘要 hashlib 哈希库模块提供了许多哈希算法的 API 支持。哈希算法在中文又被称为散列函数 / 算法,此译文中将统称哈希。...sha224, sha256, sha384, sha3_224, sha3_256, sha3_384, sha3_512, sha512, shake_128, shake_256, whirlpool 简单数据...这个部分的所有例子都将使用如下简单数据: hashlib_data.py import hashlib lorem = '''Lorem ipsum dolor sit amet, consectetur...$ python3 hashlib_md5.py 3f2fd2c9e25d60fb0fa5d593b802b7a8 SHA1 例子 一个 SHA1 摘要是以相似的方式计算出来的。...$ python3 hashlib_sha1.py ea360b288b3dd178fe2625f55b2959bf1dba6eef 使用名字创建哈希 有时通过字符串对算法进行引用比直接使用构造函数更加方便

    1.6K10

    Python加密服务(二)

    hmac — 加密消息签名和验证 目的:hmac 模块实现用于消息验证的密钥散列,如 RFC 2104 中所述。 HMAC 算法可用于验证在应用程序之间传递或存储在潜在易受攻击位置的信息的完整性。...基本思想是生成与共享密钥组合的实际数据的加密散列。然后,可以使用所得到的散列来检查所发送或存储的消息以确定信任级别,而不发送秘密密钥。 签名消息 new() 函数创建一个用于计算消息签名的新对象。...$ python3 hmac_simple.py 4bcb287e284f8c21e87e14ba2dc40b16 可选的摘要类型 尽管默认的 hmac 算法是 MD5,但那不是最安全的方法。...$ python3 hmac_sha.py dcee20eeee9ef8a453453f510d9b6765921cf099 二进制摘要 前一个例子使用了 hexdigest() 方法生成可打印的摘要字符串...第一步是创建一个函数计算一个字符串的摘要,以及一个简单的类,用于实例化并通过通信通道传递。

    1.7K10

    python实现DES加密

    DES/CBC/pkcs5padding加解密 DES加密模式 加密模式:DES/CBC/pkcs5padding 加解密在线工具:http://tool.chacuo.net/cryptdes 需知道加密的密码...pip install pyDes==2.0.1 python代码实现DES加解密 from pyDes import des, CBC, PAD_PKCS5 import binascii """...""" DES 加密 :param s: 原始字符串 :param key: 加密密钥8位 :return: 加密后字符串,16进制 """ secret_key...加密后的数据通过 base64 模块进行编码转换,解密前需要先进行解码。需要注意的是,在实际应用中,需要对秘钥和数据进行适当的保护和传输加密,以确保数据的安全性。...= des.encrypt(data) print('加密后的数据:', encrypted_data) # 对加密后的数据进行 base64 编码 encrypted_data_base64 = base64

    1.2K10

    python--AES加密

    文章目录 ECB模式加密: ECB模式解密: CBC模式加密: CBC模式解密: CFB模式加密: CFB模式解密: AES加密,用的是第三方模块 pycryptodome 安装:pip install...(en_text) #将返回的字节型数据转进行base64编码 #b'Cw8uH2ODLS+sBCOJUXOM7A==\n' en_text = en_text.decode('utf8') #转换成python...mode = AES.MODE_CBC #定义模式 key = '1234567890123456'.encode('utf-8') #秘钥 ##秘钥:必须是16位字节或者24位字节或者32位字节(因为python3...字符集的,输出保存可能存在问题,所以这里转为16进制字符串 #b'f774a01820842dcc6f2d91f5db89e388' en_text = x.decode('utf-8') #转换成python...字符集的,输出保存可能存在问题,所以这里转为16进制字符串 #b'0c9eca5797060a9fdec0dd911e68110c' en_text = x.decode('utf-8') #转换成python

    1.8K20
    领券