• <button id="ecio8"></button>
  • <li id="ecio8"></li>
    <s id="ecio8"></s>
    <dl id="ecio8"></dl>
    <center id="ecio8"><noscript id="ecio8"></noscript></center>
    • <table id="ecio8"><source id="ecio8"></source></table>
      <bdo id="ecio8"></bdo>
    • <s id="ecio8"></s>

      COMP1212代寫、代做Java/c++程序設計

      時間:2024-05-08  來源:  作者: 我要糾錯



      School of Computing: assessment brief
      Module title Computer Processors
      Module code COMP1212
      Assignment title Assignment 2: Encryption using a Feistel Cipher
      Assignment type
      and description
      In-course assessment. Requires design, implementation
      and testing of code written in assembly language
      Rationale
      Provides an opportunity to write assembly code including
       understanding the implementation of branching and
      functions and learn how a Feistel Cipher works for encryption.
      Word
      limit and
      guidance
      This coursework should take less than 15 hours to complete.
      Weighting
      60%
      Submission deadline
      10am
       9/5/24
      Submission
      method
      Gradescope
      Feedback provision Feedback will be provided through Gradescope
      Learning outcomes
      assessed
      Explain how high level programming constructs, such
      as ’if’ statements and ’for’ loops, are implemented at a
      machine level
      Module lead Andy Bulpitt
      Other Staff contact Noleen K¨ohler
      11. Assignment guidance
      The Feistel cipher is a symmetric block cipher encryption framework which is the basis
      of many modern day encryption algorithms. In this coursework you will implement
      a Feistel cipher system as a software implementation in Hack Assembly.
      In a Feistel cipher the plaintext, P, to be encrypted is split into two equal size parts
      L0 and R0 such that P = L0R0. A function F is applied to one half of the plaintext,
      combined with a key, and the result is XOR’d with the other half of the plaintext.
      Feistel ciphers often employ multiple rounds of this scheme. In general the scheme
      works as follows, for all i = 0, . . . , n,
      Li+1 = Ri
      Ri+1 = Li ⊕ F(Ri
      , Ki)
      To decrypt an encrypted message using this cipher we can apply the same procedure
      in reverse. For i = n, n − 1, . . . , 0,
      Ri = Li+1
      Li = Ri+1 ⊕ F(Li+1, Ki)
      For this coursework we are interested in the 16-bit Feistel cipher which uses 4 rounds.
      The function F(A, B) = A ⊕ ¬B.
      The keys are derived from a single 8-bit key K0 such that,
      K0 = b7b6b5b4b3b2b1b0
      K1 = b6b5b4b3b2b1b0b7
      K2 = b5b4b3b2b1b0b7b6
      K3 = b4b3b2b1b0b7b6b5
      2. Assessment tasks
      (a) Write a program (XOR.asm) in HACK assembly that implements a bit-wise
      XOR function between two 16-bit values stored in RAM[3] and RAM[4] and
      stores the result in RAM[5].
      [4 marks]
      2(b) Write a program (Rotate.asm) in HACK assembly that implements an algorithm
      to rotate the bits of a 16-bit number left (Least Significant bit (LSb) to Most
      Significant bit (MSb)). The original number should be stored in RAM[3], the
      number of times to rotate the bits should be in RAM[4] and the result stored in
      RAM[5], i.e. 1010111100000000 rotated left 3 times would be 0111100000000101
      where the MSb is used to replace the LSb on each rotation.
      [8 marks]
      (c) Write a program (FeistelEncryption.asm) in HACK assembly, that implements
      the described Feistel encryption system. The initial key, K0, will be stored in
      RAM[1], and the plaintext to be encrypted will be represented by a 16-bit value
      stored in RAM[2]. The result of the encryption should be stored in RAM[0].
      [10 marks]
      [Total 22 marks]
      3. General guidance and study support
      Tools required to simulate the hardware and CPU are provided on Minerva under
      Learning resources: Software. You may find it easier to implement cipher in a high
      level language first. This will also allow you to test the results of your HACK program.
      Support will be available during lab classes. Please ensure the files you upload work
      with the test files provided and use the filenames provided in this sheet. Do not
      alter the format of the lines of these test files in any way. The spacing in
      each line needs to be preserved You are of course welcome to build your own
      test files in the same format or add to these files.
      4. Assessment criteria and marking process
      This coursework will be automatically marked using Gradescope. Feedback will be
      provided through Gradescope.
      Marks are awarded for passing the automated tests on the submitted programs.
      These will not necessarily be the same tests that are provided to help you develop
      the solution. You should therefore test your solution thoroughly using other values
      for the plaintext and keys before your final submission.
      5. Presentation and referencing
      Submitted code should provide suitable comments where possible.
      6. Submission requirements
      Links to submit your work can be found on Minerva under Assessment and feedback/Submit
      my work. The HACK assembly (asm) files for each part must be uploaded
      individually. Ensure you use only the filenames provided in this specification
      sheet.
      37. Academic misconduct and plagiarism
      Academic integrity means engaging in good academic practice. This involves essential
      academic skills, such as keeping track of where you find ideas and information and
      referencing these accurately in your work.
      By submitting this assignment you are confirming that the work is a true expression
      of your own work and ideas and that you have given credit to others where their
      work has contributed to yours.
      8. Assessment/marking criteria
      No marks will be awarded for tests which fail
      • Part a) is graded using 4 tests, each worth 1 mark. [max 4 marks]
      • Part b) is graded using 4 tests, each worth 2 marks. [max 8 marks]
      • Part c) is graded using 4 tests, each worth 2 marks and a further 2 marks for
      optimised solutions that require a lower number of operations to complete the
      encryption [max 10 marks]
      [Total 22 marks]
      4

      請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp





















       

      標簽:

      掃一掃在手機打開當前頁
    • 上一篇:代做COCMP5328、代寫Python設計程序
    • 下一篇:代做DSA1002、代寫Java/c++設計編程
    • 無相關信息
      昆明生活資訊

      昆明圖文信息
      蝴蝶泉(4A)-大理旅游
      蝴蝶泉(4A)-大理旅游
      油炸竹蟲
      油炸竹蟲
      酸筍煮魚(雞)
      酸筍煮魚(雞)
      竹筒飯
      竹筒飯
      香茅草烤魚
      香茅草烤魚
      檸檬烤魚
      檸檬烤魚
      昆明西山國家級風景名勝區
      昆明西山國家級風景名勝區
      昆明旅游索道攻略
      昆明旅游索道攻略
    • 高仿包包訂製

      關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

      Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網 版權所有
      ICP備06013414號-3 公安備 42010502001045

      欧美成人免费全部观看天天性色,欧美日韩视频一区三区二区,欧洲美女与动性zozozo,久久久国产99久久国产一
    • <button id="ecio8"></button>
    • <li id="ecio8"></li>
      <s id="ecio8"></s>
      <dl id="ecio8"></dl>
      <center id="ecio8"><noscript id="ecio8"></noscript></center>
      • <table id="ecio8"><source id="ecio8"></source></table>
        <bdo id="ecio8"></bdo>
      • <s id="ecio8"></s>
        主站蜘蛛池模板: 69视频在线观看高清免费| 亚洲午夜福利在线视频| bt天堂网...www在线资源| 精品欧美一区二区在线观看| 无码人妻精品中文字幕免费东京热| 国产午夜免费福利红片| 久久国产加勒比精品无码| 亚洲欧美在线观看一区二区| GOGOGO高清在线观看中文版| 黄大色黄美女精品大毛片| 狂野黑人性猛交xxxxxx| 天天躁夜夜踩狠狠踩2022| 伊人中文字幕在线观看| 99精品全国免费观看视频| 欧美黑人乱大交| 成人欧美一区二区三区的电影 | 初尝人妻少妇中文字幕| 中国娇小与黑人巨大交| 精品久久久久久无码中文字幕| 好吊妞欧美视频免费| 人与禽交videosgratisdo视频| 97se亚洲综合在线| 精品国产免费一区二区三区| 好爽…又高潮了毛片免费看| 亚洲综合激情另类小说区| 97久视频精品视频在线老司机| 欧美日本一本线在线观看| 女人与公拘交酡过程高清视频| 国产乱人视频在线观看播放器| 亚洲伊人久久精品影院| 精品第一国产综合精品蜜芽| 日本公与熄乱理在线播放370| 午夜视频体验区| 久久99国产精品久久99| 精品国产免费观看一区| 在线观看亚洲成人| 亚洲黄色三级视频| 一区二区三区内射美女毛片| 波多野结衣中文一区二区免费| 天天操天天干天天插| 亚洲国产欧美在线人成北岛玲 |