当前位置: 首页 > news >正文

维吉尼亚密码

维吉尼亚密码属于多表代换密码
在这里插入图片描述

在这里插入图片描述
其中A<–>0,B<–>1,…,Z<–>25,则每个密钥K相当于一个长度为m的字母串,称为密钥字。维吉尼亚密码一次加密m个明文字母。

示例:设m=6,密钥字为“CIPHER”,对应数字串K=(2,8,15,7,4,17)。要加密明文为:thiscrypto,则
在这里插入图片描述则相应的密文为:VPXZGIAXIV
解密时,使用相同的密钥字进行逆运算即可。

可以看出,维吉尼亚密码的密钥空间为26^m。

加密:

Plaintext = 'THISCRYPTO'#字母需要大写
K = [2,8,15,7,4,17]#print(K)#密钥Ciphertext = ''
for i in range(len(Plaintext)):M_i = ord(Plaintext[i]) - 65 K_i = K[i%len(K)]C_i = (M_i+K_i)%26Ciphertext += chr(C_i+ 65) 
print(Ciphertext)

解密:

Ciphertext = 'VPXZGIAXIV'   
K = [2,8,15,7,4,17]Plaintext = ''
for i in range(len(Ciphertext)):C_i = ord(Ciphertext[i]) -65 K_i = K[i%len(K)]M_i = (C_i - K_i)%26Plaintext += chr(M_i+ 65) 
print(Plaintext)

相关文章:

维吉尼亚密码

维吉尼亚密码属于多表代换密码 其中A<–>0&#xff0c;B<–>1&#xff0c;…&#xff0c;Z<–>25&#xff0c;则每个密钥K相当于一个长度为m的字母串&#xff0c;称为密钥字。维吉尼亚密码一次加密m个明文字母。 示例&#xff1a;设m6&#xff0c;密钥字为…...

ubuntu20.04挂载拓展盘保姆级流程

背景&#xff1a;跑模型玩时&#xff0c;发现机子硬盘太小了&#xff0c;搞个1t固态作为挂载盘。以下为操作全流程记录 1、开始root权限操作 sudo su若进不去&#xff0c;考虑是否给root设置过密码&#xff0c;新系统第一次进入需要设置密码。 进入成功&#xff1a; rooty:…...

顶顶通电话机器人接口对接开源ASR(语音识别)

前景介绍 目前大部分用户使用的都是在线ASR按照分钟或者按次付费&#xff0c;之前开源ASR效果太差不具备商用的条件&#xff0c;随着 阿里达摩院发布了大量开源数据集或者海量工业数据训练的模型&#xff0c;识别效果已经和商用ASR差距非常小&#xff0c;完全具备了很多场景代…...

windows消息机制

windows开发比较简单&#xff0c;首先要理解的就是消息机制。 Windows消息机制是指Windows操作系统中的消息传递机制。在Windows中&#xff0c;应用程序通过消息进行通信和交互。消息是一种轻量级的通信方式&#xff0c;用于在不同的窗口、线程或进程之间传递信息。 在Windows…...

整数划分——DP

用 j j j 个数表示 i i i 的方案数&#xff0c;考虑dp 转移考虑最小值是否为1 无限制 若为1&#xff0c;则转移到 f ( i 1 , j 1 ) f(i1, j1) f(i1,j1)不为1&#xff0c;则全部1&#xff0c;转移到 f ( i j , j ) f(ij, j) f(ij,j) 数之间不能重复 那么相当于每次整…...

Git切换用户常用命令

1、查看 查看用户名 &#xff1a; git config user.name查看密码&#xff1a; git config user.password查看邮箱&#xff1a; git config user.email查看配置信息&#xff08;包含上面的信息&#xff09;&#xff1a; $ git config --list2、新增、切换 修改用户名 git…...

一般香港服务器带宽选多大够用?(带宽计算方法)

​  在海外IDC市场份额中&#xff0c;香港服务器依托自身优越的服务器资源条件&#xff0c;在各个行业中发挥的重要作用。但是&#xff0c;不同业务对网络带宽的要求各不相同&#xff0c;弄清楚如何计算带宽需求对于确保业务平稳运行至关重要&#xff0c;最好从一开始就使用正…...

vue中使用ali-oss上传文件到阿里云上

1.使用 npm 安装ali-oss npm install ali-oss --save2.写ali-oss.js // 引入ali-oss let OSS require(ali-oss) let client new OSS({region: oss-cn-xxx, // bucket所在的区域&#xff0c; 默认oss-cn-hangzhousecure: true, // secure: 配合region使用&#xff0c;如果指…...

php实战案例记录(17)计算时间的函数及其示例说明

在PHP中&#xff0c;有许多函数可以用于计算和处理时间。以下是一些常用的计算时间的函数及其示例说明&#xff1a; time()&#xff1a;获取当前时间的Unix时间戳。 $currentTimestamp time(); echo $currentTimestamp;date()&#xff1a;将Unix时间戳格式化为指定的日期和时…...

基于Keil a51汇编 —— MPL 宏定义

