iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python实现栅栏密码的加密解密方法详解
  • 863
分享到

Python实现栅栏密码的加密解密方法详解

Python栅栏密码加密Python栅栏密码解密 2023-01-16 12:01:09 863人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录1.栅栏密码介绍2.栅栏密码加密3.栅栏密码解密(爆破)4.W型栅栏密码加密1.栅栏密码介绍 所谓栅栏密码,就是把要加密的明文分成N个一组,然后把每组的第1个字连起来,形成一段无

1.栅栏密码介绍

所谓栅栏密码,就是把要加密的明文分成N个一组,然后把每组的第1个字连起来,形成一段无规律的话。不过栅栏密码本身有一个潜规则,就是组成栅栏的字母一般不会太多。 —百度百科

例如: 将明文字符串"hello world"分为2组,即栅栏(密钥)为2。

去掉空格:helloworld
2个1组:
 helloworld
取第一个字母组合:hlool
取第二个字母组合:elwrd
最后得到栅栏加密为:hloolelwrd 

注意:当len(strings)%n != 0时,缺少的位数使用@填充。len(strins)代表明文字符串长度,n代表栅栏数(密钥)。

2.栅栏密码加密

fence_Passwd_encode.py:

#!/usr/bin/python
# Env: python3
# Author: afei_0and1
# -*- coding: utf8 -*-
def fence_Passwd_encode():string = input('请输入需要加密的明文:')num = int(input('请输入栅栏数(密钥):'))res = ''for i in range(int(num)):#遍历循环输出结果for j in range(int(string.__len__()/num + 0.5)):#print(j)try:res += string[j*num+i]except:passprint(res)if(__name__ == '__main__'):fence_Passwd_encode() 

3.栅栏密码解密(爆破)

fence_Passwd_burst.py:

#!/usr/bin/Python
# Env: python3
# -*- coding: utf8 -*-
import sys
def fence_Passwd_burst():if (len(sys.argv) < 2):print("-----------------------------------------------")print(" ")print("Useg: python %s <fence_encryp_string>" % sys.argv[0])print("eg: python fence_Passwd_burst.py 'hloolelwrd'")print(" ")print("-----------------------------------------------")returnsecret = sys.argv[1]#栅栏密码解密,循环遍历有多少栏res = [step for step in range(2, len(secret)) if len(secret)%step == 0]for step in res:flag = ''#获取解密结果,以step栏进行遍历获取解密后的flagfor i in range(step):flag += secret[i::step]print('第%s栏: 解密结果:%s' %(str(step), flag))
if(__name__ == '__main__'):fence_Passwd_burst() 

4.W型栅栏密码加密

W型栅栏密码是栅栏密码的变种,将明文按W型排列,然后将每一行的字母依次连起来组成密文,行数就是栅栏数,即密钥。解密则同样根据这个“W”图案,将每一列的字母依次连接起来组成明文。W型栅栏密码的密钥不只是密文长度的因数,任何小于密文长度大于1的整数都有可能。

fence_W-Type-encode.py:

#!/usr/bin/python
# Env: python3
# -*- coding: utf8 -*-
import sys
def generaget_W():if (len(sys.argv) < 3):print("-----------------------------------------------")print(" ")print("Useg: python %s <string> <col_num>" % sys.argv[0])print("eg: python fence_W-Type_encode.py helloworld 3")print(" ")print("-----------------------------------------------")returnstring = sys.argv[1]num = sys.argv[2]arr = [['*']*len(string) for i in range(int(num))]#行数,初始定义为0row = 0upflag = False#在矩阵上按“W”画出stringfor column in range(len(string)):arr[row][column] = string[column]if row == int(num)-1:upflag = Trueif row == 0:upflag = Falseif upflag:#上边界row -= 1else:#下边界row += 1#打印W图案for i in arr:print(i)#存放加密结果res = []for row in range(int(num)):for column in range(len(string)):if arr[row][column] != '*':res.append(arr[row][column])print(''.join(res))if(__name__ == '__main__'):generaget_W() 

到此这篇关于Python实现栅栏密码的加密解密方法详解的文章就介绍到这了,更多相关Python栅栏密码内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python实现栅栏密码的加密解密方法详解

