91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4KB
    文件類型: .py
    金幣: 1
    下載: 1 次
    發布日期: 2021-07-17
  • 語言: Python
  • 標簽: main()??

資源簡介

用python編程實現維吉尼亞的唯密文破解,對密文分析,用擬重合指數。

資源截圖

代碼片段和文件信息

#Author:李志強
#?_*_?coding:utf-8?_*_
def?main():
????fo=open(“cipher.txt““r“)
????s=fo.read()
????s=str(s)
????fo.close()
????ic=0
????max_num=len(s)//26
????#?while?ic<0.06:
????#def?fenzu():
????#分組
????aves=[0]*max_num
????for?i?in?range(1max_num):
????????count?=?0
????????zicuan=[]
????????for?t?in?range?(i):
????????????fz=s[t:len(s):i]
????????????zicuan+=[fz]
????????????count+=1
????????????#print(count‘韓庚韓庚韓庚‘zicuan)
????????for?js?in?range?(i):
????????????zicuan[js]=zicuan[js].upper()
????????ics=[0]*count
????????#統計每個分組的IC值
????????for?r?in?range(count):
????????????ics[r]=tongjicisu(zicuan[r])
????????ave?=sum(ics)/count
????????print(‘第{}次分片的IC值是{}‘.format(iave))
????????aves[i-1]=ave
????#找到最可能的密鑰分組
????key_index=1
????max?=?1
????for?i?in?range(max_num):
????????max1=abs(aves[i]-0.065)
????????if?max1????????????max=max1
????????????key_index=i+1
????print(‘key_length‘key_index)
????key?=?[None]*key_index
????#得到密鑰長度后從新按密鑰長度分片計算
????zicuan2?=?[]
????for?t?in?range(key_index):
????????fz?=?s[t:len(s):key_index]
????????zicuan2?+=?[fz]
????for?i?in?range(key_index):
????????key[i]=decode(zicuan2[i])
????print(key)
????di?=?{}.fromkeys(key)
????key=di.keys()
????keys=““
????for?i?in?key:
????????keys+=i

????print(keys“密鑰“)
????mc?=?VigenereDecrypto(skeys)
????print(mc‘ecewew‘)

#?統計次數IC值
def?tongjicisu(s):
????tongjicisu?=?[0]?*?26
????zff?=?““
????ic=-0
????for?t?in?s:
????????if?65?<=?ord(t)?<=?90:
????????????zff?+=?t
????for?cisu?in?zff:
????????tongjicisu[ord(cisu)?-?65]?+=?1
????for?i?in?range?(len(tongjicisu)):
????????xic=tongjicisu[i]*(tongjicisu[i]-1)/len(zff)/(len(zff)-1)
????????ic+

評論

共有 條評論

相關資源