MPL 宏 Ax51汇编程序支持的宏处理语言&#xff08;MPL&#xff09;是一种字符串替换工具&#xff0c;使您能够编写可修复的代码块&#xff08;宏&#xff09;并将其插入源文本中的一个或多个位置。 宏处理器查看源文件的方式与汇编程序不同。 对于汇编程序来说&#xff0c;源…...

Android 13 骁龙相机点击拍照流程分析(二)——点击拍照到存入相册

一.前言 本篇是在Android 13 骁龙相机点击拍照流程分析(一)——点击拍照到更新到左下角缩略图文章的基础上进行延申的,前面的预览、点击拍照的过程参考第一篇:Android 13 骁龙相机点击拍照流程分析(一)——点击拍照到更新到左下角缩略图-CSDN博客 二.生成图片并保存 从第…...

常见算法-巴斯卡三角形(Pascal)

常见算法-巴斯卡三角形&#xff08;Pascal&#xff09; 1、说明 巴斯卡&#xff08;Pascal&#xff09;三角形基本上就是在解 nCr&#xff0c;因为三角形上的每一个数字各对应一个nCr&#xff0c;其中 n 为 row&#xff0c;而 r 为 column&#xff0c;如下&#xff1a; 0C0 1…...

AI:09-基于深度学习的图像场景分类

图像场景分类是计算机视觉领域的重要任务之一,它涉及将图像分为不同的场景类别,如城市街景、山脉风景、海滩等。本文将介绍基于深度学习的图像场景分类方法,并提供相应的代码实例,展示了深度学习在图像场景分类中的技术深度和应用前景。 图像场景分类是计算机视觉中的一项…...

uni-app:引入echarts(使用renderjs)

效果 代码 <template><view click"echarts.onClick" :prop"option" :change:prop"echarts.updateEcharts" id"echarts" class"echarts"></view> </template><script>export default {data()…...

使用wireshark解析ipsec esp包

Ipsec esp包就是ipsec通过ike协议协商好后建立的通信隧道使用的加密包&#xff0c;该加密包里面就是用户的数据&#xff0c;比如通过的语音等。 那么如何将抓出来的esp包解析出来看呢&#xff1f; 获取相关的esp的key信息. 打开wireshark -> edit->preferences 找到pr…...

linux如何删除最近操作的日志

Linux系统下&#xff0c;不同的应用程序可能会生成不同的日志文件。如果你想要删除最近一段时间内的操作日志&#xff0c;可以使用一些命令来完成。 以下是一些常见的命令&#xff1a; dmesg&#xff1a;该命令用于显示内核环境下的运行信息和警告信息。如果你需要清空dmesg缓…...

android端MifareClassicTool

github地址 GitHub - ikarus23/MifareClassicTool: An Android NFC app for reading, writing, analyzing, etc. MIFARE Classic RFID tags. 开源项目 下载: https://www.icaria.de/mct/releases/ 功能 1、读取Mifare Classic卡片 2、编辑并保存卡片的数据 3、写入Mifare C…...

设计模式 - 迭代器模式

目录 一. 前言 二. 实现 三. 优缺点 一. 前言 迭代器模式是一种行为型设计模式&#xff0c;它提供了一种统一的方式来访问集合对象中的元素&#xff0c;而不暴露集合内部的表示方式。简单地说&#xff0c;就是将遍历集合的责任封装到一个单独的对象中&#xff0c;我们可以按…...

Docker之Dockerfile搭建lnmp

目录 一、搭建nginx ​编辑 二、搭建Mysql&#xff08;简略版&#xff09; 三、搭建PHP 五、补充 主机名ip地址主要软件mysql2192.168.11.22Docker 代码示例 systemctl stop firewalld systemctl disable firewalld setenforce 0docker network create --subnet172.18.…...

排序算法——选择排序

一、介绍&#xff1a; 选择排序就是按照一定的顺序从选取第一个元素索引开始&#xff0c;将其储存在一个变量值中&#xff0c;根据排序规则比较后边每一个元素与这个元素的大小&#xff0c;根据排序规则需要&#xff0c;变量值的索引值进行替换&#xff0c;一轮遍历之后&#x…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心

当仓库学会“思考”&#xff0c;物流的终极形态正在诞生 想象这样的场景&#xff1a; 凌晨3点&#xff0c;某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径&#xff1b;AI视觉系统在0.1秒内扫描包裹信息&#xff1b;数字孪生平台正模拟次日峰值流量压力…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信

文章目录 Linux C语言网络编程详细入门教程&#xff1a;如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket&#xff08;服务端和客户端都要&#xff09;2. 绑定本地地址和端口&#x…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中&#xff0c;其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下&#xff1a; 初始判断与哈希计算&#xff1a; 首先&#xff0c;putVal 方法会检查当前的 table&#xff08;也就…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

Windows安装Miniconda

一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...

jmeter聚合报告中参数详解

sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample&#xff08;样本数&#xff09; 表示测试中发送的请求数量&#xff0c;即测试执行了多少次请求。 单位&#xff0c;以个或者次数表示。 示例&#xff1a;…...