密码学入门 古老的围栏密码技术

1、简述

        由于隐私和安全的重要性不断增加,已经开发了多种加密方法和技术来保护我们的敏感数据。随着时间的推移而演变,从经典密码学发展到现代密码学。

        在本文中,我们将了解一种被称为围栏密码技术的技术,涵盖其加密和解密过程及其局限性。

        在了解围栏密码之前,我们先讨论一下经典密码学技术,即替换和转置。在替换技术中,原始消息的字符被替换为不同的字符、数字或符号。凯撒密码是替代技术的一个例子。相反,转置技术涉及通过排列重新排列明文。

        围栏密码属于转置技术的范畴,我们改变每个明文字母的位置。

2、加密

        围栏密码的加密过程需要选择轨道的数量,以所选轨道数量确定的Z字形对角写入消息,然后从左到右将每个轨道上的字符组合起来,以获得加密的消息。下面,我们将用一个例子来解释每个步骤。

        首先,将“RAILFENCE”视为纯文本。接下来,让我们将轨道或围栏的数量取为三,这也可以称为密钥。该键将决定锯齿形图案的高度。随后,我们可以按从左到右的Z字形斜写消息:

        最后,我们将组合各个行来生成密文,在本例中为“RFEALECIN”。

3、解密

        要开始解密,我们首先需要知道密文中的行数和列数。列数等于密文的长度。然后,我们必须计算出用于加密的行数,作为密钥。在确定了行和列的数量后,我们可以构建表格并确定字母的合适位置,因为围栏密码以Z字形从左到右对角加密文本:

        *表示密文中的字母被放置以形成明文的位置。我们从第一个“rail”(最上面一行)开始填写字母,然后从左向右移动。然后,我们在下一个轨道上继续这种模式,以此类推,直到所有星号位置都填充了密文中的字母:

        我们可以将从上到下、从左到右的字符组合起来,得到明文,即“RAILFENCE”。

4、小结

        看起来是不是觉得有种开玩笑的感觉?不过很多技术都是从看似可笑的方式发展出来。随着时代进步不断的将旧的技术淘汰,也是很自然的事情。

        使用频率分析可以很容易地破坏围栏密码的加密。加密的密钥是一个小于或等于密文长度的数字。因此,它极易受到暴力攻击。

        简言之,围栏技术是经典密码学的入门技术,现代自然没有人使用,它的局限性使其适合用于教育目的。因此,要保护敏感数据,在这个数字时代,我们依靠AES、RSA等现代加密技术来保护我们的信息和隐私。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/299088.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【IC设计】移位寄存器

目录 理论讲解背景介绍什么是移位寄存器按工作模式分类verilog语法注意事项 设计实例循环移位寄存器算术双向移位寄存器5位线性反馈移位寄存器伪随机码发生器3位线性反馈移位寄存器32位线性反馈移位寄存器串行移位寄存器(打4拍)双向移位寄存器&#xff1…

Java研学-web操作crud

