当前位置: 高中信息技术 / 综合题
  • 1. (2022高二上·北仑期中) 某网站对信息进行加密解密,选择页面“index. html”如图1,加密页面“jia. html”如图2,解密页面“jie. html”如图3。在选择页面点击相应按钮,选择加密或解密。

    图1

    图2

    图3

    选择加密时,在明文文本框中输入明文,点击“加密”按钮,网页显示密文与对应的密钥。加密规则为打乱明文对应的索引作为密钥,再利用该索引逐个取明文字符连接成密文,例如:明文为“信息技术”,若被打乱的索引为[2,0,1,3],则密文为“技信息术”,密钥为“2,0,1,3”

    选择解密时,在密文文本框中输入密文,密钥文本框输入密钥,点击“解密”按钮,网页显示明文。

    1. (1) 该网络应用属于架构。(单选,填字母:A .B/S架构,B .C/S架构)
    2. (2) 若待解密文本为“自息爱信也我己爱”,密钥为“2, 7, 1, 6, 4, 0, 3, 5”,则解密结果是
    3. (3) 实现该功能的python程序如下,请在划线处填入合适的代码:

      from flask import render_template,request,Flask

      import random

      app=Flask(_name_)  #创建应用实例

      @app. route('/')  #选择页面路由

      def index():

          return render_template('')

      #加密功能代码略,以下为解密代码:

      @app. route('/jiemi1/',methods=["GET","POST"])

      def jiemi1():

          wb=request. form["wb"]  #利用request获取网页文本框内容,返回示例:“1,4,2,3,0”

      keyo=request. form["key"]  #变量wb存储密文,变量keyo存储密钥

          keyn=list(map(int,keyo. split(","))) #将字符串keyo转换为数值列表,示例:[1,4,2,3,0]

          result=""

          for i in range(len(keyn)):

              for j in range(len(keyn)):

                  if :

                          break

              result+=wb[j]

          return render_template("jie. html",WB=wb,KEY=keyo,RESULT=result)

      if _name_=="_main_":

         

微信扫码预览、分享更方便