基于单片机的简单加密系统软件设计与开发毕业论文
2021-06-24 21:32:50
摘 要
本文主要介绍了基于单片机的简单数据加密系统的软件设计与开发相关的的内容,使用语言为C语言。所选用单片机型号为STC89C52系列芯片。单片机能够实现简单的可编程控制和计算能力,可以良好地实现设计的数据加密功能,并通过LCD屏幕和LED数码管显示输出结果。通过C语言编程,实现DES加密算法的计算,通过矩阵键盘输入字符型数据,由LCD显示屏幕输出密文结果。
数据加密方面最为广泛使用的是DES(Data Encryption Standard)数据加密标准。此标准最初于1977年被美国国家标准局确定为联邦资料处理标准,并在世界范围被广泛使用。这一标准可以由C语言简单地实现,并用于加密字符数据。由于矩阵键盘的限制,单片机端的输入明文数据位数限制为8位,且输入内容限制在0-F的十六进制共16个字符,并由LCD显示屏输出最多24位数字形式的密文数据。
关键词 单片机 DES 数据加密 C语言
ABSTRACT
This article mainly introduced the simple data encryption system based on single chip microcomputer software design and development of the related content, use of language is the C language. Models for the STC89C52 series chip chooses microcontroller. Microcontroller can realize a simple programmable control and computing ability, can well realize the design of data encryption, and through the LCD screen and LED digital tube display output. Through the C language programming, realize the calculation of DES encryption algorithm, through the matrix keyboard input, character data output ciphertext results by LCD display screen.
Data Encryption is the most widely used in the DES (Data Encryption Standard) Data Encryption Standard. This standard first is determined by the national bureau of standards (as in 1977 the federal information processing standards, and is widely used around the world. This standard can be realized simply by C language, and is used to encrypt the data characters. Because of the limitation of matrix keyboard microcontroller the clear data input digits limit for eight, and restrict the input in 0 F the hexadecimal 16 characters, and by the LCD display output up to 24 digital cipher text in the form of data.
KEYWORDS MCU DES data encryption C language
目 录
摘 要 I
ABSTRACT II
第1章 绪论 1
第2章 系统原理概述 2
2.1 DES加密算法基本原理 2
2.2 单片机系统硬件原理 5
2.2.1 AT89C52系列芯片的特点 5
2.2.2 AT89C52芯片的管脚说明 6
2.2.3 LED数码管显示原理 7
2.2.4 数码管字形编码 8
2.2.5 矩阵键盘原理 9
第3章 软件编程的设计思路介绍 10
3.1 C语言实现DES算法的基本设计思路 10
3.2 单片机各部分的编程控制 11
3.2.1 LED数码管点亮的控制 11
3.2.2 矩阵键盘的编程控制 12
3.2.3 LCD1602显示屏显示输出的编程控制 14
第4章 开发环境介绍 16
4.1 VC 2010开发环境介绍 16
4.2 KEIL C51开发环境介绍 16
第5章 整体程序设计及硬件测试 18
5.1 C语言编写实现DES加密算法 18
5.2 单片机实现字符数据输入输出显示 18
第6章 整合软件与硬件系统 21
结 论 22
参考文献 23
附 录 24
附录1 C语言编写DES加密的实现 24
附录2 LED数码管和LCD显示屏的显示程序 38
附录3 单片机平台C语言的简单字符加密程序完整代码 42
致 谢 62
第1章 绪论
数据加密一直以来都是人们所关注的部分,早在上世纪早期,由于战争所引发的对于数据加密的强烈需求,促进了相关加密标准和密码学的发展。从最早出现的莫尔斯电码,到现在的各种强大的加密技术,对加密数据的关注也从仅限于军方发展到了一般民众对个人隐私的关心。其中,被在世界范围内广泛应用的一大标准即为DES数据加密标准,其便于应用,设备成本低,安全性高。曾一度成为联邦资料加密标准,
并在现在仍然被用于一般用户的非机密数据加密的研究[1]。
1972年,从属美国国家商务部的国家标准统计局提出了一个项目,意在制定一个保护计算机数据的标准。计算基金科学技术研究所(ICST)作为国家标准统计局的一个主要经营单位,成立以应对1965年的一条联邦法律 BrooksAct(PL89-306),该法律要求新的标准要改善联邦政府的计算机使用[2]。计算机安全已经由ICST的一项研究确定为所需标准的一个高优先级领域,条件是计算机能够有效地利用。指导路线和标准由ICST定义,旨在使计算机安全中的资源变得可用。该指南包括诸如物理安全、风险管理、应急规划,以及安全审计。指南在不需要计算及互动性的领域足够充分。因为对互用性的影响,标准在诸如加密、身份验证、访问控制、数据的安全存储和传输等领域为必需品[3]。
基于单片机的DES加密数据的实现难点,在于无法像PC平台一样使用全键盘输入所有的字母和数字字符,由于矩阵键盘和数码管位数限制,只能输入十六个不同字符组成的八位数据,但这足以验证DES加密算法在单片机上的实现。