一 思路 1 组件 页面显示:JSP   接受用户请求:Servlet   和数据库交互:MyBatis 2 基础准备 ① 创建 web 项目,导入需要依赖的 jar 包,放入 web/WEB-INF/lib目录中 ② 创建数据库表 CREATE TABLE employee( id bigint(11)…

八大算法排序@归并排序(C语言版本)

目录 归并排序概念算法思想第一步第二步第三步 算法步骤代码实现代码1代码优化 时间复杂度空间复杂度特性总结 归并排序 概念 归并排序(Merge Sort)是一种基于分治策略的经典排序算法。它的基本思想是将待排序的数组划分成两个子数组,分别对…

响应式布局 Bootstrap

响应式开发 原理:就是根据媒体查询针对不同宽度的设备进行布局和样式的设置,从而适配不同设备的目的。 响应式需要一个父级做为布局容器,来配合子级元素来实现变化效果。 原理:就是在不同屏幕下,通过媒体查询来改变这…

基于Python+Django,开发一款房屋租赁系统

学习文档 学习过程中,遇到问题可以咨询作者 功能介绍 平台采用B/S结构,后端采用主流的PythonDjango进行开发,前端采用主流的Vue.js进行开发。 整个平台包括前台和后台两个部分。 前台功能包括:首页、房屋详情页、用户中心模块。…

[java]JAVA中文版API手册 -jdk_api_1.8

有mac和win版本 链接:https://pan.baidu.com/s/14WGXJYBICeSxgg6OxBVGRQ 提取码:c03p

【总线接口】1.以Xilinx开发板为例,直观的认识硬件板卡和接口

初接触硬件,五花八门的总线、接口一定会让你有些疑惑,我尝试用一系列文章来解开你的疑惑 系列文章 【总线接口】1.以Xilinx开发板为例,直观的认识硬件接口 【总线接口】2.学习硬件这些年接触过的硬件接口、总线 大汇总 【总线接口】…

C# Unity将地形(Terrain)导出成obj文件

C# Unity将地形(Terrain)导出成obj文件 从其他地方搬运过来的,只能到出obj模型,不能导出贴图 using System.IO; using System.Text; using UnityEditor; using UnityEngine; using System;enum SaveFormat { Triangles, Quads } enum SaveResolution {…

《计算机科学中的建模技术》复习点

0 考试题型 题型:选择、填空、大题(综合题) 分值:选择填空30分,综合70分 填空:基本概念题 第 1 章:计算机科学基本问题与数学建模概要 1.1 科学计算的基本概念 科学计算是指利用计算机来完成…

Java二分查找冒泡排序插入排序

二分查找 又叫折半查找,要求待查找的序列有序。每次取中间位置的值与待查关键字比较,如果中间位置的值比待查关键字大,则在前半部分循环这个查找的过程,如果中间位置的值比待查关键字小,则在后半部分循环这个查找的过程…

【占用网络】VoxFormer 基于视觉的3D语义场景方案 CVPR 2023

前言 本文分享“占用网络”方案中,来自CVPR2023的VoxFormer,它基于视觉实现3D语义场景补全。 使用Deformable Attention从图像数据中,预测三维空间中的体素占用情况和类别信息。 VoxFromer是一个两阶段的框架: 第一个阶段&…

TypeScript 从入门到进阶之基础篇(四) symbol类型篇

系列文章目录 TypeScript 从入门到进阶系列 TypeScript 从入门到进阶之基础篇(一) ts基础类型篇TypeScript 从入门到进阶之基础篇(二) ts进阶类型篇TypeScript 从入门到进阶之基础篇(三) 元组类型篇TypeScript 从入门到进阶之基础篇(四) symbol类型篇 持续更新中… 文章目录 …

mysql之视图执行计划

一.视图 1.1视图简介 1.2 创建视图 1.3视图的修改 1.4视图的删除 1.5查看视图 二.连接查询案例 三.思维导图 一.视图 1.1视图简介 虚拟表,和普通表一样使用 MySQL中的视图(View)是一个虚拟表,其内容由查询定义。与实际表不…

解决 POST http://x.x.x.x:8000/aaa/ net::ERR_CONNECTION_TIMED_OUT

记录一下我遇到的问题和解决办法 我的项目前后端分离,在前端用的vue访问后端时连接不上后端,一切操作都触发不了后端,数据也传不到后端去; 原因:url有问题,url地址写的不是本机,所以导致连接超…

OpenCV的安装和vscode的配置

在图像处理领域,OpenCV的使用是必不可少的,这里介绍一下OpenCV的安装及其在vscode中的配置 1.OpenCV的安装 (1)安装依赖 sudo apt-get install build-essentialsudo apt-get install cmake git libgtk2.0-dev pkg-config libavc…

vue2中vuex详细使用

1.安装 说明:也就是版本号,一般vue2安装vuex3。 npm i vuex3.6.2 2.搭建架子 执行流程如下: 初始化状态:在state对象中定义了一个名为message的属性,并将其初始值设置为"启动"。 定义变更函数&#xff08…

leetcode 每日一题 2023年12月30日 一周中的第几天

题目 给你一个日期,请你设计一个算法来判断它是对应一周中的哪一天。 输入为三个整数:day、month 和 year,分别表示日、月、年。 您返回的结果必须是这几个值中的一个 {"Sunday", "Monday", "Tuesday", &qu…

pytorch集智-2单车预测器

完整代码在个人主页简介链接pytorch路径下可找到 1 单车预测器1.0 1.1 人工神经元 对于sigmoid函数来说,w控制函数曲线的方向,b控制曲线水平方向位移,w控制曲线在y方向的幅度 1.2 多个人工神经元 模型如下 数学上可证,有限神经…

[大厂实践] 无停机迁移大规模关键流量(下)

在系统升级、迁移的过程中,如何验证系统逻辑、性能正确无误,是一个很大的挑战。这一系列介绍了Netflix通过重放流量测试解决这一挑战的实践。原文: Migrating Critical Traffic At Scale with No Downtime — Part 2 想象一下,你被心爱的Netf…