使用凯撒加密法加密

凯撒密码

 

凯撒:

除了是一个男人之外,他还是古罗马时期伟大的军事家和政治家。高卢战争的时候,他发明了这个密码,使得可以在敌人无法理解的情况下与联军进行联络。

 

凯撒密码:

正如刚才我们例子中的,将明文中的各个字符按顺序进行 n 个字符错位转换的加密方法我们称为凯撒密码。

优点:实现了最简单的加密方案,容易理解

缺点:对于有一点点密码学功底的朋友来说,安全强度几乎为零,有点弱不禁风。

 

密码的安全强度:

刚才我们提到了安全强度这个概念,顺道给大家介绍下。

例如凯撒密码,加密钥匙充其量也只有24个,也就是说,不管移动多少字符,最多只需要进行24次猜解即可破译出来!

知识普及:古代罗马字母只有25个哦 ^_^

 

栅栏密码

 

尽管名字看上去挺酷,不过很遗憾让大家失望了,栅栏密码也是很脆弱的。

所谓栅栏密码,就是把要加密的明文分成N个一组,然后把每组的第一个字母连起来,形成一段无规律的密文。

注意,栅栏密码本身有一个潜规则,就是组成栅栏的字母一般不会太多。(一般不超过30个,也就是一、两句话)

 

在线虚拟加密:https://inventwithpython.com/cipherwheel/

# -*- coding: utf-8 -*-
# @Time    : 2017/4/27 22:13
# @Author  : xiaojingjing
# @Site    : 
# @File    : pyperclip_test.py
# @Software: PyCharm
import  pyperclip


# message='This is my secret message.'
message=input("请输入需要加密的信息(必须为英文):")

key=int(input("请输入加密key的值(0~25整数):"))
#tells the program to encrypt or decrypt
# set to 'encrypt' or  'decrypt'
mode='encrypt'

#every possible symbol that can be encrypted
LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'

#stores the encrypted/decrypted form of the message
translated=''

#capitalize the string in message
#upper转换成大写,lower转换成小写
message=message.upper()

#run the encryption/decrypted code on each symbol in the message string
for symbol in message:
    if symbol in LETTERS:
        #get the encrypted(or decrypted) number for this symbol
        num=LETTERS.find(symbol)
        if mode=='encrypt':
            num=num+key
        elif mode=='decrypt':
            num=num-key

        #handle the wrap-around if num is larger than the length of
        #LETTERS or less than 0
        if num>=len(LETTERS):
            num=num-len(LETTERS)
        elif num<0:
            num=num+len(LETTERS)
        #add encrypted/decrypted number's symbol at the end of translated
        translated=translated+LETTERS[num]
    else:
        #just add the symbol without encrypting/decrypting
        translated=translated+symbol
print("使用凯撒加密,其中K='",key,"'时,对'",message,"'加密结果为:",translated)

#加密后的字符串结果复制到剪切板,通过Ctrl+V即可粘贴
pyperclip.copy(translated)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 信息特征:信息特征指的是信息的一些基本属性,如真实性、完整性、保密性、可用性等等。 2. 信息安全的要素:信息安全的要素包括机密性、完整性、可用性、可控性和不可抵赖性等。 3. 凯撒加密凯撒加密是一种古老的密码学技术,它是一种简单的替换密码,通过将明文每个字母替换为字母表固定位置的字母来进行加密。 4. 公钥加密概念的理解:公钥加密是一种加密技术,它使用一对密钥,即公钥和私钥,来进行加密和解密操作。公钥可以公开,任何人都可以使用它来加密信息,但是只有拥有相应私钥的人才能解密信息。 5. 对称加密和非对称加密的优缺点:对称加密加密速度快,但密钥管理困难;非对称加密密钥管理方便,但加密速度慢。 6. Hash函的用途、概念:Hash函是一种将任意长度的消息压缩到固定长度输出的函,它主要用于据完整性验证、字签名等方面。 7. 身份鉴别:身份鉴别是指通过验证用户提供的凭证来确认用户的身份,以保证信息安全。 8. 防火墙原理:防火墙是一种网络安全设备,它通过检查网络流量并根据预定义的安全规则来决定是否允许流量通过。 9. Biba模型与BLP模型:Biba模型和BLP模型都是基于安全策略模型的安全模型,Biba模型主要关注据完整性,BLP模型主要关注据保密性。 10. DOS攻击:DOS攻击是一种通过向目标计算机发送大量无效的网络流量来使其无正常工作的攻击。 11. 计算机病毒及其主要来源:计算机病毒是一种可以自我复制并对计算机系统造成破坏的恶意软件,它的主要来源包括病毒制作者、病毒工具和病毒感染的文件等。 12. 误用检测、异常检测、最小泄漏、最小特权:误用检测是指通过监视用户的行为来检测用户是否在滥用系统;异常检测是指通过检测系统的异常行为来检测是否有攻击行为;最小泄漏是指最小化泄漏的敏感信息;最小特权是指最小化用户或进程的权限。 13. 网络攻击的几种手段:网络攻击的几种手段包括拒绝服务攻击、ARP欺骗、DNS欺骗、SQL注入等。 14. 据库攻击手段:据库攻击手段包括SQL注入、跨站脚本攻击、缓冲区溢出攻击等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值