本文链接: https://www.lsjlt.com/news/177887.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python实现栅栏密码的加密解密方法详解
    目录1.栅栏密码介绍2.栅栏密码加密3.栅栏密码解密(爆破)4.W型栅栏密码加密1.栅栏密码介绍 所谓栅栏密码,就是把要加密的明文分成N个一组,然后把每组的第1个字连起来,形成一段无...
    99+
    2023-01-16
    Python栅栏密码加密 Python栅栏密码解密
  • Python脚本暴力破解栅栏密码
    今天遇到一个要破解的栅栏密码,先给大家介绍通用的脚本。 方法一(通用脚本): #!/usr/bin/env python # -*- coding: gbk -*- # -*- coding: ut...
    99+
    2022-06-04
    栅栏 脚本 暴力
  • python密码加密与解密的实现
    目录一、对称加密1.1 安装第三方库 - PyCrypto1.2 加密实现二、非对称加密三、摘要算法3.1 md5加密3.2 sha1加密3.3 sha256加密3.4 sha384...
    99+
    2023-02-07
    python 密码加密 python 密码解密
  • Python:实现密码加密解密(含完整源码)
    Python:实现密码加密解密(含完整源码) 密码加密是保护用户隐私的一种有效手段。本文将讲解如何使用Python编写一个简单的密码加密解密程序,并提供完整源代码。 步骤一:安装依赖库 我们需要使用到...
    99+
    2023-09-11
    python 开发语言
  • python如何实现凯撒密码加密解密
    这篇文章主要介绍了python如何实现凯撒密码加密解密的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python如何实现凯撒密码加密解密文章都会有所收获,下面我们一起来看看吧。凯撒加密就是通过将字母移动一定的位...
    99+
    2023-07-02
  • 详解ASP.NET中加密和解密的方法
    散列运算 mscorlib.dll下的System.Security.Cryptography下: 抽象类HashAlgorithm抽象类MD5MD5CryptoServicePro...
    99+
    2022-11-13
    ASP.NET 加密和解密
  • python实现RSA加密(解密)算法
    RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准。 今天只有短的RSA钥匙才可能被强力方式解破。到2008年为止,世界上还没有任何可靠的攻击...
    99+
    2022-06-04
    算法 python RSA
  • python实现凯撒密码加密解密的示例代码
    凯撒加密就是通过将字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移,被替换成密文。例如,当偏移量是2的时候,所有的字母B将被替换...
    99+
    2022-11-11
  • Python编程密码学文件加密与解密的方法
    本文小编为大家详细介绍“Python编程密码学文件加密与解密的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python编程密码学文件加密与解密的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。本章要点o...
    99+
    2023-06-30
  • C#实现加密与解密详解
    目录一、Hash加密,使用HashAlgorithm哈希算法类的派生类(MD5、SHA1等)1、使用抽象类HashAlgorithm2、使用抽象类MD53、使用MD5CryptoSe...
    99+
    2022-11-13
  • JavaScript实现加密与解密详解
    目前原生JS貌似并没有提供MD5计算相关的函数方法,只能自己实现或者使用前辈大神写好的。 一、使用crypto.js库进行加密 GitHub的 https://github...
    99+
    2022-11-13
  • 利用Python实现RSA加密解密方法实例
    目录前言一、安装模块二、生成密钥对三、加密四、解密五、完整代码总结前言 加密技术在数据安全存储,数据传输中发挥着重要作用,能够保护用户隐私数据安全,防止信息窃取。RSA是一种非对称加...
    99+
    2022-11-10
  • AES加密解密python实现
    1.前言         关于现代密码学算法,可以查看以下博客全面了解 CISSP考试要求里的“应用密码学”内容辅助记忆趣味串讲_晓翔仔的博客-CSDN博客         AES的细节知识,可以查阅 AES加密算法的详细介绍与实现_Tim...
    99+
    2023-09-20
    python 开发语言 密码学 非对称加密 AES
  • Python实现RSA加密解密
    目录前言一、安装模块二、生成密钥对三、加密四、解密五、完整代码前言 加密技术在数据安全存储,数据传输中发挥着重要作用,能够保护用户隐私数据安全,防止信息窃取。RSA是一种非对称加密技...
    99+
    2022-11-10
  • Go实现凯撒密码加密解密
    目录1 凯撒密码加密设计思想2 Go实现2.1 导入包2.2 编写 caesar 方法3 凯撒密码解密4 其他实现5 测试总结1 凯撒密码加密 凯撒密码(英语:Caesar ciph...
    99+
    2022-11-11
  • SpringSecurity如何实现升级密码加密方式详解
    目录本章内容密码加密方式怎么升级升级方案源码实战第一种方式: Spring Bean他是怎么自动升级到BCrypt加密方式的第二种方式: 多继承接口方式第三种方式: HttpSecu...
    99+
    2023-01-04
    Spring Security升级密码加密 Spring Security密码加密
  • SpringSecurity BCrypt密码加密和解密的方法是什么
    本篇内容主要讲解“SpringSecurity BCrypt密码加密和解密的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SpringSecurity BCrypt...
    99+
    2023-07-06
  • Python使用Crypto库实现加密解密的示例详解
    目录一:crypto库安装二:python使用crypto1:crypto的加密解密组件des.py2:crypto组件使用知识补充一:crypto库安装 pycrypto,pycr...
    99+
    2023-01-11
    Python Crypto加密解密 Python Crypto加密 Python Crypto解密 Python Crypto
  • Java AES加密解密的简单实现方法
    废话不多说,直接上代码package com.mstf.aes; import java.io.UnsupportedEncodingException;import java.security.InvalidKeyException;im...
    99+
    2023-05-31
    java rsa 加密
  • Python实现对字符串的加密解密方法示例
    本文实例讲述了Python实现对字符串的加密解密方法。分享给大家供大家参考,具体如下: 需求是是要将密码存在数据库里,所以要加密解密是可逆的,在数据库里不要有特殊字符,防止数据库备份和恢复中出错。 安装Py...
    99+
    2022-06-04
    示例 字符串 加密解密
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作