Python+Django的毕业设计-基于RSA加密算法软件的系统项目开发实战(源码+论文)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。

🎀当前专栏: Python毕业设计

精彩专栏推荐👇🏻👇🏻👇🏻

💞Java毕业设计
🌎微信小程序毕业设计

开发环境

  • 开发语言:Python
  • 数据库:mysql 5.7
  • 数据库工具:Navicat12
  • 开发软件:pycharm
  • 浏览器:谷歌浏览器

源码下载地址:

https://download.csdn.net/download/2301_76953549/87951139

论文目录

【如需全文请按文末获取联系】
在这里插入图片描述

一、项目简介

RSA是被称之为最为优秀的密码体制,是数据加密算法的标准,能通过该算法能够很好的实现数据加密的过程,该算法现在也成为了当下广泛应用的具备较强安全性的密码体制。本次就是利用了该算法结合python技术来开发一款数据加密的软件,通过数据加密来实现网络中的信息安全保护。

二、系统设计

2.1软件功能模块设计

首先此次的设计需要保证能够实现基础的加密工作,通过设计的软件中的固定模块来进行输入内容的添加,并且在线能够通过快速的、几乎不耗费资源的提供加密的内容实现。对于加密后的内容,从表面上看就是一长串无规则的字符串,没有任何原本的内容在其中进行显示。
其次是解密的功能,在解密的功能中需要打开设计的既定窗口,在窗口中验证字符串,系统通过快速的运算后可以进行数据的解密工作,解密后可以清晰的看到明文的显示。
最后是对数据流的安全性的设计要求,在数据的传输和存储中也要保证数据的完整性和安全性强,能够实现较好的数据存储和读取的功能。

三、系统项目部分截图

3.1登录模块的实现

在此次的页面设计中,主要是使用了动态的页面设计,蓝天白云的背景图中,白云是采用动态飘动的设计,让登录的界面更加美观,在该加密算法的系统登录上需要按照菜单栏的要求实现内容的输入经过数据库的校验才能够实现正常登录。具体的登录界面如下图所示:
在这里插入图片描述

3.2数字加密的实现

在整个页面的左边有菜单栏,点击数据管理菜单,能够实现数据的加密操作,在数据的加密页面里,点击新增加密会弹出一个新的窗口,在窗口中能够输入需要加密的 内容,当输入:我爱中国后点击新建即可实现内容的新建。界面如下图所示
在这里插入图片描述
在点击完新建之后,在整个页面中能够看到有一条新的信息形成了,点击加密,可以看到“我爱中国”的信息内容被加密成了一串无规则的字符串,具体展示如下:
在这里插入图片描述

3.3RSA数字加密系统首页

此次设计的系统在首页的显示上有着内容的统计分析管理,在首页上有着本系统内注册用户的数量显示、有着已经完成加密的信息条数显示等内容并且对于数据加密的流程图进行了展示工作,如下图所示:
在这里插入图片描述

四、部分核心代码

from django.shortcuts import render

from .models import UserTable
from django.http import JsonResponse, HttpResponseRedirect
from django.core.paginator import Paginator


# from utils.mypage import Pagination

def personal(req):
    username = req.session['username']
    result = UserTable.objects.filter(name=username).first()
    return render(req,'personal.html',locals())


def register(request):
    """
    添加员工
    :return:
    """
    try:
        name = request.POST.get('username')
        passwd = request.POST.get('password')
        phone = request.POST.get('phone')
        user = UserTable.objects.filter(name=name)
        if user:
            return JsonResponse({'message': '用户已存在,请直接登录'}, status=403)
        UserTable.objects.create(
            name=name,
            password=passwd,
            phone=phone,
            role=2,
        )
        response_data = {'message': '注册成功'}
        return JsonResponse(response_data)
    except Exception as e:
        print(e)
        return JsonResponse({'message': '注册失败'}, status=401)


def get_user(request):
    """
    获取用户列表信息 | 模糊查询
    :param request:
    :return:
    """
    keyword = request.GET.get('name')
    page = request.GET.get("page", '')
    limit = request.GET.get("limit", '')
    role_id = request.GET.get('position', '')
    print(page, limit)
    response_data = {}
    response_data['code'] = 0
    response_data['msg'] = ''
    data = []
    if keyword is None:
        results = UserTable.objects.all()
        paginator = Paginator(results, limit)
        results = paginator.page(page)
        if results:
            for user in results:
                record = {
                    "id": user.id,
                    "name": user.name,
                    "password": user.password,
                    "phone": user.phone,
                    "role": '管理员',
                    'create_time': user.create_time.strftime('%Y-%m-%d %H:%m:%S'),
                }
                data.append(record)
            response_data['count'] = len(results)
            response_data['data'] = data
    else:
        users_all = UserTable.objects.filter(name__contains=keyword).all()
        paginator = Paginator(users_all, limit)
        results = paginator.page(page)
        if results:
            for user in results:
                record = {
                    "id": user.id,
                    "name": user.name,
                    "password": user.password,
                    "role": '管理员',
                    "phone": user.phone,
                    'create_time': user.create_time,
                }
                data.append(record)
            response_data['count'] = len(users_all)
            response_data['data'] = data
    print(data)
    return JsonResponse(response_data)


def user(request):
    username = request.session['username']
    return render(request, 'user.html', locals())


def login_check(request):
    response_data = {}
    name = request.GET.get('username')
    password = request.GET.get('password')
    print(name, password)
    user = UserTable.objects.filter(name=name, password=password).first()
    info = {}
    if user:
        # 将用户名存入session中
        request.session["username"] = user.name
        request.session["role"] = user.role
        request.session["user_id"] = user.id
        # print(user.position)
        response_data['message'] = '登录成功'
        return JsonResponse(response_data, status=201)
    else:
        return JsonResponse({'message': '用户名或者密码不正确'}, status=401)
def modify_password(req):
    return render(req,'modify_password.html')

def edit_user(request):
    response_data = {}
    user_id = request.POST.get('id')
    username = request.POST.get('username')
    phone = request.POST.get('phone')

    exists = UserTable.objects.filter(name=username)
    if len(exists) != 1:
        return JsonResponse({'msg': 'error'}, status=403)
    UserTable.objects.filter(id=user_id).update(
        name=username,
        phone=phone)
    response_data['msg'] = 'success'
    return JsonResponse(response_data, status=201)


def del_user(request):
    user_id = request.POST.get('id')
    print(user_id)
    result = UserTable.objects.filter(id=user_id).first()
    try:
        if not result:
            response_data = {'error': '删除用户信息失败!', 'message': '找不到id为%s的用户' % user_id}
            return JsonResponse(response_data, status=403)
        result.delete()
        response_data = {'message': '删除成功!'}
        return JsonResponse(response_data, status=201)
    except Exception as e:
        response_data = {'message': '删除失败!'}
        return JsonResponse(response_data, status=403)


def change_password(request):
    # 修改密码
    user = UserTable.objects.filter(name=request.session["username"]).first()
    if user.password == request.POST.get('changePassword'):
        # 修改的密码与原密码重复不予修改
        return JsonResponse({"msg": "修改密码与原密码重复"}), 406
    else:
        # 不重复,予以修改
        UserTable.objects.filter(name=request.session["username"]).update(
            password=request.POST.get('changePassword'))
        # 清除session回到login界面
        del request.session['username']
        return JsonResponse({"msg": "success"})


def login_out(req):
    del req.session['username']
    return HttpResponseRedirect('/')

获取源码或论文

如需对应的论文或源码,以及其他定制需求,也可以下方微❤联系。

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值