关于读书(培根)

1.读书为的是权衡和思考事理;不是为了辩护,盲目信从或寻找谈话的资料。


2.有的书只需选读;有的书只需略读;有的书则非全部精度不可。


3.读书的时间花费太多,便是进步的迟缓;太过炫耀自己的学问,便是矫揉造作;而一切都依学理来判断,则又是书呆子了。


4.历史能使人变得聪明;诗歌能使人增加想象力;数学能让人精确;哲学能使人思想深刻;伦理学能使人态度庄重;逻辑学、修辞学能使人擅长辞令。

 

培根密码解密的方法主要分为以下几个步骤: ### 识别密文特征 培根密码是一种替换密码,可以通过不明显的特征来隐藏密码信息,比如大小写、正斜体等,只要两个不同的属性,密码即可隐藏。例如,在“bacon bAcon iS a MEaT prodUcT prePared frOm a pig and UsuALLy cUReD.” 这个题目中,就是利用大小写来隐藏密码信息,联想到培根密码,将大写视为A,小写视为B [^1][^3]。 ### 转换为二进制形式 将识别出的特征转换为A和B的序列。以“bacon bAcon iS a MEaT prodUcT prePared frOm a pig and UsuALLy cUReD.”为例,代码实现如下: ```python import string timu = "bAcon iS a MEaT prodUcT prePared frOm a pig and UsuALLy cUReD." s = string.ascii_lowercase b = string.ascii_uppercase result = "" for a in timu: if a in s: result += "A" elif a in b: result += "B" print(result) ``` ### 分组并对应字母表 将得到的A和B序列按每5个一组进行划分,然后根据培根密码的字母表对应转换为字母。培根密码加密有两种方式: 方式一: | 字母 | 编码 | 字母 | 编码 | 字母 | 编码 | 字母 | 编码 | | --- | --- | --- | --- | --- | --- | --- | --- | | A | aaaaa | G | aabba | N | abbab | T | baaba | | B | aaaab | H | aabbb | O | abbba | U | babaa | | C | aaaba | I | abaaa | P | abbbb | V | babab | | D | aaabb | J | abaab | Q | baaaa | W | babba | | E | aabaa | K | ababa | R | baaab | X | babbb | | F | aabab | L | ababb | S | baaba | Y | bbaaa | | | | M | abbaa | | | Z | bbaab | 方式二: | 字母 | 编码 | 字母 | 编码 | 字母 | 编码 | 字母 | 编码 | | --- | --- | --- | --- | --- | --- | --- | --- | | a | AAAAA | g | AABBA | n | ABBAA | t | BAABA | | b | AAAAB | h | AABBB | o | ABBAB | u-v | BAABB | | c | AAABA | i-j | ABAAA | p | ABBBA | w | BABAA | | d | AAABB | k | ABAAB | q | ABBBB | x | BABAB | | e | AABAA | l | ABABA | r | BAAAA | y | BABBA | | f | AABAB | m | ABABB | s | BAAAB | z | BABBB | 以下是根据方式一进行解密的Python代码示例: ```python bacon_dict = { "AAAAA": 'A', "AAAAB": 'B', "AAABA": 'C', "AAABB": 'D', "AABAA": 'E', "AABAB": 'F', "AABBA": 'G', "AABBB": 'H', "ABAAA": 'I', "ABAAB": 'J', "ABABA": 'K', "ABABB": 'L', "ABBAA": 'M', "ABBAB": 'N', "ABBBA": 'O', "ABBBB": 'P', "BAAAA": 'Q', "BAAAB": 'R', "BAABA": 'S', "BAABB": 'T', "BABAA": 'U', "BABAB": 'V', "BABBA": 'W', "BABBB": 'X', "BBAAA": 'Y', "BBAAB": 'Z' } ciphertext = "这里填入转换后的A和B序列" groups = [ciphertext[i:i+5] for i in range(0, len(ciphertext), 5)] plaintext = "" for group in groups: if group in bacon_dict: plaintext += bacon_dict[group] print(plaintext) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值